modified autoloader