99 100 100 100 100
 57 83 11 4 93
 99 99 99 99 99
 100 0 0 0 0
 0 1 2 3 4
 93 100 99 90 98
 87 38 19 33 100
 1 1 1 1 1
 0 0 0 0 1
 2 3 4 5 6
 1 2 1 2 3
 0 0 0 0 0
 100 100 100 100 100
 43 83 1 0 23
 43 83 1 100 23
 56 0 0 0 4
 99 98 98 99 100

-1
 -1
 99
 20
 2
 96
 -1
 1
 -1
 4
 -1
 -1
 100
 30
 50
 12
 -1

import java.util.Scanner;

import javax.swing.plaf.synth.SynthSeparatorUI;
public class A_478 {
	private static Scanner tec = new Scanner(System.in);
	public static void main(String[] args) {
		int [] a = new int[5];
		for(int i = 0; i < a.length; i++)
			a[i] = tec.nextInt();
		ordenamiento(a);
		
		boolean p = true;
		while (p)
		{
			int c = 0;
			for(int i = 0; i < a.length - 1; i++)
				if (a[i] > a[i+1])
				{
					a[i]--;
					a[i+1]++;
					c++;
				}
			if (c == 0)
				p = false;
		}
		
		boolean o = true;
		
		for(int i = 0; i < a.length - 1; i++)
			if (a[i] != a[i + 1])
				o = false;
		if (o)
			System.out.println(a[0]);
		else
			System.out.println("-1");
	}
	static void ordenamiento(int [] a)
	{
		int temporal;
		boolean p = true;
		while (p)
		{
			int c = 0;
			for(int i = 0; i < a.length - 1; i++)
				if (a[i] < a[i+1])
				{
					temporal = a[i];
					a[i] = a[i+1];
					a[i+1] = temporal;
					c++;
				}
			if (c == 0)
				p = false;
		}
	}

}
