check in more reasonable implementation of split