base type [Type] and two-level type [AType]