Creating Abstract Data Types Code