work around swig problem creating two different types for intrusive_ptr