divide into functions/testing push function