Refactor. Add some examples.