code: def script(self, **kwargs):
          
          ubq = self._clone()
          if ubq._script:
              ubq._script = {}
          ubq._script.update(kwargs)
          return ubq
docs: Define update action to take:
          https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-scripting-using.html
          for more details.
  
          Note: the API only accepts a single script, so calling the script multiple times will overwrite.
  
          Example::
  
              ubq = Search()
              ubq = ubq.script(source="ctx._source.likes++"")
              ubq = ubq.script(source="ctx._source.likes += params.f"",
                           lang="expression",
                           params={'f': 3})