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

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

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

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

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

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

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

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

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

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

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

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

Class std::__is_integer<long int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<long int> (0x0x7f5aa0f25ae0) 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> (0x0x7f5aa0f25b40) 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> (0x0x7f5aa0f25ba0) 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> (0x0x7f5aa0f25c00) 0 empty

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

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

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

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

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

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

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

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

Class __gnu_cxx::__add_unsigned<char>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<char> (0x0x7f5aa0f8b540) 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> (0x0x7f5aa0f8b5a0) 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> (0x0x7f5aa0f8b600) 0 empty

Class __gnu_cxx::__add_unsigned<int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<int> (0x0x7f5aa0f8b660) 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> (0x0x7f5aa0f8b6c0) 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> (0x0x7f5aa0f8b720) 0 empty

Class __gnu_cxx::__remove_unsigned<char>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__remove_unsigned<char> (0x0x7f5aa0f8b7e0) 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> (0x0x7f5aa0f8b840) 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> (0x0x7f5aa0f8b8a0) 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> (0x0x7f5aa0f8b900) 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> (0x0x7f5aa0f8b960) 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> (0x0x7f5aa0f8b9c0) 0 empty

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

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

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

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

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

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

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

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

Class std::forward_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::forward_iterator_tag (0x0x7f5aa0f4b4e0) 0 empty
  std::input_iterator_tag (0x0x7f5aa0fd10c0) 0 empty

Class std::bidirectional_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::bidirectional_iterator_tag (0x0x7f5aa0f4b548) 0 empty
  std::forward_iterator_tag (0x0x7f5aa0f4b5b0) 0 empty
    std::input_iterator_tag (0x0x7f5aa0fd1120) 0 empty

Class std::random_access_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::random_access_iterator_tag (0x0x7f5aa0f4b618) 0 empty
  std::bidirectional_iterator_tag (0x0x7f5aa0f4b680) 0 empty
    std::forward_iterator_tag (0x0x7f5aa0f4b6e8) 0 empty
      std::input_iterator_tag (0x0x7f5aa0fd1180) 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> (0x0x7f5aa0fd1480) 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 (0x0x7f5aa0fd1660) 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 (0x0x7f5aa0fd16c0) 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 (0x0x7f5aa0fd1720) 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 (0x0x7f5aa0fd1780) 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 (0x0x7f5aa0fd17e0) 0 empty

Class std::__iter_swap<true>
   size=1 align=1
   base size=0 base align=1
std::__iter_swap<true> (0x0x7f5aa0fd1c00) 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> (0x0x7f5aa0fd1d80) 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> (0x0x7f5aa0fd1ea0) 0 empty

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

Class std::__lexicographical_compare<true>
   size=1 align=1
   base size=0 base align=1
std::__lexicographical_compare<true> (0x0x7f5aa09bd180) 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 (0x0x7f5aa09bd1e0) 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 (0x0x7f5aa0f4ba28) 0 nearly-empty
    vptr=((& std::bad_exception::_ZTVSt13bad_exception) + 8u)
  std::exception (0x0x7f5aa09bd240) 0 nearly-empty
      primary-for std::bad_exception (0x0x7f5aa0f4ba28)

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

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

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

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

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

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

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

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

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

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

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

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

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

Class std::_Bit_iterator
   size=8 align=4
   base size=8 base align=4
std::_Bit_iterator (0x0x7f5aa0f4bd68) 0
  std::_Bit_iterator_base (0x0x7f5aa0f4bdd0) 0
    std::iterator<std::random_access_iterator_tag, bool> (0x0x7f5aa0767300) 0 empty

Class std::_Bit_const_iterator
   size=8 align=4
   base size=8 base align=4
std::_Bit_const_iterator (0x0x7f5aa0f4be38) 0
  std::_Bit_iterator_base (0x0x7f5aa1003000) 0
    std::iterator<std::random_access_iterator_tag, bool> (0x0x7f5aa0767360) 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> (0x0x7f5aa07674e0) 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> (0x0x7f5aa0767540) 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> (0x0x7f5aa084f1a0) 0
  std::iterator<std::random_access_iterator_tag, bool, int, std::_Bit_reference*, std::_Bit_reference> (0x0x7f5aa0767660) 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> (0x0x7f5aa07676c0) 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> (0x0x7f5aa0767720) 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> (0x0x7f5aa084f340) 0
  std::iterator<std::random_access_iterator_tag, bool, int, const bool*, bool> (0x0x7f5aa0767780) 0 empty

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> > (0x0x7f5aa07677e0) 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> (0x0x7f5aa0767840) 0 empty

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

Vtable for gcn::Input
gcn::Input::_ZTVN3gcn5InputE: 9u entries
0     (int (*)(...))0
4     (int (*)(...))(& _ZTIN3gcn5InputE)
8     0u
12    0u
16    (int (*)(...))__cxa_pure_virtual
20    (int (*)(...))__cxa_pure_virtual
24    (int (*)(...))__cxa_pure_virtual
28    (int (*)(...))__cxa_pure_virtual
32    (int (*)(...))__cxa_pure_virtual

Class gcn::Input
   size=4 align=4
   base size=4 base align=4
gcn::Input (0x0x7f5aa0576480) 0 nearly-empty
    vptr=((& gcn::Input::_ZTVN3gcn5InputE) + 8u)

Class gcn::Key
   size=4 align=4
   base size=4 base align=4
gcn::Key (0x0x7f5aa05764e0) 0

Class gcn::KeyInput
   size=16 align=4
   base size=13 base align=4
gcn::KeyInput (0x0x7f5aa0576540) 0

Class gcn::MouseInput
   size=20 align=4
   base size=20 base align=4
gcn::MouseInput (0x0x7f5aa05765a0) 0

Class __gnu_cxx::new_allocator<gcn::KeyInput>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::new_allocator<gcn::KeyInput> (0x0x7f5aa0576720) 0 empty

Class std::allocator<gcn::KeyInput>
   size=1 align=1
   base size=1 base align=1
std::allocator<gcn::KeyInput> (0x0x7f5aa05603a8) 0 empty
  __gnu_cxx::new_allocator<gcn::KeyInput> (0x0x7f5aa0576780) 0 empty

Class std::allocator<gcn::KeyInput>::rebind<gcn::KeyInput*>
   size=1 align=1
   base size=0 base align=1
std::allocator<gcn::KeyInput>::rebind<gcn::KeyInput*> (0x0x7f5aa05767e0) 0 empty

Class std::allocator<gcn::KeyInput>::rebind<gcn::KeyInput>
   size=1 align=1
   base size=0 base align=1
std::allocator<gcn::KeyInput>::rebind<gcn::KeyInput> (0x0x7f5aa0576840) 0 empty

Class std::_Deque_iterator<gcn::KeyInput, gcn::KeyInput&, gcn::KeyInput*>
   size=16 align=4
   base size=16 base align=4
std::_Deque_iterator<gcn::KeyInput, gcn::KeyInput&, gcn::KeyInput*> (0x0x7f5aa0576900) 0

Class std::_Deque_base<gcn::KeyInput, std::allocator<gcn::KeyInput> >::_Deque_impl
   size=40 align=4
   base size=40 base align=4
std::_Deque_base<gcn::KeyInput, std::allocator<gcn::KeyInput> >::_Deque_impl (0x0x7f5aa0560478) 0
  std::allocator<gcn::KeyInput> (0x0x7f5aa05604e0) 0 empty
    __gnu_cxx::new_allocator<gcn::KeyInput> (0x0x7f5aa05768a0) 0 empty

Class std::_Deque_base<gcn::KeyInput, std::allocator<gcn::KeyInput> >
   size=40 align=4
   base size=40 base align=4
std::_Deque_base<gcn::KeyInput, std::allocator<gcn::KeyInput> > (0x0x7f5aa05766c0) 0

Class std::deque<gcn::KeyInput, std::allocator<gcn::KeyInput> >
   size=40 align=4
   base size=40 base align=4
std::deque<gcn::KeyInput, std::allocator<gcn::KeyInput> > (0x0x7f5aa0560548) 0
  std::_Deque_base<gcn::KeyInput, std::allocator<gcn::KeyInput> > (0x0x7f5aa05769c0) 0

Class std::queue<gcn::KeyInput>
   size=40 align=4
   base size=40 base align=4
std::queue<gcn::KeyInput> (0x0x7f5aa0576660) 0

Class __gnu_cxx::new_allocator<gcn::MouseInput>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::new_allocator<gcn::MouseInput> (0x0x7f5aa0576ae0) 0 empty

Class std::allocator<gcn::MouseInput>
   size=1 align=1
   base size=1 base align=1
std::allocator<gcn::MouseInput> (0x0x7f5aa0560750) 0 empty
  __gnu_cxx::new_allocator<gcn::MouseInput> (0x0x7f5aa0576b40) 0 empty

Class std::allocator<gcn::MouseInput>::rebind<gcn::MouseInput*>
   size=1 align=1
   base size=0 base align=1
std::allocator<gcn::MouseInput>::rebind<gcn::MouseInput*> (0x0x7f5aa0576ba0) 0 empty

Class std::allocator<gcn::MouseInput>::rebind<gcn::MouseInput>
   size=1 align=1
   base size=0 base align=1
std::allocator<gcn::MouseInput>::rebind<gcn::MouseInput> (0x0x7f5aa0576c00) 0 empty

Class std::_Deque_iterator<gcn::MouseInput, gcn::MouseInput&, gcn::MouseInput*>
   size=16 align=4
   base size=16 base align=4
std::_Deque_iterator<gcn::MouseInput, gcn::MouseInput&, gcn::MouseInput*> (0x0x7f5aa0576cc0) 0

Class std::_Deque_base<gcn::MouseInput, std::allocator<gcn::MouseInput> >::_Deque_impl
   size=40 align=4
   base size=40 base align=4
std::_Deque_base<gcn::MouseInput, std::allocator<gcn::MouseInput> >::_Deque_impl (0x0x7f5aa0560820) 0
  std::allocator<gcn::MouseInput> (0x0x7f5aa0560888) 0 empty
    __gnu_cxx::new_allocator<gcn::MouseInput> (0x0x7f5aa0576c60) 0 empty

Class std::_Deque_base<gcn::MouseInput, std::allocator<gcn::MouseInput> >
   size=40 align=4
   base size=40 base align=4
std::_Deque_base<gcn::MouseInput, std::allocator<gcn::MouseInput> > (0x0x7f5aa0576a80) 0

Class std::deque<gcn::MouseInput, std::allocator<gcn::MouseInput> >
   size=40 align=4
   base size=40 base align=4
std::deque<gcn::MouseInput, std::allocator<gcn::MouseInput> > (0x0x7f5aa05608f0) 0
  std::_Deque_base<gcn::MouseInput, std::allocator<gcn::MouseInput> > (0x0x7f5aa0576d80) 0

Class std::queue<gcn::MouseInput>
   size=40 align=4
   base size=40 base align=4
std::queue<gcn::MouseInput> (0x0x7f5aa0576a20) 0

Vtable for gcn::GenericInput
gcn::GenericInput::_ZTVN3gcn12GenericInputE: 9u entries
0     (int (*)(...))0
4     (int (*)(...))(& _ZTIN3gcn12GenericInputE)
8     (int (*)(...))gcn::GenericInput::~GenericInput
12    (int (*)(...))gcn::GenericInput::~GenericInput
16    (int (*)(...))gcn::GenericInput::isKeyQueueEmpty
20    (int (*)(...))gcn::GenericInput::dequeueKeyInput
24    (int (*)(...))gcn::GenericInput::isMouseQueueEmpty
28    (int (*)(...))gcn::GenericInput::dequeueMouseInput
32    (int (*)(...))gcn::GenericInput::_pollInput

Class gcn::GenericInput
   size=84 align=4
   base size=84 base align=4
gcn::GenericInput (0x0x7f5aa0560340) 0
    vptr=((& gcn::GenericInput::_ZTVN3gcn12GenericInputE) + 8u)
  gcn::Input (0x0x7f5aa0576600) 0 nearly-empty
      primary-for gcn::GenericInput (0x0x7f5aa0560340)

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

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

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

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

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

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

Class <anonymous struct>
   size=8 align=4
   base size=8 base align=4
<anonymous struct> (0x0x7f5aa0359600) 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 (0x0x7f5aa0359660) 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 (0x0x7f5aa03596c0) 0

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

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

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

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

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

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

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

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

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

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

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

Class <anonymous union>
   size=4 align=4
   base size=4 base align=4
<anonymous union> (0x0x7f5aa0359c00) 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> (0x0x7f5aa0359d80) 0

Class <anonymous union>::<anonymous struct>::<anonymous union>
   size=8 align=8
   base size=8 base align=8
<anonymous union>::<anonymous struct>::<anonymous union> (0x0x7f5aa0359d20) 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> (0x0x7f5aa0359e40) 0

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Class std::allocator<char>::rebind<char>
   size=1 align=1
   base size=0 base align=1
std::allocator<char>::rebind<char> (0x0x7f5aa04655a0) 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 (0x0x7f5aa0560c30) 0
  std::allocator<char> (0x0x7f5aa0560c98) 0 empty
    __gnu_cxx::new_allocator<char> (0x0x7f5aa0465600) 0 empty

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

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

Class std::basic_string<char>::_Rep
   size=12 align=4
   base size=12 base align=4
std::basic_string<char>::_Rep (0x0x7f5aa0560ea0) 0
  std::basic_string<char>::_Rep_base (0x0x7f5aa04656c0) 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> (0x0x7f5aa0465780) 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 (0x0x7f5aa05605b0) 0
  std::allocator<wchar_t> (0x0x7f5aa0560958) 0 empty
    __gnu_cxx::new_allocator<wchar_t> (0x0x7f5aa04657e0) 0 empty

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

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

Class gcn::Exception
   size=16 align=4
   base size=16 base align=4
gcn::Exception (0x0x7f5aa0465960) 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*> (0x0x7f5aa04659c0) 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> (0x0x7f5aa0465a20) 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*> (0x0x7f5aa0560f70) 0 empty
  std::_Iter_base<long unsigned int*, false> (0x0x7f5aa0465a80) 0 empty

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

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

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

Class std::__is_scalar<int>
   size=1 align=1
   base size=1 base align=1
std::__is_scalar<int> (0x0x7f5a9ff73138) 0 empty
  std::__traitor<std::__is_arithmetic<int>, std::__is_pointer<int> > (0x0x7f5aa0465cc0) 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> (0x0x7f5aa0465d20) 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> (0x0x7f5aa0465d80) 0 empty

Class std::_Deque_iterator<gcn::KeyInput, const gcn::KeyInput&, const gcn::KeyInput*>
   size=16 align=4
   base size=16 base align=4
std::_Deque_iterator<gcn::KeyInput, const gcn::KeyInput&, const gcn::KeyInput*> (0x0x7f5aa0465ea0) 0

Class std::_Deque_iterator<gcn::MouseInput, const gcn::MouseInput&, const gcn::MouseInput*>
   size=16 align=4
   base size=16 base align=4
std::_Deque_iterator<gcn::MouseInput, const gcn::MouseInput&, const gcn::MouseInput*> (0x0x7f5aa0465f00) 0

Class __gnu_cxx::new_allocator<gcn::KeyInput*>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::new_allocator<gcn::KeyInput*> (0x0x7f5aa0465f60) 0 empty

Class std::allocator<gcn::KeyInput*>
   size=1 align=1
   base size=1 base align=1
std::allocator<gcn::KeyInput*> (0x0x7f5a9ff733a8) 0 empty
  __gnu_cxx::new_allocator<gcn::KeyInput*> (0x0x7f5aa001e000) 0 empty

Class __gnu_cxx::new_allocator<gcn::MouseInput*>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::new_allocator<gcn::MouseInput*> (0x0x7f5aa001e0c0) 0 empty

Class std::allocator<gcn::MouseInput*>
   size=1 align=1
   base size=1 base align=1
std::allocator<gcn::MouseInput*> (0x0x7f5a9ff734e0) 0 empty
  __gnu_cxx::new_allocator<gcn::MouseInput*> (0x0x7f5aa001e120) 0 empty

Class std::iterator_traits<std::_Deque_iterator<gcn::KeyInput, const gcn::KeyInput&, const gcn::KeyInput*> >
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<std::_Deque_iterator<gcn::KeyInput, const gcn::KeyInput&, const gcn::KeyInput*> > (0x0x7f5aa001e1e0) 0 empty

Class std::iterator_traits<std::_Deque_iterator<gcn::KeyInput, gcn::KeyInput&, gcn::KeyInput*> >
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<std::_Deque_iterator<gcn::KeyInput, gcn::KeyInput&, gcn::KeyInput*> > (0x0x7f5aa001e240) 0 empty

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

Class std::iterator_traits<std::_Deque_iterator<gcn::MouseInput, const gcn::MouseInput&, const gcn::MouseInput*> >
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<std::_Deque_iterator<gcn::MouseInput, const gcn::MouseInput&, const gcn::MouseInput*> > (0x0x7f5aa001e420) 0 empty

Class std::iterator_traits<std::_Deque_iterator<gcn::MouseInput, gcn::MouseInput&, gcn::MouseInput*> >
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<std::_Deque_iterator<gcn::MouseInput, gcn::MouseInput&, gcn::MouseInput*> > (0x0x7f5aa001e480) 0 empty

Class std::iterator_traits<gcn::KeyInput*>
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<gcn::KeyInput*> (0x0x7f5aa001e5a0) 0 empty

Class std::iterator_traits<gcn::MouseInput*>
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<gcn::MouseInput*> (0x0x7f5aa001e600) 0 empty

Class std::__is_move_iterator<gcn::MouseInput**>
   size=1 align=1
   base size=0 base align=1
std::__is_move_iterator<gcn::MouseInput**> (0x0x7f5aa001e660) 0 empty

Class std::_Iter_base<gcn::MouseInput**, false>
   size=1 align=1
   base size=0 base align=1
std::_Iter_base<gcn::MouseInput**, false> (0x0x7f5aa001e6c0) 0 empty

Class std::_Miter_base<gcn::MouseInput**>
   size=1 align=1
   base size=1 base align=1
std::_Miter_base<gcn::MouseInput**> (0x0x7f5aa00daa28) 0 empty
  std::_Iter_base<gcn::MouseInput**, false> (0x0x7f5aa001e720) 0 empty

Class std::__is_normal_iterator<gcn::MouseInput**>
   size=1 align=1
   base size=0 base align=1
std::__is_normal_iterator<gcn::MouseInput**> (0x0x7f5aa001e840) 0 empty

Class std::_Niter_base<gcn::MouseInput**>
   size=1 align=1
   base size=1 base align=1
std::_Niter_base<gcn::MouseInput**> (0x0x7f5aa00daa90) 0 empty
  std::_Iter_base<gcn::MouseInput**, false> (0x0x7f5aa001e8a0) 0 empty

Class std::iterator_traits<gcn::MouseInput**>
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<gcn::MouseInput**> (0x0x7f5aa001e900) 0 empty

Class std::__are_same<gcn::MouseInput*, gcn::MouseInput*>
   size=1 align=1
   base size=0 base align=1
std::__are_same<gcn::MouseInput*, gcn::MouseInput*> (0x0x7f5aa001e960) 0 empty

Class std::__is_pointer<gcn::MouseInput**>
   size=1 align=1
   base size=0 base align=1
std::__is_pointer<gcn::MouseInput**> (0x0x7f5aa001e9c0) 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> (0x0x7f5aa001ea20) 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> (0x0x7f5aa001ea80) 0 empty

