Update gif
Add strategy pattern