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

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

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

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

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

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

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

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

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

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

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

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

Class std::__is_integer<long int>
   size=1 align=1
   base size=0 base align=1
std::__is_integer<long int> (0x0x147c0d5d2e40) 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> (0x0x147c0d5d2ea0) 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> (0x0x147c0d5d2f00) 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> (0x0x147c0d5d2f60) 0 empty

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

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

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

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

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

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

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

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

Class __gnu_cxx::__add_unsigned<char>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<char> (0x0x147c0d63a8a0) 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> (0x0x147c0d63a900) 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> (0x0x147c0d63a960) 0 empty

Class __gnu_cxx::__add_unsigned<int>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__add_unsigned<int> (0x0x147c0d63a9c0) 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> (0x0x147c0d63aa20) 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> (0x0x147c0d63aa80) 0 empty

Class __gnu_cxx::__remove_unsigned<char>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__remove_unsigned<char> (0x0x147c0d63ab40) 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> (0x0x147c0d63aba0) 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> (0x0x147c0d63ac00) 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> (0x0x147c0d63ac60) 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> (0x0x147c0d63acc0) 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> (0x0x147c0d63ad20) 0 empty

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

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

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

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

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

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

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

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

Class std::forward_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::forward_iterator_tag (0x0x147c0d485618) 0 empty
  std::input_iterator_tag (0x0x147c0d16b420) 0 empty

Class std::bidirectional_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::bidirectional_iterator_tag (0x0x147c0d485680) 0 empty
  std::forward_iterator_tag (0x0x147c0d4856e8) 0 empty
    std::input_iterator_tag (0x0x147c0d16b480) 0 empty

Class std::random_access_iterator_tag
   size=1 align=1
   base size=1 base align=1
std::random_access_iterator_tag (0x0x147c0d485750) 0 empty
  std::bidirectional_iterator_tag (0x0x147c0d4857b8) 0 empty
    std::forward_iterator_tag (0x0x147c0d485820) 0 empty
      std::input_iterator_tag (0x0x147c0d16b4e0) 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> (0x0x147c0d16b7e0) 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 (0x0x147c0d16b9c0) 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 (0x0x147c0d16ba20) 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 (0x0x147c0d16ba80) 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 (0x0x147c0d16bae0) 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 (0x0x147c0d16bb40) 0 empty

Class std::__iter_swap<true>
   size=1 align=1
   base size=0 base align=1
std::__iter_swap<true> (0x0x147c0d16bf60) 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> (0x0x147c0d245120) 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> (0x0x147c0d245240) 0 empty

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

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

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

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

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

Class std::bad_exception
   size=8 align=8
   base size=8 base align=8
std::bad_exception (0x0x147c0d485b60) 0 nearly-empty
    vptr=((& std::bad_exception::_ZTVSt13bad_exception) + 16u)
  std::exception (0x0x147c0d2455a0) 0 nearly-empty
      primary-for std::bad_exception (0x0x147c0d485b60)

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

Class std::bad_alloc
   size=8 align=8
   base size=8 base align=8
std::bad_alloc (0x0x147c0d485bc8) 0 nearly-empty
    vptr=((& std::bad_alloc::_ZTVSt9bad_alloc) + 16u)
  std::exception (0x0x147c0d245600) 0 nearly-empty
      primary-for std::bad_alloc (0x0x147c0d485bc8)

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

Class std::bad_array_length
   size=8 align=8
   base size=8 base align=8
std::bad_array_length (0x0x147c0d485c30) 0 nearly-empty
    vptr=((& std::bad_array_length::_ZTVSt16bad_array_length) + 16u)
  std::bad_alloc (0x0x147c0d485c98) 0 nearly-empty
      primary-for std::bad_array_length (0x0x147c0d485c30)
    std::exception (0x0x147c0d245660) 0 nearly-empty
        primary-for std::bad_alloc (0x0x147c0d485c98)

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

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

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

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

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

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

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

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

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

Class std::_Bit_reference
   size=16 align=8
   base size=16 base align=8
std::_Bit_reference (0x0x147c0d3341e0) 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> (0x0x147c0d334240) 0 empty

Class std::_Bit_iterator_base
   size=16 align=8
   base size=12 base align=8
std::_Bit_iterator_base (0x0x147c0d485f08) 0
  std::iterator<std::random_access_iterator_tag, bool> (0x0x147c0d3342a0) 0 empty

Class std::_Bit_iterator
   size=16 align=8
   base size=12 base align=8
std::_Bit_iterator (0x0x147c0d485f70) 0
  std::_Bit_iterator_base (0x0x147c0d485000) 0
    std::iterator<std::random_access_iterator_tag, bool> (0x0x147c0d334300) 0 empty

Class std::_Bit_const_iterator
   size=16 align=8
   base size=12 base align=8
std::_Bit_const_iterator (0x0x147c0d4850d0) 0
  std::_Bit_iterator_base (0x0x147c0d485a28) 0
    std::iterator<std::random_access_iterator_tag, bool> (0x0x147c0d334360) 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> (0x0x147c0d3344e0) 0 empty

Class std::iterator<std::random_access_iterator_tag, bool, long 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, long int, std::_Bit_reference*, std::_Bit_reference> (0x0x147c0d334540) 0 empty

Class std::reverse_iterator<std::_Bit_iterator>
   size=16 align=8
   base size=16 base align=8
std::reverse_iterator<std::_Bit_iterator> (0x0x147c0d016208) 0
  std::iterator<std::random_access_iterator_tag, bool, long int, std::_Bit_reference*, std::_Bit_reference> (0x0x147c0d3345a0) 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> (0x0x147c0d334600) 0 empty

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

Class std::reverse_iterator<std::_Bit_const_iterator>
   size=16 align=8
   base size=16 base align=8
std::reverse_iterator<std::_Bit_const_iterator> (0x0x147c0d016340) 0
  std::iterator<std::random_access_iterator_tag, bool, long int, const bool*, bool> (0x0x147c0d3346c0) 0 empty

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

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

Class __gnu_cxx::__numeric_traits<long int>
   size=1 align=1
   base size=1 base align=1
__gnu_cxx::__numeric_traits<long int> (0x0x147c0d016478) 0 empty
  __gnu_cxx::__numeric_traits_integer<long int> (0x0x147c0d3347e0) 0 empty

Class __gnu_cxx::new_allocator<Spider::Move*>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::new_allocator<Spider::Move*> (0x0x147c0d334a20) 0 empty

Class std::allocator<Spider::Move*>
   size=1 align=1
   base size=1 base align=1
std::allocator<Spider::Move*> (0x0x147c0d0167b8) 0 empty
  __gnu_cxx::new_allocator<Spider::Move*> (0x0x147c0d334a80) 0 empty

Class __gnu_cxx::__alloc_traits<std::allocator<Spider::Move*> >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<Spider::Move*> > (0x0x147c0d3349c0) 0 empty

Class std::allocator<Spider::Move*>::rebind<Spider::Move*>
   size=1 align=1
   base size=0 base align=1
std::allocator<Spider::Move*>::rebind<Spider::Move*> (0x0x147c0d334ba0) 0 empty

Class __gnu_cxx::__alloc_traits<std::allocator<Spider::Move*> >::rebind<Spider::Move*>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<Spider::Move*> >::rebind<Spider::Move*> (0x0x147c0d334b40) 0 empty

Class std::_Vector_base<Spider::Move*, std::allocator<Spider::Move*> >::_Vector_impl
   size=24 align=8
   base size=24 base align=8
std::_Vector_base<Spider::Move*, std::allocator<Spider::Move*> >::_Vector_impl (0x0x147c0d016958) 0
  std::allocator<Spider::Move*> (0x0x147c0d0169c0) 0 empty
    __gnu_cxx::new_allocator<Spider::Move*> (0x0x147c0d334c00) 0 empty

Class std::_Vector_base<Spider::Move*, std::allocator<Spider::Move*> >
   size=24 align=8
   base size=24 base align=8
std::_Vector_base<Spider::Move*, std::allocator<Spider::Move*> > (0x0x147c0d334960) 0

Class std::vector<Spider::Move*, std::allocator<Spider::Move*> >
   size=24 align=8
   base size=24 base align=8
std::vector<Spider::Move*, std::allocator<Spider::Move*> > (0x0x147c0d016a28) 0
  std::_Vector_base<Spider::Move*, std::allocator<Spider::Move*> > (0x0x147c0d334c60) 0

Class Spider::Vector<Spider::Move*>
   size=24 align=8
   base size=24 base align=8
Spider::Vector<Spider::Move*> (0x0x147c0d016bc8) 0
  std::vector<Spider::Move*, std::allocator<Spider::Move*> > (0x0x147c0d016c30) 0
    std::_Vector_base<Spider::Move*, std::allocator<Spider::Move*> > (0x0x147c0d334d80) 0

Class Spider::History
   size=32 align=8
   base size=28 base align=8
Spider::History (0x0x147c0d334900) 0

Vtable for Spider::Move
Spider::Move::_ZTVN6Spider4MoveE: 6u entries
0     (int (*)(...))0
8     (int (*)(...))(& _ZTIN6Spider4MoveE)
16    0u
24    0u
32    (int (*)(...))__cxa_pure_virtual
40    (int (*)(...))__cxa_pure_virtual

Class Spider::Move
   size=8 align=8
   base size=8 base align=8
Spider::Move (0x0x147c0d334de0) 0 nearly-empty
    vptr=((& Spider::Move::_ZTVN6Spider4MoveE) + 16u)

Vtable for Spider::DealMove
Spider::DealMove::_ZTVN6Spider8DealMoveE: 6u entries
0     (int (*)(...))0
8     (int (*)(...))(& _ZTIN6Spider8DealMoveE)
16    (int (*)(...))Spider::DealMove::~DealMove
24    (int (*)(...))Spider::DealMove::~DealMove
32    (int (*)(...))Spider::DealMove::execute
40    (int (*)(...))Spider::DealMove::takeBack

Class Spider::DealMove
   size=24 align=8
   base size=24 base align=8
Spider::DealMove (0x0x147c0d016c98) 0
    vptr=((& Spider::DealMove::_ZTVN6Spider8DealMoveE) + 16u)
  Spider::Move (0x0x147c0d334e40) 0 nearly-empty
      primary-for Spider::DealMove (0x0x147c0d016c98)

Vtable for Spider::NormalMove
Spider::NormalMove::_ZTVN6Spider10NormalMoveE: 6u entries
0     (int (*)(...))0
8     (int (*)(...))(& _ZTIN6Spider10NormalMoveE)
16    (int (*)(...))Spider::NormalMove::~NormalMove
24    (int (*)(...))Spider::NormalMove::~NormalMove
32    (int (*)(...))Spider::NormalMove::execute
40    (int (*)(...))Spider::NormalMove::takeBack

Class Spider::NormalMove
   size=32 align=8
   base size=29 base align=8
Spider::NormalMove (0x0x147c0d016d00) 0
    vptr=((& Spider::NormalMove::_ZTVN6Spider10NormalMoveE) + 16u)
  Spider::Move (0x0x147c0d334ea0) 0 nearly-empty
      primary-for Spider::NormalMove (0x0x147c0d016d00)

Vtable for Spider::FinalMove
Spider::FinalMove::_ZTVN6Spider9FinalMoveE: 6u entries
0     (int (*)(...))0
8     (int (*)(...))(& _ZTIN6Spider9FinalMoveE)
16    (int (*)(...))Spider::FinalMove::~FinalMove
24    (int (*)(...))Spider::FinalMove::~FinalMove
32    (int (*)(...))Spider::FinalMove::execute
40    (int (*)(...))Spider::FinalMove::takeBack

Class Spider::FinalMove
   size=32 align=8
   base size=30 base align=8
Spider::FinalMove (0x0x147c0d016d68) 0
    vptr=((& Spider::FinalMove::_ZTVN6Spider9FinalMoveE) + 16u)
  Spider::Move (0x0x147c0d334f00) 0 nearly-empty
      primary-for Spider::FinalMove (0x0x147c0d016d68)

Class __gnu_cxx::new_allocator<Spider::Card>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::new_allocator<Spider::Card> (0x0x147c0d1570c0) 0 empty

Class std::allocator<Spider::Card>
   size=1 align=1
   base size=1 base align=1
std::allocator<Spider::Card> (0x0x147c0d016dd0) 0 empty
  __gnu_cxx::new_allocator<Spider::Card> (0x0x147c0d157120) 0 empty

Class __gnu_cxx::__alloc_traits<std::allocator<Spider::Card> >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<Spider::Card> > (0x0x147c0d157060) 0 empty

Class std::allocator<Spider::Card>::rebind<Spider::Card>
   size=1 align=1
   base size=0 base align=1
std::allocator<Spider::Card>::rebind<Spider::Card> (0x0x147c0d157240) 0 empty

Class __gnu_cxx::__alloc_traits<std::allocator<Spider::Card> >::rebind<Spider::Card>
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__alloc_traits<std::allocator<Spider::Card> >::rebind<Spider::Card> (0x0x147c0d1571e0) 0 empty

Class std::_Vector_base<Spider::Card, std::allocator<Spider::Card> >::_Vector_impl
   size=24 align=8
   base size=24 base align=8
std::_Vector_base<Spider::Card, std::allocator<Spider::Card> >::_Vector_impl (0x0x147c0d016f70) 0
  std::allocator<Spider::Card> (0x0x147c0d0160d0) 0 empty
    __gnu_cxx::new_allocator<Spider::Card> (0x0x147c0d1572a0) 0 empty

Class std::_Vector_base<Spider::Card, std::allocator<Spider::Card> >
   size=24 align=8
   base size=24 base align=8
std::_Vector_base<Spider::Card, std::allocator<Spider::Card> > (0x0x147c0d157000) 0

Class std::vector<Spider::Card, std::allocator<Spider::Card> >
   size=24 align=8
   base size=24 base align=8
std::vector<Spider::Card, std::allocator<Spider::Card> > (0x0x147c0d0162d8) 0
  std::_Vector_base<Spider::Card, std::allocator<Spider::Card> > (0x0x147c0d157300) 0

Class Spider::Array<Spider::Card>
   size=24 align=8
   base size=24 base align=8
Spider::Array<Spider::Card> (0x0x147c0d0165b0) 0
  std::vector<Spider::Card, std::allocator<Spider::Card> > (0x0x147c0d016618) 0
    std::_Vector_base<Spider::Card, std::allocator<Spider::Card> > (0x0x147c0d157420) 0

Class Spider::Deck
   size=40 align=8
   base size=36 base align=8
Spider::Deck (0x0x147c0d334f60) 0

Class Spider::Card
   size=8 align=4
   base size=8 base align=4
Spider::Card (0x0x147c0d157480) 0

Class Spider::Vector<Spider::Card>
   size=24 align=8
   base size=24 base align=8
Spider::Vector<Spider::Card> (0x0x147c0d016680) 0
  std::vector<Spider::Card, std::allocator<Spider::Card> > (0x0x147c0d016820) 0
    std::_Vector_base<Spider::Card, std::allocator<Spider::Card> > (0x0x147c0d157540) 0

Vtable for Spider::Heap
Spider::Heap::_ZTVN6Spider4HeapE: 6u entries
0     (int (*)(...))0
8     (int (*)(...))(& _ZTIN6Spider4HeapE)
16    (int (*)(...))Spider::Heap::~Heap
24    (int (*)(...))Spider::Heap::~Heap
32    (int (*)(...))Spider::Heap::add
40    (int (*)(...))Spider::Heap::remove

Class Spider::Heap
   size=40 align=8
   base size=37 base align=8
Spider::Heap (0x0x147c0d1574e0) 0
    vptr=((& Spider::Heap::_ZTVN6Spider4HeapE) + 16u)

Vtable for Spider::Pack
Spider::Pack::_ZTVN6Spider4PackE: 6u entries
0     (int (*)(...))0
8     (int (*)(...))(& _ZTIN6Spider4PackE)
16    (int (*)(...))Spider::Pack::~Pack
24    (int (*)(...))Spider::Pack::~Pack
32    (int (*)(...))Spider::Heap::add
40    (int (*)(...))Spider::Heap::remove

Class Spider::Pack
   size=40 align=8
   base size=37 base align=8
Spider::Pack (0x0x147c0d016a90) 0
    vptr=((& Spider::Pack::_ZTVN6Spider4PackE) + 16u)
  Spider::Heap (0x0x147c0d1575a0) 0
      primary-for Spider::Pack (0x0x147c0d016a90)

Vtable for Spider::Pile
Spider::Pile::_ZTVN6Spider4PileE: 6u entries
0     (int (*)(...))0
8     (int (*)(...))(& _ZTIN6Spider4PileE)
16    (int (*)(...))Spider::Pile::~Pile
24    (int (*)(...))Spider::Pile::~Pile
32    (int (*)(...))Spider::Pile::add
40    (int (*)(...))Spider::Pile::remove

Class Spider::Pile
   size=56 align=8
   base size=56 base align=8
Spider::Pile (0x0x147c0d016e38) 0
    vptr=((& Spider::Pile::_ZTVN6Spider4PileE) + 16u)
  Spider::Heap (0x0x147c0d157600) 0
      primary-for Spider::Pile (0x0x147c0d016e38)

Vtable for Spider::FinalHeap
Spider::FinalHeap::_ZTVN6Spider9FinalHeapE: 6u entries
0     (int (*)(...))0
8     (int (*)(...))(& _ZTIN6Spider9FinalHeapE)
16    (int (*)(...))Spider::FinalHeap::~FinalHeap
24    (int (*)(...))Spider::FinalHeap::~FinalHeap
32    (int (*)(...))Spider::Heap::add
40    (int (*)(...))Spider::Heap::remove

Class Spider::FinalHeap
   size=40 align=8
   base size=38 base align=8
Spider::FinalHeap (0x0x147c0cddf000) 0
    vptr=((& Spider::FinalHeap::_ZTVN6Spider9FinalHeapE) + 16u)
  Spider::Heap (0x0x147c0d157660) 0
      primary-for Spider::FinalHeap (0x0x147c0cddf000)

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*> (0x0x147c0d1576c0) 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> (0x0x147c0d157720) 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*> (0x0x147c0cddf068) 0 empty
  std::_Iter_base<long unsigned int*, false> (0x0x147c0d157780) 0 empty

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

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

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

Class std::__is_scalar<int>
   size=1 align=1
   base size=1 base align=1
std::__is_scalar<int> (0x0x147c0cddf208) 0 empty
  std::__traitor<std::__is_arithmetic<int>, std::__is_pointer<int> > (0x0x147c0d1579c0) 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> (0x0x147c0d157a20) 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> (0x0x147c0d157a80) 0 empty

Class std::iterator_traits<Spider::Move**>
   size=1 align=1
   base size=0 base align=1
std::iterator_traits<Spider::Move**> (0x0x147c0d157b40) 0 empty

Class __gnu_cxx::__normal_iterator<Spider::Move**, std::vector<Spider::Move*, std::allocator<Spider::Move*> > >
   size=8 align=8
   base size=8 base align=8
__gnu_cxx::__normal_iterator<Spider::Move**, std::vector<Spider::Move*, std::allocator<Spider::Move*> > > (0x0x147c0d157ae0) 0

Class std::__are_same<Spider::Move**, Spider::Move**>
   size=1 align=1
   base size=0 base align=1
std::__are_same<Spider::Move**, Spider::Move**> (0x0x147c0d157ba0) 0 empty

Class __gnu_cxx::__enable_if<true, std::vector<Spider::Move*, std::allocator<Spider::Move*> > >
   size=1 align=1
   base size=0 base align=1
__gnu_cxx::__enable_if<true, std::vector<Spider::Move*, std::allocator<Spider::Move*> > > (0x0x147c0d157c00) 0 empty

Class std::__is_move_iterator<Spider::Move**>
   size=1 align=1
   base size=0 base align=1
std::__is_move_iterator<Spider::Move**> (0x0x147c0d157d80) 0 empty

Class std::_Iter_base<Spider::Move**, false>
   size=1 align=1
   base size=0 base align=1
std::_Iter_base<Spider::Move**, false> (0x0x147c0d157de0) 0 empty

Class std::_Miter_base<Spider::Move**>
   size=1 align=1
   base size=1 base align=1
std::_Miter_base<Spider::Move**> (0x0x147c0cddfa28) 0 empty
  std::_Iter_base<Spider::Move**, false> (0x0x147c0d157e40) 0 empty

Class std::__is_normal_iterator<Spider::Move**>
   size=1 align=1
   base size=0 base align=1
std::__is_normal_iterator<Spider::Move**> (0x0x147c0d157ea0) 0 empty

Class std::_Niter_base<Spider::Move**>
   size=1 align=1
   base size=1 base align=1
std::_Niter_base<Spider::Move**> (0x0x147c0cddfd68) 0 empty
  std::_Iter_base<Spider::Move**, false> (0x0x147c0d157f00) 0 empty

Class std::__are_same<Spider::Move*, Spider::Move*>
   size=1 align=1
   base size=0 base align=1
std::__are_same<Spider::Move*, Spider::Move*> (0x0x147c0d157f60) 0 empty

Class std::__is_pointer<Spider::Move**>
   size=1 align=1
   base size=0 base align=1
std::__is_pointer<Spider::Move**> (0x0x147c0ce93000) 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> (0x0x147c0ce93060) 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> (0x0x147c0ce930c0) 0 empty

