protected function compileInternal($templateFile, array $providers = array(), array $properties = array())
    {
        $providers = array_merge($this->providers, $providers);
        $templateData = !empty($providers) ? $this->runProviders($providers, $properties) : array();
        return $this->compileTemplate($templateFile, $templateData);
    }