adapted all nonfree header inclusion since it doesn't exist anymore as a module