refactored custom splitviewcontroller