protected function initialize(InputInterface $input, OutputInterface $output)
    {
        try
        {
            $this->input  = $input;
            $this->output = $output;
            $this->style  = new SymfonyStyle($input, $output);

            $file = new \SplFileInfo($this->getOption('env'));
            // Create an environment instance
            $this->env = new Dotenv(
                $file->getPathInfo()->getRealPath(),
                $file->getFilename()
            );

            $this->env->load();
            $this->env->required(['BASEPATH','APPPATH'])->notEmpty();
        }
        catch (Exception $e)
        {
            throw new \RuntimeException($e->getMessage());
        }

    }