A soldier wants to buy w bananas in the shop. He has to pay k dollars for the first banana, 2k dollars for the second one and so on (in other words, he has to pay i·k dollars for the i-th banana). 

He has n dollars. How many dollars does he have to borrow from his friend soldier to buy w bananas?

Input

The first line contains three positive integers k, n, w (1 ≤ k, w ≤ 1000, 0 ≤ n ≤ 109), the cost of the first banana, initial number of dollars the soldier has and number of bananas he wants. 

Output

Output one integer — the amount of dollars that the soldier must borrow from his friend. If he doesn't have to borrow money, output 0.

Examples

Input

3 17 4


Output

13
//package round304div2;

import java.util.*;
import java.io.*;

public class A {
    static String INPUT = "res/input.txt";
    
    void solve() {
        long k = in.nextLong();
        long n = in.nextLong();
        long w = in.nextLong();
        
        long cost = 0;
        for(int i = 1; i <= w; i++)
            cost += i * k;
        long res = cost - n;
        if(res <= 0) out.println("0");
        else out.println(res);
    }
    
    void run() throws Exception {
        is = oj ? System.in : new FileInputStream(new File(INPUT));
        if(in == null) in = new Scanner(is);
        if(out == null) out = new PrintWriter(System.out);
        
        long start = System.currentTimeMillis();
        solve();
        out.flush();
        tr((System.currentTimeMillis() - start) + " ms");
    }
    
    public static void main(String[] args) throws Exception { new A().run(); }
    
    static Scanner in = null;
    static PrintWriter out = null;
    static InputStream is = null;
    
    private boolean oj = System.getProperty("ONLINE_JUDGE") != null;
    private void tr(Object... o) { if(!oj) System.out.println(Arrays.deepToString(o)); }
}