it should be optional, and we should support the case where its not available in the class path.