refactored to use coffee_chain