update to fix dependency cycles