# The __add__ method

**__add__**(self, other)

These methods are called to implement the binary arithmetic operations
(`+`

, `-`

, `\*`

, `//`

, `%`

, divmod(), pow(), `\*\*`

, `<``<`

, `
>``>`

, `&`

, `^`

, `|`

). For instance, to evaluate the
expression x`+`

y, where x is an instance of a class that has an
**__add__** method, `x.\_\_add\_\_(y)`

is called. The
**__divmod__** method should be the equivalent to using
**__floordiv__** and **__mod__**; it should not be related to
**__truediv__** (described below). Note that **__pow__** should be
defined to accept an optional third argument if the ternary version of
the built-in **pow** function is to be supported.