got push pop working, turned them into routines from macros