<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_bool(self, key, default=UndefinedKey):
 """Return boolean representation of value found at key :param key: key to use (dot separated). E.g., a.b.c :type key: basestring :param default: default value if key not found :type default: bool :return: boolean value :type return: bool """


        # String conversions as per API-recommendations:
        # https://github.com/typesafehub/config/blob/master/HOCON.md#automatic-type-conversions
        bool_conversions = {
            None: None,
            'true': True, 'yes': True, 'on': True,
            'false': False, 'no': False, 'off': False
        }
        string_value = self.get_string(key, default)
        if string_value is not None:
            string_value = string_value.lower()
        try:
            return bool_conversions[string_value]
        except KeyError:
            raise ConfigException(
                u"{key} does not translate to a Boolean value".format(key=key))