rem: pointer() :base_type( 0 ) { }
add: pointer( const pointer<D>& other ) :base_type( other.cast_to_uint32() ) { typedef D derived_type; BOOST_STATIC_ASSERT( (boost::is_convertible<derived_type, value_type>::value ) ); }
context: 		pointer()			:base_type( 0 )			{			}