https://medium.com/@renanschmitt/java-clean-code-a-small-trick-to-simplify-interface-signatures-299a5f47fe65