#NEWLINE# def boost( self , **kw ) : #NEWLINE# #INDENT# "\n        Return a new S instance with field boosts.\n\n        ElasticUtils allows you to specify query-time field boosts\n        with ``.boost()``. It takes a set of arguments where the keys\n        are either field names or field name + ``__`` + field action.\n\n        Examples::\n\n            q = (S().query(title='taco trucks',\n                           description__match='awesome')\n                    .boost(title=4.0, description__match=2.0))\n\n\n        If the key is a field name, then the boost will apply to all\n        query bits that have that field name. For example::\n\n            q = (S().query(title='trucks',\n                           title__prefix='trucks',\n                           title__fuzzy='trucks')\n                    .boost(title=4.0))\n\n\n        applies a 4.0 boost to all three query bits because all three\n        query bits are for the title field name.\n\n        If the key is a field name and field action, then the boost\n        will apply only to that field name and field action. For\n        example::\n\n            q = (S().query(title='trucks',\n                           title__prefix='trucks',\n                           title__fuzzy='trucks')\n                    .boost(title__prefix=4.0))\n\n\n        will only apply the 4.0 boost to title__prefix.\n\n        Boosts are relative to one another and all boosts default to\n        1.0.\n\n        For example, if you had::\n\n            qs = (S().boost(title=4.0, summary=2.0)\n                     .query(title__match=value,\n                            summary__match=value,\n                            content__match=value,\n                            should=True))\n\n\n        ``title__match`` would be boosted twice as much as\n        ``summary__match`` and ``summary__match`` twice as much as\n        ``content__match``.\n\n        " #NEWLINE# new = self . _clone ( ) #NEWLINE# new . field_boosts . update ( self ) #NEWLINE# return new