made it usable as a module