add proper heap

add proper heap