packaged as a library