splits the implicit class into public and private parts