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

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

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

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

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

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

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

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

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

Class std::__is_integer<short int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<short int> (0x0x7f231cec4720) 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> (0x0x7f231cec4780) 0 empty

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

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

Class std::__is_integer<long int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<long int> (0x0x7f231cec48a0) 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> (0x0x7f231cec4900) 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> (0x0x7f231cec4960) 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> (0x0x7f231cec49c0) 0 empty

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

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

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

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

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

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

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

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

Class __gnu_cxx::__add_unsigned<char>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<char> (0x0x7f231cf27300) 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> (0x0x7f231cf27360) 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> (0x0x7f231cf273c0) 0 empty

Class __gnu_cxx::__add_unsigned<int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<int> (0x0x7f231cf27420) 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> (0x0x7f231cf27480) 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> (0x0x7f231cf274e0) 0 empty

Class __gnu_cxx::__remove_unsigned<char>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__remove_unsigned<char> (0x0x7f231cf275a0) 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> (0x0x7f231cf27600) 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> (0x0x7f231cf27660) 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> (0x0x7f231cf276c0) 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> (0x0x7f231cf27720) 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> (0x0x7f231cf27780) 0 empty

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

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

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

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

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

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

Class __exception
   size=32 align=8
   base size=32 base align=8
__exception (0x0x7f231cf27c00) 0

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

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

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

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

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

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

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

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

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

Class std::forward_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::forward_iterator_tag (0x0x7f231ced1340) 0 empty
  std::input_iterator_tag (0x0x7f231d01e1e0) 0 empty

Class std::bidirectional_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::bidirectional_iterator_tag (0x0x7f231ced13a8) 0 empty
  std::forward_iterator_tag (0x0x7f231ced1410) 0 empty
    std::input_iterator_tag (0x0x7f231d01e240) 0 empty

Class std::random_access_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::random_access_iterator_tag (0x0x7f231ced1478) 0 empty
  std::bidirectional_iterator_tag (0x0x7f231ced14e0) 0 empty
    std::forward_iterator_tag (0x0x7f231ced1548) 0 empty
      std::input_iterator_tag (0x0x7f231d01e2a0) 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> (0x0x7f231d01e5a0) 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 (0x0x7f231d01e780) 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 (0x0x7f231d01e7e0) 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 (0x0x7f231d01e840) 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 (0x0x7f231d01e8a0) 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 (0x0x7f231d01e900) 0 empty

Class std::__iter_swap<true>
   size=1 align=1
   base size=0 base align=1
std::__iter_swap<true> (0x0x7f231d01ed20) 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> (0x0x7f231d01eea0) 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> (0x0x7f231cb01000) 0 empty

Class std::__equal<true>
   size=1 align=1
   base size=0 base align=1
std::__equal<true> (0x0x7f231cb01120) 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> (0x0x7f231cb011e0) 0 empty

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

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

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

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

Class std::char_traits<wchar_t>
   size=1 align=1
   base size=0 base align=1
std::char_traits<wchar_t> (0x0x7f231cb01900) 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 (0x0x7f231cb01960) 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 (0x0x7f231ced1888) 0 nearly-empty
    vptr=((& std::bad_exception::_ZTVSt13bad_exception) + 8u)
  std::exception (0x0x7f231cb019c0) 0 nearly-empty
      primary-for std::bad_exception (0x0x7f231ced1888)

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 (0x0x7f231ced18f0) 0 nearly-empty
    vptr=((& std::bad_alloc::_ZTVSt9bad_alloc) + 8u)
  std::exception (0x0x7f231cb01a20) 0 nearly-empty
      primary-for std::bad_alloc (0x0x7f231ced18f0)

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 (0x0x7f231ced1958) 0 nearly-empty
    vptr=((& std::bad_array_length::_ZTVSt16bad_array_length) + 8u)
  std::bad_alloc (0x0x7f231ced19c0) 0 nearly-empty
      primary-for std::bad_array_length (0x0x7f231ced1958)
    std::exception (0x0x7f231cb01a80) 0 nearly-empty
        primary-for std::bad_alloc (0x0x7f231ced19c0)

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

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

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

Class std::allocator<char>
   size=1 align=1
   base size=1 base align=1
std::allocator<char> (0x0x7f231ced1a90) 0 empty
  __gnu_cxx::new_allocator<char> (0x0x7f231cb01de0) 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> (0x0x7f231cb01e40) 0 empty

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

Class lconv
   size=56 align=4
   base size=56 base align=4
lconv (0x0x7f231cc850c0) 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 (0x0x7f231cc85120) 0 nearly-empty
    vptr=((& __cxxabiv1::__forced_unwind::_ZTVN10__cxxabiv115__forced_unwindE) + 8u)

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

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

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

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

Class __pthread_internal_slist
   size=4 align=4
   base size=4 base align=4
__pthread_internal_slist (0x0x7f231c91fd80) 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> (0x0x7f231c91fea0) 0

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

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

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

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

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

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

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

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

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

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

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

Class __jmp_buf_internal_tag
   size=104 align=8
   base size=104 base align=8
__jmp_buf_internal_tag (0x0x7f231c962300) 0

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

Class <anonymous struct>::<anonymous struct>
   size=112 align=8
   base size=112 base align=8
<anonymous struct>::<anonymous struct> (0x0x7f231c962420) 0

Class <anonymous struct>
   size=128 align=8
   base size=128 base align=8
<anonymous struct> (0x0x7f231c9623c0) 0

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

Class __pthread_cleanup_class
   size=16 align=4
   base size=16 base align=4
__pthread_cleanup_class (0x0x7f231c9624e0) 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> > (0x0x7f231c9626c0) 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> (0x0x7f231c962720) 0 empty

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

Class std::allocator<char>::rebind<char>
   size=1 align=1
   base size=0 base align=1
std::allocator<char>::rebind<char> (0x0x7f231c962900) 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 (0x0x7f231c8f2bc8) 0
  std::allocator<char> (0x0x7f231c8f2c30) 0 empty
    __gnu_cxx::new_allocator<char> (0x0x7f231c962960) 0 empty

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

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

Class std::basic_string<char>::_Rep
   size=12 align=4
   base size=12 base align=4
std::basic_string<char>::_Rep (0x0x7f231c8f2e38) 0
  std::basic_string<char>::_Rep_base (0x0x7f231c962a20) 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> (0x0x7f231c962ae0) 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 (0x0x7f231c8f2f70) 0
  std::allocator<wchar_t> (0x0x7f231c8f29c0) 0 empty
    __gnu_cxx::new_allocator<wchar_t> (0x0x7f231c962b40) 0 empty

Class std::basic_string<wchar_t>
   size=4 align=4
   base size=4 base align=4
std::basic_string<wchar_t> (0x0x7f231c962a80) 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 (0x0x7f231c962ba0) 0

Class std::allocator<wchar_t>::rebind<char>
   size=1 align=1
   base size=0 base align=1
std::allocator<wchar_t>::rebind<char> (0x0x7f231c962c60) 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 (0x0x7f231c8f2a90) 0
  std::basic_string<wchar_t>::_Rep_base (0x0x7f231c962c00) 0

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

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

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

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

Class std::_Bit_reference
   size=8 align=4
   base size=8 base align=4
std::_Bit_reference (0x0x7f231c857240) 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> (0x0x7f231c8572a0) 0 empty

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

Class std::_Bit_iterator
   size=8 align=4
   base size=8 base align=4
std::_Bit_iterator (0x0x7f231c4e4068) 0
  std::_Bit_iterator_base (0x0x7f231c4e40d0) 0
    std::iterator<std::random_access_iterator_tag, bool> (0x0x7f231c857360) 0 empty

Class std::_Bit_const_iterator
   size=8 align=4
   base size=8 base align=4
std::_Bit_const_iterator (0x0x7f231c4e4138) 0
  std::_Bit_iterator_base (0x0x7f231c4e41a0) 0
    std::iterator<std::random_access_iterator_tag, bool> (0x0x7f231c8573c0) 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> (0x0x7f231c857540) 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> (0x0x7f231c8575a0) 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> (0x0x7f231c4e4410) 0
  std::iterator<std::random_access_iterator_tag, bool, int, std::_Bit_reference*, std::_Bit_reference> (0x0x7f231c8576c0) 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> (0x0x7f231c857720) 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> (0x0x7f231c857780) 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> (0x0x7f231c4e45b0) 0
  std::iterator<std::random_access_iterator_tag, bool, int, const bool*, bool> (0x0x7f231c8577e0) 0 empty

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

Class std::allocator<std::basic_string<char> >
   size=1 align=1
   base size=1 base align=1
std::allocator<std::basic_string<char> > (0x0x7f231c4e4820) 0 empty
  __gnu_cxx::new_allocator<std::basic_string<char> > (0x0x7f231c8579c0) 0 empty

Class __gnu_cxx::__alloc_traits<std::allocator<std::basic_string<char> > >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<std::basic_string<char> > > (0x0x7f231c857900) 0 empty

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

Class __gnu_cxx::__alloc_traits<std::allocator<std::basic_string<char> > >::rebind<std::basic_string<char> >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<std::basic_string<char> > >::rebind<std::basic_string<char> > (0x0x7f231c857a80) 0 empty

Class std::_Vector_base<std::basic_string<char>, std::allocator<std::basic_string<char> > >::_Vector_impl
   size=12 align=4
   base size=12 base align=4
std::_Vector_base<std::basic_string<char>, std::allocator<std::basic_string<char> > >::_Vector_impl (0x0x7f231c4e4a90) 0
  std::allocator<std::basic_string<char> > (0x0x7f231c4e4af8) 0 empty
    __gnu_cxx::new_allocator<std::basic_string<char> > (0x0x7f231c857b40) 0 empty

Class std::_Vector_base<std::basic_string<char>, std::allocator<std::basic_string<char> > >
   size=12 align=4
   base size=12 base align=4
std::_Vector_base<std::basic_string<char>, std::allocator<std::basic_string<char> > > (0x0x7f231c8578a0) 0

Class std::vector<std::basic_string<char> >
   size=12 align=4
   base size=12 base align=4
std::vector<std::basic_string<char> > (0x0x7f231c4e4c30) 0
  std::_Vector_base<std::basic_string<char>, std::allocator<std::basic_string<char> > > (0x0x7f231c857ba0) 0

Class __gnu_cxx::new_allocator<double>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::new_allocator<double> (0x0x7f231c857cc0) 0 empty

Class std::allocator<double>
   size=1 align=1
   base size=1 base align=1
std::allocator<double> (0x0x7f231c4e4d00) 0 empty
  __gnu_cxx::new_allocator<double> (0x0x7f231c857d20) 0 empty

Class __gnu_cxx::__alloc_traits<std::allocator<double> >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<double> > (0x0x7f231c857c60) 0 empty

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

Class __gnu_cxx::__alloc_traits<std::allocator<double> >::rebind<double>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<double> >::rebind<double> (0x0x7f231c857de0) 0 empty

Class std::_Vector_base<double, std::allocator<double> >::_Vector_impl
   size=12 align=4
   base size=12 base align=4
std::_Vector_base<double, std::allocator<double> >::_Vector_impl (0x0x7f231c4e4ea0) 0
  std::allocator<double> (0x0x7f231c4e4f08) 0 empty
    __gnu_cxx::new_allocator<double> (0x0x7f231c857ea0) 0 empty

Class std::_Vector_base<double, std::allocator<double> >
   size=12 align=4
   base size=12 base align=4
std::_Vector_base<double, std::allocator<double> > (0x0x7f231c857c00) 0

Class std::vector<double>
   size=12 align=4
   base size=12 base align=4
std::vector<double> (0x0x7f231c4e4f70) 0
  std::_Vector_base<double, std::allocator<double> > (0x0x7f231c857f00) 0

Class __gnu_cxx::new_allocator<int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::new_allocator<int> (0x0x7f231c2fb060) 0 empty

Class std::allocator<int>
   size=1 align=1
   base size=1 base align=1
std::allocator<int> (0x0x7f231c4e46e8) 0 empty
  __gnu_cxx::new_allocator<int> (0x0x7f231c2fb0c0) 0 empty

Class __gnu_cxx::__alloc_traits<std::allocator<int> >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<int> > (0x0x7f231c2fb000) 0 empty

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

Class __gnu_cxx::__alloc_traits<std::allocator<int> >::rebind<int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<int> >::rebind<int> (0x0x7f231c2fb180) 0 empty

Class std::_Vector_base<int, std::allocator<int> >::_Vector_impl
   size=12 align=4
   base size=12 base align=4
std::_Vector_base<int, std::allocator<int> >::_Vector_impl (0x0x7f231c4e4888) 0
  std::allocator<int> (0x0x7f231c4e4c98) 0 empty
    __gnu_cxx::new_allocator<int> (0x0x7f231c2fb240) 0 empty

Class std::_Vector_base<int, std::allocator<int> >
   size=12 align=4
   base size=12 base align=4
std::_Vector_base<int, std::allocator<int> > (0x0x7f231c857f60) 0

Class std::vector<int>
   size=12 align=4
   base size=12 base align=4
std::vector<int> (0x0x7f231c4e4d68) 0
  std::_Vector_base<int, std::allocator<int> > (0x0x7f231c2fb2a0) 0

Class Options
   size=632 align=8
   base size=628 base align=8
Options (0x0x7f231c857840) 0

Vtable for ProjectionBase
ProjectionBase::_ZTV14ProjectionBase: 8u entries
0     (int (*)(...))0
4     (int (*)(...))(& _ZTI14ProjectionBase)
8     0u
12    0u
16    (int (*)(...))__cxa_pure_virtual
20    (int (*)(...))__cxa_pure_virtual
24    (int (*)(...))ProjectionBase::getDarkening
28    (int (*)(...))ProjectionBase::setRange

Class ProjectionBase
   size=240 align=8
   base size=240 base align=8
ProjectionBase (0x0x7f231c2fb3c0) 0
    vptr=((& ProjectionBase::_ZTV14ProjectionBase) + 8u)

Vtable for ProjectionOrthographic
ProjectionOrthographic::_ZTV22ProjectionOrthographic: 8u entries
0     (int (*)(...))0
4     (int (*)(...))(& _ZTI22ProjectionOrthographic)
8     (int (*)(...))ProjectionOrthographic::~ProjectionOrthographic
12    (int (*)(...))ProjectionOrthographic::~ProjectionOrthographic
16    (int (*)(...))ProjectionOrthographic::pixelToSpherical
20    (int (*)(...))ProjectionOrthographic::sphericalToPixel
24    (int (*)(...))ProjectionBase::getDarkening
28    (int (*)(...))ProjectionOrthographic::setRange

Class ProjectionOrthographic
   size=296 align=8
   base size=296 base align=8
ProjectionOrthographic (0x0x7f231c329138) 0
    vptr=((& ProjectionOrthographic::_ZTV22ProjectionOrthographic) + 8u)
  ProjectionBase (0x0x7f231c2fb420) 0
      primary-for ProjectionOrthographic (0x0x7f231c329138)

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

Class __gnu_cxx::__promote_2<double, double, double, double>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__promote_2<double, double, double, double> (0x0x7f231c2fb4e0) 0 empty

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*> (0x0x7f231c2fb540) 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> (0x0x7f231c2fb5a0) 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*> (0x0x7f231c3291a0) 0 empty
  std::_Iter_base<long unsigned int*, false> (0x0x7f231c2fb600) 0 empty

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

Class std::__is_floating<int>
   size=1 align=1
   base size=0 base align=1
std::__is_floating<int> (0x0x7f231c2fb780) 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> > (0x0x7f231c2fb720) 0 empty

Class std::__is_arithmetic<int>
   size=1 align=1
   base size=1 base align=1
std::__is_arithmetic<int> (0x0x7f231c329270) 0 empty
  std::__traitor<std::__is_integer<int>, std::__is_floating<int> > (0x0x7f231c2fb7e0) 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> > (0x0x7f231c2fb660) 0 empty

Class std::__is_scalar<int>
   size=1 align=1
   base size=1 base align=1
std::__is_scalar<int> (0x0x7f231c329340) 0 empty
  std::__traitor<std::__is_arithmetic<int>, std::__is_pointer<int> > (0x0x7f231c2fb840) 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> (0x0x7f231c2fb8a0) 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> (0x0x7f231c2fb900) 0 empty

Class std::iterator_traits<double*>
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<double*> (0x0x7f231c2fb9c0) 0 empty

Class __gnu_cxx::__normal_iterator<double*, std::vector<double> >
   size=4 align=4
   base size=4 base align=4
__gnu_cxx::__normal_iterator<double*, std::vector<double> > (0x0x7f231c2fb960) 0

Class std::__are_same<double*, double*>
   size=1 align=1
   base size=0 base align=1
std::__are_same<double*, double*> (0x0x7f231c2fba20) 0 empty

Class __gnu_cxx::__enable_if<true, std::vector<double> >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__enable_if<true, std::vector<double> > (0x0x7f231c2fba80) 0 empty

Class std::__is_move_iterator<double*>
   size=1 align=1
   base size=0 base align=1
std::__is_move_iterator<double*> (0x0x7f231c2fbb40) 0 empty

Class std::_Iter_base<double*, false>
   size=1 align=1
   base size=0 base align=1
std::_Iter_base<double*, false> (0x0x7f231c2fbba0) 0 empty

Class std::_Miter_base<double*>
   size=1 align=1
   base size=1 base align=1
std::_Miter_base<double*> (0x0x7f231c329a28) 0 empty
  std::_Iter_base<double*, false> (0x0x7f231c2fbc00) 0 empty

Class std::__is_normal_iterator<double*>
   size=1 align=1
   base size=0 base align=1
std::__is_normal_iterator<double*> (0x0x7f231c2fbcc0) 0 empty

Class std::_Niter_base<double*>
   size=1 align=1
   base size=1 base align=1
std::_Niter_base<double*> (0x0x7f231c329dd0) 0 empty
  std::_Iter_base<double*, false> (0x0x7f231c2fbd20) 0 empty

Class std::__are_same<double, double>
   size=1 align=1
   base size=0 base align=1
std::__are_same<double, double> (0x0x7f231c2fbd80) 0 empty

Class std::__is_pointer<double*>
   size=1 align=1
   base size=0 base align=1
std::__is_pointer<double*> (0x0x7f231c2fbde0) 0 empty

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

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

