use dependencies instead of require