add multi levek, not fully implemented yet + refactoring