new split and merge interfaces