import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        try (Scanner sc = new Scanner(System.in);) {
            solve(sc);
        }
    }

    public static void solve(Scanner sc) {
        char[] aHand = sc.nextLine().toCharArray();
        char[] bHand = sc.nextLine().toCharArray();
        char[] cHand = sc.nextLine().toCharArray();
        int a = 0;
        int b = 0;
        int c = 0;

        int next = aHand[a];
        a++;

        while (true) {
            switch (next) {
            case 'a':
                if (aHand.length <= a) {
                    System.out.println("A");
                    return;
                }
                break;
            case 'b':
                if (bHand.length <= b) {
                    System.out.println("B");
                    return;
                }
                break;
            case 'c':
                if (cHand.length <= c) {
                    System.out.println("C");
                    return;
                }
                break;
            }

            switch (next) {
            case 'a':
                next = aHand[a];
                a++;
                break;
            case 'b':
                next = bHand[b];
                b++;
                break;
            case 'c':
                next = cHand[c];
                c++;
                break;
            }
        }
    }
}
/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz