re doc blocks and reorganisation of methods