Split is done, and it compiles now. Not tested yet