added push-pull2 demo with c