Bug fixes, code optimisation