import java.util.Scanner;

class Main {

    public static void main(String[] args) {
	Scanner sc = new Scanner(System.in);

	long A, B;

	A = sc.nextLong();
	B = sc.nextLong();

        if ((A - B) % 2 == 0) {
	    long C = A - B;
	    if (C < 0) {
		C *= -1;
		System.out.println((C / 2) + A);
	    } else {
		System.out.println((C / 2) + B);
	    }
	} else {
	    System.out.println("IMPOSSIBLE");
	}
    }
} import java.util.Scanner; Scanner java.util class Main {

    public static void main(String[] args) {
	Scanner sc = new Scanner(System.in);

	long A, B;

	A = sc.nextLong();
	B = sc.nextLong();

        if ((A - B) % 2 == 0) {
	    long C = A - B;
	    if (C < 0) {
		C *= -1;
		System.out.println((C / 2) + A);
	    } else {
		System.out.println((C / 2) + B);
	    }
	} else {
	    System.out.println("IMPOSSIBLE");
	}
    }
} Main public static void main(String[] args) {
	Scanner sc = new Scanner(System.in);

	long A, B;

	A = sc.nextLong();
	B = sc.nextLong();

        if ((A - B) % 2 == 0) {
	    long C = A - B;
	    if (C < 0) {
		C *= -1;
		System.out.println((C / 2) + A);
	    } else {
		System.out.println((C / 2) + B);
	    }
	} else {
	    System.out.println("IMPOSSIBLE");
	}
    } main {
	Scanner sc = new Scanner(System.in);

	long A, B;

	A = sc.nextLong();
	B = sc.nextLong();

        if ((A - B) % 2 == 0) {
	    long C = A - B;
	    if (C < 0) {
		C *= -1;
		System.out.println((C / 2) + A);
	    } else {
		System.out.println((C / 2) + B);
	    }
	} else {
	    System.out.println("IMPOSSIBLE");
	}
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) long A A B; B A = sc.nextLong() A sc.nextLong() sc.nextLong sc B = sc.nextLong() B sc.nextLong() sc.nextLong sc if ((A - B) % 2 == 0) {
	    long C = A - B;
	    if (C < 0) {
		C *= -1;
		System.out.println((C / 2) + A);
	    } else {
		System.out.println((C / 2) + B);
	    }
	} else {
	    System.out.println("IMPOSSIBLE");
	} (A - B) % 2 == 0 (A - B) % 2 (A - B) A B 2 0 {
	    long C = A - B;
	    if (C < 0) {
		C *= -1;
		System.out.println((C / 2) + A);
	    } else {
		System.out.println((C / 2) + B);
	    }
	} long C = A - B; C A - B A B if (C < 0) {
		C *= -1;
		System.out.println((C / 2) + A);
	    } else {
		System.out.println((C / 2) + B);
	    } C < 0 C 0 {
		C *= -1;
		System.out.println((C / 2) + A);
	    } C *= -1 C -1 1 System.out.println((C / 2) + A) System.out.println System.out System System.out (C / 2) + A (C / 2) C 2 A {
		System.out.println((C / 2) + B);
	    } System.out.println((C / 2) + B) System.out.println System.out System System.out (C / 2) + B (C / 2) C 2 B {
	    System.out.println("IMPOSSIBLE");
	} System.out.println("IMPOSSIBLE") System.out.println System.out System System.out "IMPOSSIBLE" String[] args args
import java.util.Scanner;

class Main {

    public static void main(String[] args) {
	Scanner sc = new Scanner(System.in);

	long A, B;

	A = sc.nextLong();
	B = sc.nextLong();

        if ((A - B) % 2 == 0) {
	    long C = A - B;
	    if (C < 0) {
		C *= -1;
		System.out.println((C / 2) + A);
	    } else {
		System.out.println((C / 2) + B);
	    }
	} else {
	    System.out.println("IMPOSSIBLE");
	}
    }
}