towards 2.0.0 (need to finalise)