Fox Ciel has some flowers: r red flowers, g green flowers and b blue flowers. She wants to use these flowers to make several bouquets. There are 4 types of bouquets:

  * To make a "red bouquet", it needs 3 red flowers. 
  * To make a "green bouquet", it needs 3 green flowers. 
  * To make a "blue bouquet", it needs 3 blue flowers. 
  * To make a "mixing bouquet", it needs 1 red, 1 green and 1 blue flower. 



Help Fox Ciel to find the maximal number of bouquets she can make.

Input

The first line contains three integers r, g and b (0 ≤ r, g, b ≤ 109) — the number of red, green and blue flowers.

Output

Print the maximal number of bouquets Fox Ciel can make.

Examples

Input

3 6 9


Output

6


Input

4 4 4


Output

4


Input

0 0 0


Output

0

Note

In test case 1, we can make 1 red bouquet, 2 green bouquets and 3 blue bouquets.

In test case 2, we can make 1 red, 1 green, 1 blue and 1 mixing bouquet.
import java.util.Scanner;

/**
 *
 * @author mina
 */
public class B {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int r = sc.nextInt();
        int g = sc.nextInt();
        int b = sc.nextInt();
        int total = 0, total1 = 0,total2=0,total3=0,r1=r,b1=b,g1=g;
        int min = Math.min(r, b);
        min = Math.min(min, g);
        r -= min;
        b -= min;
        g -= min;
        total += min;
        total = r / 3 + b / 3 + g / 3 + total ;
        //
        r=r1;b=b1;g=g1;
        total1=r/3+b/3+g/3;
        r=r%3;b=b%3;g=g%3;
total2=total1;
min = Math.min(r, b);
        min = Math.min(min, g);
        r -= min;
        b -= min;
        g -= min;
        total2 = min + total2;
                r=r1;b=b1;g=g1;
        if(r<=b && r<=g){
            total3= b/3+g/3;
            b=b%3;g=g%3;
         min=Math.min(r, b);
         min=Math.min(min, g);
         r-=min;
         total3 =min + total3 + r/3;
        }else if(g<=r && g<=b){
              total3=r/3+b/3;
            b=b%3;r=r%3;
         min=Math.min(r, b);
         min=Math.min(min, g);
         g-=min;
         total3=min + total3 +g/3;
        }else{
             total3=r/3+g/3;
            r=r%3;g=g%3;
         min=Math.min(r, b);
         min=Math.min(min, g);
         b-=min;
         total3 =min + total3 + r/3; 
        }
int answer=0;
answer=Math.max(total,total1);
answer=Math.max(answer,total2);
answer=Math.max(answer, total3);
System.out.println(answer);

    }
}
