factor out chug