add range
add stack