0.4a Modularised version of 0.4