implementing config parsing