public function find($name)
    {
        $name = $this->config->get("basset.aliases.assets.{$name}", $name);

        // Spin through an array of methods ordered by the priority of how an asset should be found.
        // Once we find a non-null path we'll return that path breaking from the loop.
        foreach (array('RemotelyHosted', 'PackageAsset', 'WorkingDirectory', 'PublicPath', 'AbsolutePath') as $method)
        {
            if ($path = $this->{'find'.$method}($name))
            {
                return $path;
            }
        }

        throw new AssetNotFoundException;
    }