* average implemented
* interface refactoring