<?php
namespace Claromentis\Core\CDN;

$GLOBALS["__65da1b1ec" . "2d6653e8a0a" . "b7848e53621" . "5"] = (@$GLOBALS["__65da1b1ec2d6653e8a0ab7848e5362" . "15"] ?: array()) + array("_9dae801c9b9abd5fc4454bf4" . "9f667821" => base64_decode("TG9jYWwgQ0ROIG1pcnJvciBw" . "YXRoICc="), "_3cdaa5f8cd53786b32" . "9b5e7bc5849f1a" => base64_decode("L2Fw" . "cGRh" . "dGE="), "_6bf19ac66af25b2e2dab6bd4" . "e14c324d" => base64_decode("aXNfZGl" . "y"), "_70147a09" . "03c6a865d" . "a2610f7b1" . "fa0ed5" => base64_decode("JyBjb3VsZC" . "Bub3QgYmUg" . "Zm91bmQ="));
use ClaCache;
use Claromentis\Core\Services;
use Pimple\Container;




class Factory
{
    
    
    
    
    
    
    protected Container $container;
    
    
    
    
    
    
    protected string $container_prefix;
    
    
    
    
    
    
    protected string $local_mirror_path;
    
    
    
    
    
    
    
    
    public function __construct(Container $_5e4594441b0e531bfd6f0011e0327611, string $_16823ec2a474adfe72e617b62aa5f7dd, string $_b443d96aa6f2cda506b73a17adbaf990)
    {
        $this->container = $_5e4594441b0e531bfd6f0011e0327611;
        $this->container_prefix = $_16823ec2a474adfe72e617b62aa5f7dd;
        $this->local_mirror_path = $_b443d96aa6f2cda506b73a17adbaf990;
    }
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    public function Create(string $name)
    {
        $_07be4c171e830eba6e63748a53fb4d8b = $this->container_prefix . $name;
        if (!isset($this->container[$_07be4c171e830eba6e63748a53fb4d8b])) {
            throw CDNConfigurationException::unknownType($name);
        }
        
        
        
        
        $_fee64623e267830531765c6712d0f041 = $this->container[$this->container_prefix . $name];
        if (!$_fee64623e267830531765c6712d0f041 || !$_fee64623e267830531765c6712d0f041 instanceof CDNInterfaceSimple) {
            throw CDNConfigurationException::unknownType($name);
        }
        
        
        if (!$_fee64623e267830531765c6712d0f041 instanceof Local && !$_fee64623e267830531765c6712d0f041 instanceof FilesystemCDN) {
            if (!$GLOBALS["__65da1b1e" . "c2d6653e8a" . "0ab7848e53" . "6215"]["_6bf19ac66af25b2e2dab6bd4e1" . "4c324d"]($this->local_mirror_path)) {
                throw new CDNConfigurationException($GLOBALS["__65da1b1ec2d6653e8a0ab7848e53" . "6215"]["_9dae801c9b" . "9abd5fc4454" . "bf49f667821"] . $this->local_mirror_path . $GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"]["_70147a0903c6a865da2610f7b1fa" . "0ed5"]);
            }
            return new Mirror(new Local($this->local_mirror_path, $GLOBALS["__65da1b1ec2d6653e8a0ab7" . "848e536215"]["_3cdaa5f" . "8cd53786" . "b329b5e7" . "bc5849f1" . "a"]), new DbCache($_fee64623e267830531765c6712d0f041, Services::I()->GetDb(), ClaCache::I(ClaCache::MEMORY)));
        }
        return $_fee64623e267830531765c6712d0f041;
    }
}