<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def set_icc_profile(self, profile=None, name='ICC Profile'):
 """ Add ICC Profile. Prefered way is tuple (`profile_name`, `profile_bytes`), but only bytes with name as separate argument is also supported. """

        if isinstance(profile, (basestring, bytes)):
            icc_profile = [name, profile]
        # TODO: more check
        else:
            icc_profile = profile

        if not icc_profile[0]:
            raise Error("ICC profile should have a name")
        elif not isinstance(icc_profile[0], bytes):
            icc_profile[0] = strtobytes(icc_profile[0])
        self.icc_profile = icc_profile