@classmethod
def _coerce_type(cls, value):
    """Convert value to int, float, or bool, if possible."""
    try:
        val = int(value)
    except ValueError:
        try:
            val = float(value)
        except ValueError:
            if value == 'False':
                val = False
            elif value == 'True':
                val = True
            else:
                val = cls.strip_and_unquote([], value)
    return val
