<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(self, property_name=None, environment_variable=None, configuration_option=None, default=None):
 """ Internal shortcut to get a configuration option's value. :param property_name: The name of the property that users can set on the :class:`Config` class (a string). :param environment_variable: The name of the environment variable (a string). :param configuration_option: The name of the option in the configuration file (a string). :param default: The default value. :returns: The value of the environment variable or configuration file option or the default value. """

        if self.overrides.get(property_name) is not None:
            return self.overrides[property_name]
        elif environment_variable and self.environment.get(environment_variable):
            return self.environment[environment_variable]
        elif self.configuration.get(configuration_option) is not None:
            return self.configuration[configuration_option]
        else:
            return default