def __init__(self, *, parent=None, con=None, **kwargs):
if parent and con:<EOL><INDENT>raise ValueError('<STR_LIT>')<EOL><DEDENT>self.con = parent.con if parent else con<EOL>self.parent = parent if isinstance(parent, Folder) else None<EOL>self.root = kwargs.pop('<STR_LIT:root>', False)<EOL>main_resource = kwargs.pop('<STR_LIT>', None) or (<EOL>getattr(parent, '<STR_LIT>', None) if parent else None)<EOL>super().__init__(<EOL>protocol=parent.protocol if parent else kwargs.get('<STR_LIT>'),<EOL>main_resource=main_resource)<EOL>cloud_data = kwargs.get(self._cloud_data_key, {})<EOL>self.name = cloud_data.get(self._cc('<STR_LIT>'),<EOL>kwargs.get('<STR_LIT:name>',<EOL>'<STR_LIT>'))<EOL>if self.root is False:<EOL><INDENT>self.folder_id = cloud_data.get(self._cc('<STR_LIT:id>'),<EOL>kwargs.get('<STR_LIT>',<EOL>None))<EOL>self.parent_id = cloud_data.get(self._cc('<STR_LIT>'), None)<EOL>self.child_folders_count = cloud_data.get(<EOL>self._cc('<STR_LIT>'), <NUM_LIT:0>)<EOL>self.unread_items_count = cloud_data.get(<EOL>self._cc('<STR_LIT>'), <NUM_LIT:0>)<EOL>self.total_items_count = cloud_data.get(self._cc('<STR_LIT>'),<EOL><NUM_LIT:0>)<EOL>self.updated_at = dt.datetime.now()<EOL><DEDENT>
Create an instance to represent the specified folder un given
        parent folder

        :param parent: parent folder/account for this folder
        :type parent: mailbox.Folder or Account
        :param Connection con: connection to use if no parent specified
        :param Protocol protocol: protocol to use if no parent specified
         (kwargs)
        :param str main_resource: use this resource instead of parent resource
         (kwargs)
        :param str name: name of the folder to get under the parent (kwargs)
        :param str folder_id: id of the folder to get under the parent (kwargs)