Add strategy design pattern