first draft push/pull : still TODO