async def container(self, container=None, container_type=None, params=None, obj=None):
        """
        Loads/dumps container
        :return:
        """
        if hasattr(container_type, 'kv_serialize'):
            container = container_type() if container is None else container
            return await container.kv_serialize(self, elem=container, elem_type=container_type, params=params, obj=obj)

        # Container entry version + container
        if self.writing:
            return await self.container_dump(container, container_type, params, obj=obj)
        else:
            return await self.container_load(container_type, params=params, container=container, obj=obj)