type A is abstract tagged;