[WIP] work in progress - refactorisation