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:----UWDzONnwpnHIJn2ucO/n3SOnRjp0kaWjTZkrIlcOMMBKxVaETteVmFLkdd4K9VXUUY/LyPCZu1SsZeGpiHB056aLPLnddQeONObysbRhRnmJPW2z4/bTHMdWypJuCJ3mA69XW9JWgZBfduE3YNpbQ7JcprnCQiMFct3yiGjU3BeLezzSDR3JZdh+nF/AnRyzrq5+SAe4B+TMJruwTB5+fGdIxFfqK02Tw7mmU2HChaTqgWKPo+qxg2WzlfSw7toQW8EIBqN8UYpSeUitbVKoAr8cdeAWtSr9GArHWQRf2ypqB7+xbyyuxGDoO7l1MAMXzcg02NZOTvCYg5+YQ6szdgQKDHNfPZp68vYl1CX8whMUWcwI5XP63RiqETnCjG6IDhkvwTuBY9VGf2J3l5sLeLRxPey0rQY7HoBDKz0zlAkC2EYDGFS2p0DWZtmlgFJu8kEqYYIQvlxWLGrv5zxJqBaTO8fXwpeqjL7rS0ssf9VmZY6gfYlPLaDlp17/0aCMTh6CjhtPCHl6vI17lwcQQM2GuvjdNUhvaG23xzbkqXeWr91ghJhstFYd8AUYr+gfKvYrX1PO0KPyKgU4rryCBMAxPd1itruVEFR6YaQghMzYuYRDZZ6ibKgpgZPg1Q7AGMKMw6RiQpqNNSWeB2bOykAa1BxJQUdHNFgRNcbEt7M=----ATTACHMENT:----NTE4MzkwOTE0NzQ5NzA2NCA3NDUyMjcxOTEyNzg2NzM1IDYwNzkxODc1NTQxNDQxNDE=