Refactored to use $self->config instead of $self->{_config}