Started rework with a tiny little interace, sub-intefaced and then implemented.