Latin flip-flop