Class std::__true_type
   size=1 align=1
   base size=0 base align=1
std::__true_type (0x0x7f890ef0f7e0) 0 empty

Class std::__false_type
   size=1 align=1
   base size=0 base align=1
std::__false_type (0x0x7f890ef0f840) 0 empty

Class std::__truth_type<true>
   size=1 align=1
   base size=0 base align=1
std::__truth_type<true> (0x0x7f890ef0f900) 0 empty

Class std::__is_void<void>
   size=1 align=1
   base size=0 base align=1
std::__is_void<void> (0x0x7f890ef0fae0) 0 empty

Class std::__is_integer<bool>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<bool> (0x0x7f890ef0fba0) 0 empty

Class std::__is_integer<char>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<char> (0x0x7f890ef0fc00) 0 empty

Class std::__is_integer<signed char>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<signed char> (0x0x7f890ef0fc60) 0 empty

Class std::__is_integer<unsigned char>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<unsigned char> (0x0x7f890ef0fcc0) 0 empty

Class std::__is_integer<wchar_t>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<wchar_t> (0x0x7f890ef0fd20) 0 empty

Class std::__is_integer<short int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<short int> (0x0x7f890ef0fd80) 0 empty

Class std::__is_integer<short unsigned int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<short unsigned int> (0x0x7f890ef0fde0) 0 empty

Class std::__is_integer<int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<int> (0x0x7f890ef0fe40) 0 empty

Class std::__is_integer<unsigned int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<unsigned int> (0x0x7f890ef0fea0) 0 empty

Class std::__is_integer<long int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<long int> (0x0x7f890ef0ff00) 0 empty

Class std::__is_integer<long unsigned int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<long unsigned int> (0x0x7f890ef0ff60) 0 empty

Class std::__is_integer<long long int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<long long int> (0x0x7f890ef80000) 0 empty

Class std::__is_integer<long long unsigned int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<long long unsigned int> (0x0x7f890ef80060) 0 empty

Class std::__is_floating<float>
   size=1 align=1
   base size=0 base align=1
std::__is_floating<float> (0x0x7f890ef80120) 0 empty

Class std::__is_floating<double>
   size=1 align=1
   base size=0 base align=1
std::__is_floating<double> (0x0x7f890ef80180) 0 empty

Class std::__is_floating<long double>
   size=1 align=1
   base size=0 base align=1
std::__is_floating<long double> (0x0x7f890ef801e0) 0 empty

Class std::__is_char<char>
   size=1 align=1
   base size=0 base align=1
std::__is_char<char> (0x0x7f890ef804e0) 0 empty

Class std::__is_char<wchar_t>
   size=1 align=1
   base size=0 base align=1
std::__is_char<wchar_t> (0x0x7f890ef80540) 0 empty

Class std::__is_byte<char>
   size=1 align=1
   base size=0 base align=1
std::__is_byte<char> (0x0x7f890ef80600) 0 empty

Class std::__is_byte<signed char>
   size=1 align=1
   base size=0 base align=1
std::__is_byte<signed char> (0x0x7f890ef80660) 0 empty

Class std::__is_byte<unsigned char>
   size=1 align=1
   base size=0 base align=1
std::__is_byte<unsigned char> (0x0x7f890ef806c0) 0 empty

Class __gnu_cxx::__add_unsigned<char>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<char> (0x0x7f890ef80960) 0 empty

Class __gnu_cxx::__add_unsigned<signed char>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<signed char> (0x0x7f890ef809c0) 0 empty

Class __gnu_cxx::__add_unsigned<short int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<short int> (0x0x7f890ef80a20) 0 empty

Class __gnu_cxx::__add_unsigned<int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<int> (0x0x7f890ef80a80) 0 empty

Class __gnu_cxx::__add_unsigned<long int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<long int> (0x0x7f890ef80ae0) 0 empty

Class __gnu_cxx::__add_unsigned<long long int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<long long int> (0x0x7f890ef80b40) 0 empty

Class __gnu_cxx::__remove_unsigned<char>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__remove_unsigned<char> (0x0x7f890ef80c00) 0 empty

Class __gnu_cxx::__remove_unsigned<unsigned char>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__remove_unsigned<unsigned char> (0x0x7f890ef80c60) 0 empty

Class __gnu_cxx::__remove_unsigned<short unsigned int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__remove_unsigned<short unsigned int> (0x0x7f890ef80cc0) 0 empty

Class __gnu_cxx::__remove_unsigned<unsigned int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__remove_unsigned<unsigned int> (0x0x7f890ef80d20) 0 empty

Class __gnu_cxx::__remove_unsigned<long unsigned int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__remove_unsigned<long unsigned int> (0x0x7f890ef80d80) 0 empty

Class __gnu_cxx::__remove_unsigned<long long unsigned int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__remove_unsigned<long long unsigned int> (0x0x7f890ef80de0) 0 empty

Class std::__is_integer<long double>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<long double> (0x0x7f890ef80f00) 0 empty

Class __gnu_cxx::__promote<long double>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__promote<long double> (0x0x7f890ef80f60) 0 empty

Class std::__is_integer<double>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<double> (0x0x7f890efb4000) 0 empty

Class __gnu_cxx::__promote<double>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__promote<double> (0x0x7f890efb4060) 0 empty

Class std::__is_integer<float>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<float> (0x0x7f890efb40c0) 0 empty

Class __gnu_cxx::__promote<float>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__promote<float> (0x0x7f890efb4120) 0 empty

Class std::input_iterator_tag
   size=1 align=1
   base size=0 base align=1
std::input_iterator_tag (0x0x7f890efb4420) 0 empty

Class std::output_iterator_tag
   size=1 align=1
   base size=0 base align=1
std::output_iterator_tag (0x0x7f890efb4480) 0 empty

Class std::forward_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::forward_iterator_tag (0x0x7f890ef344e0) 0 empty
  std::input_iterator_tag (0x0x7f890efb44e0) 0 empty

Class std::bidirectional_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::bidirectional_iterator_tag (0x0x7f890ef34548) 0 empty
  std::forward_iterator_tag (0x0x7f890ef345b0) 0 empty
    std::input_iterator_tag (0x0x7f890efb4540) 0 empty

Class std::random_access_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::random_access_iterator_tag (0x0x7f890ef34618) 0 empty
  std::bidirectional_iterator_tag (0x0x7f890ef34680) 0 empty
    std::forward_iterator_tag (0x0x7f890ef346e8) 0 empty
      std::input_iterator_tag (0x0x7f890efb45a0) 0 empty

Class std::iterator<std::output_iterator_tag, void, void, void, void>
   size=1 align=1
   base size=0 base align=1
std::iterator<std::output_iterator_tag, void, void, void, void> (0x0x7f890efb48a0) 0 empty

Class __gnu_cxx::__ops::_Iter_less_iter
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__ops::_Iter_less_iter (0x0x7f890efb4a80) 0 empty

Class __gnu_cxx::__ops::_Iter_less_val
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__ops::_Iter_less_val (0x0x7f890efb4ae0) 0 empty

Class __gnu_cxx::__ops::_Val_less_iter
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__ops::_Val_less_iter (0x0x7f890efb4b40) 0 empty

Class __gnu_cxx::__ops::_Iter_equal_to_iter
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__ops::_Iter_equal_to_iter (0x0x7f890efb4ba0) 0 empty

Class __gnu_cxx::__ops::_Iter_equal_to_val
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__ops::_Iter_equal_to_val (0x0x7f890efb4c00) 0 empty

Class std::__iter_swap<true>
   size=1 align=1
   base size=0 base align=1
std::__iter_swap<true> (0x0x7f890e984060) 0 empty

Class std::__copy_move<false, false, std::random_access_iterator_tag>
   size=1 align=1
   base size=0 base align=1
std::__copy_move<false, false, std::random_access_iterator_tag> (0x0x7f890e9841e0) 0 empty

Class std::__copy_move_backward<false, false, std::random_access_iterator_tag>
   size=1 align=1
   base size=0 base align=1
std::__copy_move_backward<false, false, std::random_access_iterator_tag> (0x0x7f890e984300) 0 empty

Class std::__equal<true>
   size=1 align=1
   base size=0 base align=1
std::__equal<true> (0x0x7f890e984420) 0 empty

Class std::__lc_rai<std::random_access_iterator_tag, std::random_access_iterator_tag>
   size=1 align=1
   base size=0 base align=1
std::__lc_rai<std::random_access_iterator_tag, std::random_access_iterator_tag> (0x0x7f890e9844e0) 0 empty

Class std::__lexicographical_compare<true>
   size=1 align=1
   base size=0 base align=1
std::__lexicographical_compare<true> (0x0x7f890e9845a0) 0 empty

Class <anonymous struct>::<anonymous union>
   size=4 align=4
   base size=4 base align=4
<anonymous struct>::<anonymous union> (0x0x7f890e984660) 0

Class <anonymous struct>
   size=8 align=4
   base size=8 base align=4
<anonymous struct> (0x0x7f890e984600) 0

Class __locale_struct
   size=116 align=4
   base size=116 base align=4
__locale_struct (0x0x7f890e9846c0) 0

Class std::char_traits<char>
   size=1 align=1
   base size=0 base align=1
std::char_traits<char> (0x0x7f890e984c00) 0 empty

Class std::char_traits<wchar_t>
   size=1 align=1
   base size=0 base align=1
std::char_traits<wchar_t> (0x0x7f890e984c60) 0 empty

Vtable for std::exception
std::exception::_ZTVSt9exception: 5u entries
0     (int (*)(...))0
4     (int (*)(...))(& _ZTISt9exception)
8     (int (*)(...))std::exception::~exception
12    (int (*)(...))std::exception::~exception
16    (int (*)(...))std::exception::what

Class std::exception
   size=4 align=4
   base size=4 base align=4
std::exception (0x0x7f890e984cc0) 0 nearly-empty
    vptr=((& std::exception::_ZTVSt9exception) + 8u)

Vtable for std::bad_exception
std::bad_exception::_ZTVSt13bad_exception: 5u entries
0     (int (*)(...))0
4     (int (*)(...))(& _ZTISt13bad_exception)
8     (int (*)(...))std::bad_exception::~bad_exception
12    (int (*)(...))std::bad_exception::~bad_exception
16    (int (*)(...))std::bad_exception::what

Class std::bad_exception
   size=4 align=4
   base size=4 base align=4
std::bad_exception (0x0x7f890ef34a90) 0 nearly-empty
    vptr=((& std::bad_exception::_ZTVSt13bad_exception) + 8u)
  std::exception (0x0x7f890e984d20) 0 nearly-empty
      primary-for std::bad_exception (0x0x7f890ef34a90)

Vtable for std::bad_alloc
std::bad_alloc::_ZTVSt9bad_alloc: 5u entries
0     (int (*)(...))0
4     (int (*)(...))(& _ZTISt9bad_alloc)
8     (int (*)(...))std::bad_alloc::~bad_alloc
12    (int (*)(...))std::bad_alloc::~bad_alloc
16    (int (*)(...))std::bad_alloc::what

Class std::bad_alloc
   size=4 align=4
   base size=4 base align=4
std::bad_alloc (0x0x7f890ef34af8) 0 nearly-empty
    vptr=((& std::bad_alloc::_ZTVSt9bad_alloc) + 8u)
  std::exception (0x0x7f890e984d80) 0 nearly-empty
      primary-for std::bad_alloc (0x0x7f890ef34af8)

Vtable for std::bad_array_length
std::bad_array_length::_ZTVSt16bad_array_length: 5u entries
0     (int (*)(...))0
4     (int (*)(...))(& _ZTISt16bad_array_length)
8     (int (*)(...))std::bad_array_length::~bad_array_length
12    (int (*)(...))std::bad_array_length::~bad_array_length
16    (int (*)(...))std::bad_array_length::what

Class std::bad_array_length
   size=4 align=4
   base size=4 base align=4
std::bad_array_length (0x0x7f890ef34b60) 0 nearly-empty
    vptr=((& std::bad_array_length::_ZTVSt16bad_array_length) + 8u)
  std::bad_alloc (0x0x7f890ef34bc8) 0 nearly-empty
      primary-for std::bad_array_length (0x0x7f890ef34b60)
    std::exception (0x0x7f890e984de0) 0 nearly-empty
        primary-for std::bad_alloc (0x0x7f890ef34bc8)

Class std::nothrow_t
   size=1 align=1
   base size=0 base align=1
std::nothrow_t (0x0x7f890e984e40) 0 empty

Class std::allocator<void>
   size=1 align=1
   base size=0 base align=1
std::allocator<void> (0x0x7f890e984f60) 0 empty

Class __gnu_cxx::new_allocator<char>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::new_allocator<char> (0x0x7f890e6fc120) 0 empty

Class std::allocator<char>
   size=1 align=1
   base size=1 base align=1
std::allocator<char> (0x0x7f890ef34c98) 0 empty
  __gnu_cxx::new_allocator<char> (0x0x7f890e6fc180) 0 empty

Class __gnu_cxx::new_allocator<wchar_t>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::new_allocator<wchar_t> (0x0x7f890e6fc1e0) 0 empty

Class std::allocator<wchar_t>
   size=1 align=1
   base size=1 base align=1
std::allocator<wchar_t> (0x0x7f890ef34d00) 0 empty
  __gnu_cxx::new_allocator<wchar_t> (0x0x7f890e6fc240) 0 empty

Class lconv
   size=56 align=4
   base size=56 base align=4
lconv (0x0x7f890e6fc420) 0

Class <anonymous struct>
   size=8 align=4
   base size=8 base align=4
<anonymous struct> (0x0x7f890e6fc480) 0

Vtable for __cxxabiv1::__forced_unwind
__cxxabiv1::__forced_unwind::_ZTVN10__cxxabiv115__forced_unwindE: 5u entries
0     (int (*)(...))0
4     (int (*)(...))(& _ZTIN10__cxxabiv115__forced_unwindE)
8     0u
12    0u
16    (int (*)(...))__cxa_pure_virtual

Class __cxxabiv1::__forced_unwind
   size=4 align=4
   base size=4 base align=4
__cxxabiv1::__forced_unwind (0x0x7f890e6fc4e0) 0 nearly-empty
    vptr=((& __cxxabiv1::__forced_unwind::_ZTVN10__cxxabiv115__forced_unwindE) + 8u)

Class timespec
   size=8 align=4
   base size=8 base align=4
timespec (0x0x7f890e80f000) 0

Class sched_param
   size=4 align=4
   base size=4 base align=4
sched_param (0x0x7f890e80f060) 0

Class __sched_param
   size=4 align=4
   base size=4 base align=4
__sched_param (0x0x7f890e80f0c0) 0

Class <anonymous struct>
   size=128 align=4
   base size=128 base align=4
<anonymous struct> (0x0x7f890e80f120) 0

Class timeval
   size=8 align=4
   base size=8 base align=4
timeval (0x0x7f890e80f180) 0

Class timex
   size=128 align=4
   base size=128 base align=4
timex (0x0x7f890e80f1e0) 0

Class tm
   size=44 align=4
   base size=44 base align=4
tm (0x0x7f890e80f240) 0

Class itimerspec
   size=16 align=4
   base size=16 base align=4
itimerspec (0x0x7f890e80f2a0) 0

Class pthread_attr_t
   size=36 align=4
   base size=36 base align=4
pthread_attr_t (0x0x7f890e80f300) 0

Class __pthread_internal_slist
   size=4 align=4
   base size=4 base align=4
__pthread_internal_slist (0x0x7f890e80f360) 0

Class <anonymous union>::__pthread_mutex_s::<anonymous union>
   size=4 align=4
   base size=4 base align=4
<anonymous union>::__pthread_mutex_s::<anonymous union> (0x0x7f890e80f480) 0

Class <anonymous union>::__pthread_mutex_s
   size=24 align=4
   base size=24 base align=4
<anonymous union>::__pthread_mutex_s (0x0x7f890e80f420) 0

Class <anonymous union>
   size=24 align=4
   base size=24 base align=4
<anonymous union> (0x0x7f890e80f3c0) 0

Class <anonymous union>
   size=4 align=4
   base size=4 base align=4
<anonymous union> (0x0x7f890e80f540) 0

Class <anonymous union>::<anonymous struct>::<anonymous union>::<anonymous struct>
   size=8 align=4
   base size=8 base align=4
<anonymous union>::<anonymous struct>::<anonymous union>::<anonymous struct> (0x0x7f890e80f6c0) 0

Class <anonymous union>::<anonymous struct>::<anonymous union>
   size=8 align=8
   base size=8 base align=8
<anonymous union>::<anonymous struct>::<anonymous union> (0x0x7f890e80f660) 0

Class <anonymous union>::<anonymous struct>::<anonymous union>::<anonymous struct>
   size=8 align=4
   base size=8 base align=4
<anonymous union>::<anonymous struct>::<anonymous union>::<anonymous struct> (0x0x7f890e80f780) 0

Class <anonymous union>::<anonymous struct>::<anonymous union>
   size=8 align=8
   base size=8 base align=8
<anonymous union>::<anonymous struct>::<anonymous union> (0x0x7f890e80f720) 0

Class <anonymous union>::<anonymous struct>
   size=48 align=8
   base size=48 base align=8
<anonymous union>::<anonymous struct> (0x0x7f890e80f600) 0

Class <anonymous union>
   size=48 align=8
   base size=48 base align=8
<anonymous union> (0x0x7f890e80f5a0) 0

Class <anonymous union>
   size=4 align=4
   base size=4 base align=4
<anonymous union> (0x0x7f890e80f7e0) 0

Class <anonymous union>::<anonymous struct>
   size=32 align=4
   base size=32 base align=4
<anonymous union>::<anonymous struct> (0x0x7f890e80f8a0) 0

Class <anonymous union>
   size=32 align=4
   base size=32 base align=4
<anonymous union> (0x0x7f890e80f840) 0

Class <anonymous union>
   size=8 align=4
   base size=8 base align=4
<anonymous union> (0x0x7f890e80f900) 0

Class <anonymous union>
   size=20 align=4
   base size=20 base align=4
<anonymous union> (0x0x7f890e80f960) 0

Class <anonymous union>
   size=4 align=4
   base size=4 base align=4
<anonymous union> (0x0x7f890e80f9c0) 0

Class _pthread_cleanup_buffer
   size=16 align=4
   base size=16 base align=4
_pthread_cleanup_buffer (0x0x7f890e80fa20) 0

Class <anonymous struct>::<anonymous struct>
   size=264 align=8
   base size=264 base align=8
<anonymous struct>::<anonymous struct> (0x0x7f890e80fae0) 0

Class <anonymous struct>
   size=280 align=8
   base size=280 base align=8
<anonymous struct> (0x0x7f890e80fa80) 0

Class __pthread_cleanup_frame
   size=16 align=4
   base size=16 base align=4
__pthread_cleanup_frame (0x0x7f890e80fb40) 0

Class __pthread_cleanup_class
   size=16 align=4
   base size=16 base align=4
__pthread_cleanup_class (0x0x7f890e80fba0) 0

Class __gnu_cxx::__conditional_type<true, __gnu_cxx::__numeric_traits_integer<int>, __gnu_cxx::__numeric_traits_floating<int> >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__conditional_type<true, __gnu_cxx::__numeric_traits_integer<int>, __gnu_cxx::__numeric_traits_floating<int> > (0x0x7f890e80fd80) 0 empty

Class __gnu_cxx::__numeric_traits_integer<int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__numeric_traits_integer<int> (0x0x7f890e80fde0) 0 empty

Class __gnu_cxx::__numeric_traits<int>
   size=1 align=1
   base size=1 base align=1
__gnu_cxx::__numeric_traits<int> (0x0x7f890e7a4c30) 0 empty
  __gnu_cxx::__numeric_traits_integer<int> (0x0x7f890e80fe40) 0 empty

Class std::allocator<char>::rebind<char>
   size=1 align=1
   base size=0 base align=1
std::allocator<char>::rebind<char> (0x0x7f890e5ef000) 0 empty

Class std::basic_string<char>::_Alloc_hider
   size=4 align=4
   base size=4 base align=4
std::basic_string<char>::_Alloc_hider (0x0x7f890e7a4dd0) 0
  std::allocator<char> (0x0x7f890e7a4e38) 0 empty
    __gnu_cxx::new_allocator<char> (0x0x7f890e5ef060) 0 empty

Class std::basic_string<char>
   size=4 align=4
   base size=4 base align=4
std::basic_string<char> (0x0x7f890e80ff60) 0

Class std::basic_string<char>::_Rep_base
   size=12 align=4
   base size=12 base align=4
std::basic_string<char>::_Rep_base (0x0x7f890e5ef0c0) 0

Class std::basic_string<char>::_Rep
   size=12 align=4
   base size=12 base align=4
std::basic_string<char>::_Rep (0x0x7f890e7a4c98) 0
  std::basic_string<char>::_Rep_base (0x0x7f890e5ef120) 0

Class std::allocator<wchar_t>::rebind<wchar_t>
   size=1 align=1
   base size=0 base align=1
std::allocator<wchar_t>::rebind<wchar_t> (0x0x7f890e5ef1e0) 0 empty

Class std::basic_string<wchar_t>::_Alloc_hider
   size=4 align=4
   base size=4 base align=4
std::basic_string<wchar_t>::_Alloc_hider (0x0x7f890e7a4d68) 0
  std::allocator<wchar_t> (0x0x7f890e686000) 0 empty
    __gnu_cxx::new_allocator<wchar_t> (0x0x7f890e5ef240) 0 empty

Class std::basic_string<wchar_t>
   size=4 align=4
   base size=4 base align=4
std::basic_string<wchar_t> (0x0x7f890e5ef180) 0

Class std::basic_string<wchar_t>::_Rep_base
   size=12 align=4
   base size=12 base align=4
std::basic_string<wchar_t>::_Rep_base (0x0x7f890e5ef2a0) 0

Class std::allocator<wchar_t>::rebind<char>
   size=1 align=1
   base size=0 base align=1
std::allocator<wchar_t>::rebind<char> (0x0x7f890e5ef360) 0 empty

Class std::basic_string<wchar_t>::_Rep
   size=12 align=4
   base size=12 base align=4
std::basic_string<wchar_t>::_Rep (0x0x7f890e686068) 0
  std::basic_string<wchar_t>::_Rep_base (0x0x7f890e5ef300) 0

Class std::_Destroy_aux<true>
   size=1 align=1
   base size=0 base align=1
std::_Destroy_aux<true> (0x0x7f890e5ef4e0) 0 empty

Class std::__uninitialized_copy<true>
   size=1 align=1
   base size=0 base align=1
std::__uninitialized_copy<true> (0x0x7f890e5ef5a0) 0 empty

Class std::__uninitialized_fill<true>
   size=1 align=1
   base size=0 base align=1
std::__uninitialized_fill<true> (0x0x7f890e5ef660) 0 empty

Class std::__uninitialized_fill_n<true>
   size=1 align=1
   base size=0 base align=1
std::__uninitialized_fill_n<true> (0x0x7f890e5ef720) 0 empty

Class std::_Bit_reference
   size=8 align=4
   base size=8 base align=4
std::_Bit_reference (0x0x7f890e5ef900) 0

Class std::iterator<std::random_access_iterator_tag, bool>
   size=1 align=1
   base size=0 base align=1
std::iterator<std::random_access_iterator_tag, bool> (0x0x7f890e5ef960) 0 empty

Class std::_Bit_iterator_base
   size=8 align=4
   base size=8 base align=4
std::_Bit_iterator_base (0x0x7f890e686208) 0
  std::iterator<std::random_access_iterator_tag, bool> (0x0x7f890e5ef9c0) 0 empty

Class std::_Bit_iterator
   size=8 align=4
   base size=8 base align=4
std::_Bit_iterator (0x0x7f890e686270) 0
  std::_Bit_iterator_base (0x0x7f890e6862d8) 0
    std::iterator<std::random_access_iterator_tag, bool> (0x0x7f890e5efa20) 0 empty

Class std::_Bit_const_iterator
   size=8 align=4
   base size=8 base align=4
std::_Bit_const_iterator (0x0x7f890e686340) 0
  std::_Bit_iterator_base (0x0x7f890e6863a8) 0
    std::iterator<std::random_access_iterator_tag, bool> (0x0x7f890e5efa80) 0 empty

Class std::iterator_traits<std::_Bit_iterator>
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<std::_Bit_iterator> (0x0x7f890e5efc00) 0 empty

Class std::iterator<std::random_access_iterator_tag, bool, int, std::_Bit_reference*, std::_Bit_reference>
   size=1 align=1
   base size=0 base align=1
std::iterator<std::random_access_iterator_tag, bool, int, std::_Bit_reference*, std::_Bit_reference> (0x0x7f890e5efc60) 0 empty

Class std::reverse_iterator<std::_Bit_iterator>
   size=8 align=4
   base size=8 base align=4
std::reverse_iterator<std::_Bit_iterator> (0x0x7f890e686618) 0
  std::iterator<std::random_access_iterator_tag, bool, int, std::_Bit_reference*, std::_Bit_reference> (0x0x7f890e5efd80) 0 empty

Class std::iterator_traits<std::_Bit_const_iterator>
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<std::_Bit_const_iterator> (0x0x7f890e5efde0) 0 empty

Class std::iterator<std::random_access_iterator_tag, bool, int, const bool*, bool>
   size=1 align=1
   base size=0 base align=1
std::iterator<std::random_access_iterator_tag, bool, int, const bool*, bool> (0x0x7f890e5efe40) 0 empty

Class std::reverse_iterator<std::_Bit_const_iterator>
   size=8 align=4
   base size=8 base align=4
std::reverse_iterator<std::_Bit_const_iterator> (0x0x7f890e6867b8) 0
  std::iterator<std::random_access_iterator_tag, bool, int, const bool*, bool> (0x0x7f890e5efea0) 0 empty

Class log4shib::NDC::DiagnosticContext
   size=8 align=4
   base size=8 base align=4
log4shib::NDC::DiagnosticContext (0x0x7f890e5eff60) 0

Class __gnu_cxx::new_allocator<log4shib::NDC::DiagnosticContext>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::new_allocator<log4shib::NDC::DiagnosticContext> (0x0x7f890e4ce0c0) 0 empty

Class std::allocator<log4shib::NDC::DiagnosticContext>
   size=1 align=1
   base size=1 base align=1
std::allocator<log4shib::NDC::DiagnosticContext> (0x0x7f890e686a28) 0 empty
  __gnu_cxx::new_allocator<log4shib::NDC::DiagnosticContext> (0x0x7f890e4ce120) 0 empty

Class __gnu_cxx::__alloc_traits<std::allocator<log4shib::NDC::DiagnosticContext> >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<log4shib::NDC::DiagnosticContext> > (0x0x7f890e4ce060) 0 empty

Class std::allocator<log4shib::NDC::DiagnosticContext>::rebind<log4shib::NDC::DiagnosticContext>
   size=1 align=1
   base size=0 base align=1
std::allocator<log4shib::NDC::DiagnosticContext>::rebind<log4shib::NDC::DiagnosticContext> (0x0x7f890e4ce240) 0 empty

Class __gnu_cxx::__alloc_traits<std::allocator<log4shib::NDC::DiagnosticContext> >::rebind<log4shib::NDC::DiagnosticContext>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<log4shib::NDC::DiagnosticContext> >::rebind<log4shib::NDC::DiagnosticContext> (0x0x7f890e4ce1e0) 0 empty

Class std::_Vector_base<log4shib::NDC::DiagnosticContext, std::allocator<log4shib::NDC::DiagnosticContext> >::_Vector_impl
   size=12 align=4
   base size=12 base align=4
std::_Vector_base<log4shib::NDC::DiagnosticContext, std::allocator<log4shib::NDC::DiagnosticContext> >::_Vector_impl (0x0x7f890e686bc8) 0
  std::allocator<log4shib::NDC::DiagnosticContext> (0x0x7f890e686c30) 0 empty
    __gnu_cxx::new_allocator<log4shib::NDC::DiagnosticContext> (0x0x7f890e4ce360) 0 empty

Class std::_Vector_base<log4shib::NDC::DiagnosticContext, std::allocator<log4shib::NDC::DiagnosticContext> >
   size=12 align=4
   base size=12 base align=4
std::_Vector_base<log4shib::NDC::DiagnosticContext, std::allocator<log4shib::NDC::DiagnosticContext> > (0x0x7f890e4ce000) 0

Class std::vector<log4shib::NDC::DiagnosticContext>
   size=12 align=4
   base size=12 base align=4
std::vector<log4shib::NDC::DiagnosticContext> (0x0x7f890e686e38) 0
  std::_Vector_base<log4shib::NDC::DiagnosticContext, std::allocator<log4shib::NDC::DiagnosticContext> > (0x0x7f890e4ce3c0) 0

Vtable for log4shib::NDC
log4shib::NDC::_ZTVN8log4shib3NDCE: 12u entries
0     (int (*)(...))0
4     (int (*)(...))(& _ZTIN8log4shib3NDCE)
8     (int (*)(...))log4shib::NDC::~NDC
12    (int (*)(...))log4shib::NDC::~NDC
16    (int (*)(...))log4shib::NDC::_clear
20    (int (*)(...))log4shib::NDC::_cloneStack
24    (int (*)(...))log4shib::NDC::_get
28    (int (*)(...))log4shib::NDC::_getDepth
32    (int (*)(...))log4shib::NDC::_inherit
36    (int (*)(...))log4shib::NDC::_pop
40    (int (*)(...))log4shib::NDC::_push
44    (int (*)(...))log4shib::NDC::_setMaxDepth

Class log4shib::NDC
   size=16 align=4
   base size=16 base align=4
log4shib::NDC (0x0x7f890e5eff00) 0
    vptr=((& log4shib::NDC::_ZTVN8log4shib3NDCE) + 8u)

Class <anonymous struct>
   size=12 align=4
   base size=12 base align=4
<anonymous struct> (0x0x7f890e4ce4e0) 0

Class <anonymous struct>
   size=16 align=8
   base size=16 base align=8
<anonymous struct> (0x0x7f890e4ce540) 0

Class _IO_marker
   size=12 align=4
   base size=12 base align=4
_IO_marker (0x0x7f890e4ce5a0) 0

Class _IO_FILE
   size=152 align=8
   base size=152 base align=8
_IO_FILE (0x0x7f890e4ce600) 0

Class <anonymous struct>
   size=16 align=4
   base size=16 base align=4
<anonymous struct> (0x0x7f890e4ce660) 0

Class log4shib::threading::Mutex
   size=24 align=4
   base size=24 base align=4
log4shib::threading::Mutex (0x0x7f890e4ce840) 0

Class log4shib::threading::ScopedLock
   size=4 align=4
   base size=4 base align=4
log4shib::threading::ScopedLock (0x0x7f890e4ce8a0) 0

Class log4shib::threading::ThreadLocalDataHolder<log4shib::NDC>
   size=4 align=4
   base size=4 base align=4
log4shib::threading::ThreadLocalDataHolder<log4shib::NDC> (0x0x7f890e4ce960) 0

Class std::__is_normal_iterator<long unsigned int*>
   size=1 align=1
   base size=0 base align=1
std::__is_normal_iterator<long unsigned int*> (0x0x7f890e4ce9c0) 0 empty

Class std::_Iter_base<long unsigned int*, false>
   size=1 align=1
   base size=0 base align=1
std::_Iter_base<long unsigned int*, false> (0x0x7f890e4cea20) 0 empty

Class std::_Niter_base<long unsigned int*>
   size=1 align=1
   base size=1 base align=1
std::_Niter_base<long unsigned int*> (0x0x7f890e1e70d0) 0 empty
  std::_Iter_base<long unsigned int*, false> (0x0x7f890e4cea80) 0 empty

Class std::__is_pointer<int>
   size=1 align=1
   base size=0 base align=1
std::__is_pointer<int> (0x0x7f890e4ceb40) 0 empty

Class std::__is_floating<int>
   size=1 align=1
   base size=0 base align=1
std::__is_floating<int> (0x0x7f890e4cec00) 0 empty

Class std::__traitor<std::__is_integer<int>, std::__is_floating<int> >
   size=1 align=1
   base size=0 base align=1
std::__traitor<std::__is_integer<int>, std::__is_floating<int> > (0x0x7f890e4ceba0) 0 empty

Class std::__is_arithmetic<int>
   size=1 align=1
   base size=1 base align=1
std::__is_arithmetic<int> (0x0x7f890e1e71a0) 0 empty
  std::__traitor<std::__is_integer<int>, std::__is_floating<int> > (0x0x7f890e4cec60) 0 empty

Class std::__traitor<std::__is_arithmetic<int>, std::__is_pointer<int> >
   size=1 align=1
   base size=0 base align=1
std::__traitor<std::__is_arithmetic<int>, std::__is_pointer<int> > (0x0x7f890e4ceae0) 0 empty

Class std::__is_scalar<int>
   size=1 align=1
   base size=1 base align=1
std::__is_scalar<int> (0x0x7f890e1e7270) 0 empty
  std::__traitor<std::__is_arithmetic<int>, std::__is_pointer<int> > (0x0x7f890e4cecc0) 0 empty

Class __gnu_cxx::__enable_if<true, void>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__enable_if<true, void> (0x0x7f890e4ced20) 0 empty

Class __gnu_cxx::__enable_if<false, void>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__enable_if<false, void> (0x0x7f890e4ced80) 0 empty

Class std::iterator_traits<const log4shib::NDC::DiagnosticContext*>
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<const log4shib::NDC::DiagnosticContext*> (0x0x7f890e4cee40) 0 empty

Class __gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> >
   size=4 align=4
   base size=4 base align=4
__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > (0x0x7f890e4cede0) 0

Class std::__are_same<const log4shib::NDC::DiagnosticContext*, log4shib::NDC::DiagnosticContext*>
   size=1 align=1
   base size=0 base align=1
std::__are_same<const log4shib::NDC::DiagnosticContext*, log4shib::NDC::DiagnosticContext*> (0x0x7f890e4ceea0) 0 empty

Class __gnu_cxx::__enable_if<false, std::vector<log4shib::NDC::DiagnosticContext> >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__enable_if<false, std::vector<log4shib::NDC::DiagnosticContext> > (0x0x7f890e237000) 0 empty

Class std::iterator_traits<log4shib::NDC::DiagnosticContext*>
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<log4shib::NDC::DiagnosticContext*> (0x0x7f890e2370c0) 0 empty

Class __gnu_cxx::__normal_iterator<log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> >
   size=4 align=4
   base size=4 base align=4
__gnu_cxx::__normal_iterator<log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > (0x0x7f890e237060) 0

Class std::__are_same<log4shib::NDC::DiagnosticContext*, log4shib::NDC::DiagnosticContext*>
   size=1 align=1
   base size=0 base align=1
std::__are_same<log4shib::NDC::DiagnosticContext*, log4shib::NDC::DiagnosticContext*> (0x0x7f890e237120) 0 empty

Class __gnu_cxx::__enable_if<true, std::vector<log4shib::NDC::DiagnosticContext> >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__enable_if<true, std::vector<log4shib::NDC::DiagnosticContext> > (0x0x7f890e237180) 0 empty

Class std::__is_move_iterator<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > >
   size=1 align=1
   base size=0 base align=1
std::__is_move_iterator<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > > (0x0x7f890e2372a0) 0 empty

Class std::_Iter_base<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> >, false>
   size=1 align=1
   base size=0 base align=1
std::_Iter_base<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> >, false> (0x0x7f890e237300) 0 empty

Class std::_Miter_base<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > >
   size=1 align=1
   base size=1 base align=1
std::_Miter_base<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > > (0x0x7f890e1e77b8) 0 empty
  std::_Iter_base<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> >, false> (0x0x7f890e237360) 0 empty

Class std::__is_move_iterator<log4shib::NDC::DiagnosticContext*>
   size=1 align=1
   base size=0 base align=1
std::__is_move_iterator<log4shib::NDC::DiagnosticContext*> (0x0x7f890e2373c0) 0 empty

Class std::_Iter_base<log4shib::NDC::DiagnosticContext*, false>
   size=1 align=1
   base size=0 base align=1
std::_Iter_base<log4shib::NDC::DiagnosticContext*, false> (0x0x7f890e237420) 0 empty

Class std::_Miter_base<log4shib::NDC::DiagnosticContext*>
   size=1 align=1
   base size=1 base align=1
std::_Miter_base<log4shib::NDC::DiagnosticContext*> (0x0x7f890e1e7820) 0 empty
  std::_Iter_base<log4shib::NDC::DiagnosticContext*, false> (0x0x7f890e237480) 0 empty

Class std::_Destroy_aux<false>
   size=1 align=1
   base size=0 base align=1
std::_Destroy_aux<false> (0x0x7f890e237600) 0 empty

Class std::iterator_traits<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > >
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > > (0x0x7f890e237660) 0 empty

Class std::__uninitialized_copy<false>
   size=1 align=1
   base size=0 base align=1
std::__uninitialized_copy<false> (0x0x7f890e2376c0) 0 empty

Class std::__is_normal_iterator<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > >
   size=1 align=1
   base size=0 base align=1
std::__is_normal_iterator<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > > (0x0x7f890e237780) 0 empty

Class std::_Iter_base<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> >, true>
   size=1 align=1
   base size=0 base align=1
std::_Iter_base<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> >, true> (0x0x7f890e2377e0) 0 empty

Class std::_Niter_base<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > >
   size=1 align=1
   base size=1 base align=1
std::_Niter_base<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > > (0x0x7f890e1e7c98) 0 empty
  std::_Iter_base<__gnu_cxx::__normal_iterator<const log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> >, true> (0x0x7f890e237840) 0 empty

Class std::__is_normal_iterator<__gnu_cxx::__normal_iterator<log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > >
   size=1 align=1
   base size=0 base align=1
std::__is_normal_iterator<__gnu_cxx::__normal_iterator<log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > > (0x0x7f890e2378a0) 0 empty

Class std::_Iter_base<__gnu_cxx::__normal_iterator<log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> >, true>
   size=1 align=1
   base size=0 base align=1
std::_Iter_base<__gnu_cxx::__normal_iterator<log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> >, true> (0x0x7f890e237900) 0 empty

Class std::_Niter_base<__gnu_cxx::__normal_iterator<log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > >
   size=1 align=1
   base size=1 base align=1
std::_Niter_base<__gnu_cxx::__normal_iterator<log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > > (0x0x7f890e1e7d68) 0 empty
  std::_Iter_base<__gnu_cxx::__normal_iterator<log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> >, true> (0x0x7f890e237960) 0 empty

Class std::iterator_traits<__gnu_cxx::__normal_iterator<log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > >
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<__gnu_cxx::__normal_iterator<log4shib::NDC::DiagnosticContext*, std::vector<log4shib::NDC::DiagnosticContext> > > (0x0x7f890e2379c0) 0 empty

Class std::__is_normal_iterator<log4shib::NDC::DiagnosticContext*>
   size=1 align=1
   base size=0 base align=1
std::__is_normal_iterator<log4shib::NDC::DiagnosticContext*> (0x0x7f890e237a80) 0 empty

Class std::_Niter_base<log4shib::NDC::DiagnosticContext*>
   size=1 align=1
   base size=1 base align=1
std::_Niter_base<log4shib::NDC::DiagnosticContext*> (0x0x7f890def5000) 0 empty
  std::_Iter_base<log4shib::NDC::DiagnosticContext*, false> (0x0x7f890e237ae0) 0 empty

Class std::__are_same<log4shib::NDC::DiagnosticContext, log4shib::NDC::DiagnosticContext>
   size=1 align=1
   base size=0 base align=1
std::__are_same<log4shib::NDC::DiagnosticContext, log4shib::NDC::DiagnosticContext> (0x0x7f890e237b40) 0 empty

Class std::__is_pointer<log4shib::NDC::DiagnosticContext*>
   size=1 align=1
   base size=0 base align=1
std::__is_pointer<log4shib::NDC::DiagnosticContext*> (0x0x7f890e237ba0) 0 empty

Class std::__is_pointer<const log4shib::NDC::DiagnosticContext*>
   size=1 align=1
   base size=0 base align=1
std::__is_pointer<const log4shib::NDC::DiagnosticContext*> (0x0x7f890e237c00) 0 empty

