use a wrapper to prevent global pollution