refactored
push, pop
refactored: removed dup impl
comment now up to date