<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def create(self, data, update=False, **kwargs):
 """ Creates a new object pretreated input data. .. code-block:: python DBSession.sacrud(Users).create({'name': 'Vasya', 'sex': 1}) Support JSON: .. code-block:: python DBSession.sacrud(Users).create('{"name": "Vasya", "sex": 1}') For adding multiple data for m2m or m2o use endinng `[]`, ex.: .. code-block:: python DBSession.sacrud(Users).create( {'name': 'Vasya', 'sex': 1, 'groups[]': ['["id", 1]', '["id", 2]']} ) """

        data = unjson(data)

        if update is True:
            obj = get_obj_by_request_data(self.session, self.table, data)
        else:
            obj = None
        return self._add(obj, data, **kwargs)