decoupled previous push