abstraction
Example project.