add function

add GHJ partition