refactored autoloading package