bipartite
basic divide function
part finish