<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _parseResource(name, value):
 """ Parse a Toil job's resource requirement value and apply resource-specific type checks. If the value is a string, a binary or metric unit prefix in it will be evaluated and the corresponding integral value will be returned. :param str name: The name of the resource :param None|str|float|int value: The resource value :rtype: int|float|None Job._parseResource('memory', 1) (1, 1, 1) Job._parseResource('memory', '1G') (1073741824, 1073741824, 1073741824) 1.1 Traceback (most recent call last):
 TypeError: The 'disk' requirement does not accept values that are of <type 'float'> Traceback (most recent call last):
 """

        assert name in ('memory', 'disk', 'cores')
        if value is None:
            return value
        elif isinstance(value, (str, bytes)):
            value = human2bytes(value)
        if isinstance(value, int):
            return value
        elif isinstance(value, float) and name == 'cores':
            return value
        else:
            raise TypeError("The '%s' requirement does not accept values that are of %s"
                            % (name, type(value)))