12 #include <boost/type_traits.hpp> 
   14 #define CONSERVATIVE_PLAYER_ACCESS 
   67   template <
class T> 
inline 
   74   template <
class T> 
inline 
   76     return iter + (-diff); 
 
   79   template <
class T, 
class T2>
 
   84   template <
class T, 
class T2>
 
   89   template <
class T, 
class T2>
 
   94   template <
class T, 
class T2>
 
   99   template <
class T, 
class T2>
 
  108   template <
typename T, 
size_t Capacity>
 
  114     typedef typename boost::remove_cv<T>::type 
T_simple;
 
  127       assert(i < Capacity);
 
  131     static size_t size() { 
return Capacity; }
 
  135       assert(i < Capacity);
 
  150       assert(1 < Capacity);
 
  151 #ifndef CONSERVATIVE_PLAYER_ACCESS 
  153       return *((T*)((
char *)&
elements[0] + 
 
  161       assert(1 < Capacity);
 
  162 #ifndef CONSERVATIVE_PLAYER_ACCESS 
  163       return *((T*)((
char *)&
elements[0] + 
 
  183     const T& 
back()
 const { 
return *(
end() - 1); }