static inline void apply(Turns& turns) { turns.erase( std::unique(turns.begin(), turns.end(), TurnEqualsTo()), turns.end() ); }
static inline void apply(Turns& turns) { turns.erase( std::remove_if(turns.begin(), turns.end(), IsContinueTurn()), turns.end() ); }