wrap lib to prevent global var cluttering