- refactoring
- generic coding