libs are necessary