initial commit: encapsulated