make all dependencies optional