<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_benchmarker(endpoint: str = None, timeout: float = 10):
 """ Retrieve an instance of the appropriate AbstractBenchmarker subclass for a given endpoint. :param endpoint: Benchmarking sequence server address. Defaults to the setting in the user's pyQuil config. :param timeout: Number of seconds to wait before giving up on a call. :return: Instance of an AbstractBenchmarker subclass, connected to the given endpoint. """

    if endpoint is None:
        config = PyquilConfig()
        endpoint = config.quilc_url

    return BenchmarkConnection(endpoint=endpoint, timeout=timeout)