initial commit from deitel code