implementation good design practice / optimisation