complete rework
init pop