fold hash push into single statement
add documentation