<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def copyWorkitem(self, copied_from, title=None, description=None, prefix=None):
 """Create a workitem by copying from an existing one :param copied_from: the to-be-copied workitem id :param title: the new workitem title/summary. If `None`, will copy that from a to-be-copied workitem :param description: the new workitem description. If `None`, will copy that from a to-be-copied workitem :param prefix: used to add a prefix to the copied title and description :return: the :class:`rtcclient.workitem.Workitem` object :rtype: rtcclient.workitem.Workitem """


        copied_wi = self.getWorkitem(copied_from)
        if title is None:
            title = copied_wi.title
            if prefix is not None:
                title = prefix + title

        if description is None:
            description = copied_wi.description
            if prefix is not None:
                description = prefix + description

        self.log.info("Start to create a new <Workitem>, copied from ",
                      "<Workitem %s>", copied_from)

        wi_url_post = "/".join([self.url,
                                "oslc/contexts/%s" % copied_wi.contextId,
                                "workitems",
                                "%s" % copied_wi.type.split("/")[-1]])
        wi_raw = self.templater.renderFromWorkitem(copied_from,
                                                   keep=True,
                                                   encoding="UTF-8",
                                                   title=title,
                                                   description=description)
        return self._createWorkitem(wi_url_post, wi_raw)