<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def merge(self, other):
 """ Merges the values """

        print "MERGING", self, other
        other = self.coerce(other)
        if self.is_contradictory(other):
            raise Contradiction("Cannot merge %s and %s" % (self, other))
        elif self.value is None and not other.value is None:
            self.r, self.g, self.b = other.r, other.g, other.b
            self.value = RGBColor(self.r, self.b, self.g, rgb_type='sRGB')
        # last cases:  other is none, or both are none 
        
        return self