Implemented most of Record