public function render(
        string $format = 'actual',
        string $before = '',
        string $after = ''
    ): string {
        $format_allowed = ['actual', 'difference', 'mixed'];
        $format = \in_array($format, $format_allowed) ? $format : 'actual';

        $method = "render_{$format}";

        if (!\is_callable([$this, $method])) {
            return '';
        }

        $time_ago = '';

        if ($before) {
            $time_ago .= '<span class="before">'.$before.'</span> ';
        }

        $time_ago .= $this->$method();

        if ($after) {
            $time_ago .= ' <span class="after">'.$after.'</span>';
        }

        return $time_ago;
    }