working version (pull + push)...