splitDataAndSetEnablingMap fully tested
merge refactoring 95%