moved down for easier use due to import madness (use as is without install)