fix ADT inheritance