Adt's implementation's