I have a function - 

```
def add(a, b):
   return a+b

```

Now I want it to add 100 to the result using a decorator such that - 

```
@decorator(100)
def add(a, b):
    return (a+b)

class decorator():
    def __init__(self, c):
        self.c = c

    def __call__(self, f):
        def _wrapped_f(a, b):
            return self.c + f(a, b)
        return _wrapped_f

```

The problem is when I want to keep the extra argument variable and not fixed to 100.

Something like - 

```
@decorator(c)
    def add(a, b):
        return (a+b)

```

Can I somehow assign the value of this variable during the function call. (when add function is called)
The reason I want to do this using a decorator is because I don't want to modify my function add. 

I cannot afford an extra parameter in function something like - 

```
def(a, b, c=0):
    return (a+b+c)

```

Hence, the need of the decorator.