protected function buildRecorder(Recorder $recorder = null)
    {
        $class = config('lern.record.class');
        $class = !empty($class) ? $class : Recorder::class;
        if (empty($recorder)) {
            $recorder = new $class();
        }
        if ($recorder instanceof Recorder) {
            return $recorder;
        } else {
            throw new RecorderFailedException("LERN was expecting an instance of ".Recorder::class);
        }
    }