Implement Freedom protocol