Corrections to .cbp.
Use abstract class - but how to swap pointers?