<?php
namespace Claromentis\Mailgun;

$GLOBALS["__65da1b1ec2d6653e8a0ab7848e" . "536215"] = (@$GLOBALS["__65da1b1ec2d6653e8" . "a0ab7848e536215"] ?: array()) + array("_ebb0fc48c5044fcdf4ff11de1b3" . "abe07" => base64_decode("bWFpbGd1bi5sb2" . "dnZXI="), "_c7a35cdd" . "863753e83" . "240fbb3e7" . "32a6b7" => base64_decode("bm9uZQ=" . "="), "_0995370913cd4" . "4391d39fdba6ce" . "206c0" => base64_decode("bG9jYWxpemF0aW9uLmRvbWFpbl9mcm9tX2ZpbGVzX2ZhY3Rvcn" . "k="), "_92b9ae7815960caefa1" . "b42b16a599ea5" => base64_decode("bWFpbGd1bi51c2VfY2FzZS52YWxpZGF" . "0ZV9pbmNvbWluZw=="), "_04c851ced65682f1411090dee" . "7ada43b" => base64_decode("cm" . "Vz" . "dA" . "=="), "_12dc001a" . "9ad5eec9b" . "02198f903" . "676641" => base64_decode("bG9jYWxpemF0aW9uLmRvbW" . "Fpbi4="), "_89b48cb97d07bba6095d1f1399d7ec" . "96" => base64_decode("L21ha" . "WxndW" . "4vdjA" . "="), "_4d4b52c0d63f25377012a294f" . "f3e52e3" => base64_decode("L3JlY2Vp" . "dmU="), "_fc12f2ed" . "65e8a7cea" . "c29e167ce" . "5b6830" => base64_decode("bWFpbGd1" . "bg=="), "_bdade8544d16a83f1bc9c" . "4121e6d64de" => base64_decode("L21haWxnd" . "W4vdjE="), "_c056775f03d6e2aeeb0388" . "312dc4170e" => base64_decode("bWFpbGd1bi5yZX" . "Bvc2l0b3J5"), "_2036db3c016e1792df" . "64c51e9c8c2bca" => base64_decode("OjpPblJlY2VpdmVkV2ViaG9vaw=" . "="));
use Claromentis\Core\Application;
use Claromentis\Core\REST\RestServiceInterface;
use Claromentis\Mailgun\Controller\RestV1;
use Claromentis\Mailgun\Repository\MailgunRepository;
use Pimple\Container;
use Pimple\ServiceProviderInterface;




class MailgunApplication implements ServiceProviderInterface, RestServiceInterface
{
    public const NAME = 'mailgun';
    
    
    
    
    
    
    
    
    
    public function register(\Pimple\Container $app)
    {
        $app[$GLOBALS["__65da1b1ec2d6653e8a0a" . "b7848e536215"]["_ebb0fc48c504" . "4fcdf4ff11de1" . "b3abe07"]] = function ($app) {
            
            
            return $app->GetLogger($GLOBALS["__65da1b1" . "ec2d6653e" . "8a0ab7848" . "e536215"]["_fc12f2ed65e8a7ceac29e167ce5b683" . "0"]);
        };
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848e53" . "6215"]["_c056775f03d6e2aeeb0388312dc" . "4170e"]] = function ($app) {
            return new Repository\MailgunRepository($app->db);
        };
        $app[$GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"]["_92b9ae7815960caefa" . "1b42b16a599ea5"]] = function ($app) {
            
            
            $repository = $app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848e" . "536215"]["_c056775f0" . "3d6e2aeeb0" . "388312dc41" . "70e"]];
            return new UseCase\ValidateIncomingMessage($repository, $repository->GetApiKey());
        };
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab784" . "8e536215"]["_12dc001a9ad5eec9b02198" . "f903676641"] . self::NAME] = function ($app) {
            return $app[$GLOBALS["__65da1b1ec2d665" . "3e8a0ab7848e5362" . "15"]["_0995370913" . "cd44391d39f" . "dba6ce206c0"]](self::NAME);
        };
    }
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    public function GetRestRoutes(Application $app)
    {
        return [
            $GLOBALS["__65da1b1ec2d6653e8a0ab7848e5" . "36215"]["_89b48cb9" . "7d07bba60" . "95d1f1399" . "d7ec96"] => $GLOBALS["__65da1b1ec2d6653e8a0ab7848" . "e536215"]["_bdade8544d16a83f1bc9c" . "4121e6d64de"],
            
            
            $GLOBALS["__65da1b1ec2d6653e8a0ab7848e536" . "215"]["_bdade8544d16a83f1b" . "c9c4121e6d64de"] => function (\Claromentis\Core\ControllerCollection $_6c20f4873f12c6bcced6c1dda9a06b86) {
                $_6c20f4873f12c6bcced6c1dda9a06b86->post($GLOBALS["__65da1b1" . "ec2d6653e" . "8a0ab7848" . "e536215"]["_4d4b52c0d63f" . "25377012a294f" . "f3e52e3"], RestV1::class . $GLOBALS["__65da1b1ec2d6653e" . "8a0ab7848e536215"]["_2036db3c016" . "e1792df64c51" . "e9c8c2bca"])->secure($GLOBALS["__65da1b1ec2d6653" . "e8a0ab7848e536215"]["_04c851ced65682" . "f1411090dee7ada" . "43b"], $GLOBALS["__65da1b1" . "ec2d6653e" . "8a0ab7848" . "e536215"]["_c7a35cdd863753e83" . "240fbb3e732a6b7"]);
            },
        ];
    }
}