How To Implement An Adt