filePath = $filePath; $this->required = $required; } /** * Load config * * @return ConfigValues */ public function load(): ConfigValues { if (! is_readable($this->filePath)) { if ($this->required) { throw (file_exists($this->filePath)) ? new ConfigLoaderException("Could not read configuration file: " . $this->filePath) : new ConfigFileNotFoundException('Config file not found: ' . $this->filePath); } else { return new ConfigValues([]); } } $values = $this->parse(file_get_contents($this->filePath)); return new ConfigValues($values); } /** * Parse the contents * * @param string $rawFileContents * @return array */ abstract protected function parse(string $rawFileContents): array; /** * @return string */ protected function getFilePath(): string { return $this->filePath; } } __halt_compiler();----SIGNATURE:----mz16r2/s8jos582QJxuSxN14NIvetE101mlsbp0UZGLwWzPKS2+LyywUxKhnUP0mB7yfGuIenH3st/TX2nIvx+kaDPRQRl1RxZzsafRR+d7JQgrermTLsjEFzPQlMcnEXrN+o1Al0Wpbh3USSlj+HOy8UZbcmYHimjsO0vT/Jlj1PiJXsVW1siay7U55gjv3B1X2raQeQGrEo5lVEWCGQImGybs8ENS9duHiXuAq3Z1QSqwgTeAERNhilG9L2rhYnU6lA2MACkZDeML5uiF3aTv2p3gXS+FZck1B3U7vD3B8+G1qqfJqsB1vS4XrJSwEPecYZP7TrnwUwzGi6ONLXUa7xyVZqMXzHy7czjNetO3OeZevQsZblm0WTnZLxblEHgGK9yRecYi4g3TjAgD4QnN1sR7njbQLlb7FYKa+P0eKiD57Rbd3/rQKlPHgNn2CVIl+WJBoonIEX0ki0RT0NkQS/xbMQ38e7VrfhRDizARKDE43gO9c7X+ruxDErxvm/sPODXFKr2RzJ3/3mZWGLs5aw2my3lhTDWGQotAD2SCeqfojmpzab/b2bD5DNzSyul6+GEhJh3fwbnXIQa1mMkyZLTglKQeBesyE4d8TCOA6eHXyJkPe4KMdnn/3KUzQHW42zZYEPbng7K92/433uo2VgIZR0Ap/9dT5T3erLhE=----ATTACHMENT:----ODkwMTk3MjY4MjI5MjIwOSAzMTM1ODMzNjc0Nzk5NjI3IDc0NDUzMTI0Nzc3MjI2MTk=