@property
def return_type(self):
    if (self._return_type is None):
        return get_type(self.func)[0]
    else:
        return self._return_type
@property
def return_type(self):
    if (self._return_type is None):
        return get_type(self.func)[0]
    else:
        return self._return_type