hard dependencies