fix push/pop