Strategy design pattern example.