added strategy pattern description