import java.util.*;


public class Main {
    public static void main(String[] args) {
        // 自分の得意な言語で
        // Let's チャレンジ！！

        Scanner sc = new Scanner(System.in);
        String line = sc.nextLine();
        String a[]=line.split("",0);
        ArrayList<String> as=new ArrayList<String>();
        for(int i=0;i<a.length;i++){
            as.add(a[i]);
        }
        line = sc.nextLine();
        String b[]=line.split("",0);
        ArrayList<String> bs=new ArrayList<String>();
        for(int i=0;i<b.length;i++){
            bs.add(b[i]);
        }
        line = sc.nextLine();
        String c[]=line.split("",0);
        ArrayList<String> cs=new ArrayList<String>();
        for(int i=0;i<c.length;i++){
            cs.add(c[i]);
        }
        String turn="a";
        boolean h=true;
        while (h){
            switch(turn){
                case "a":
                    if(as.size()==0){
                        turn="A";
                        h=false;
                    }
                    else{
                        turn=as.get(0);
                        as.remove(0);
                    }
                    break;
                case "b":
                    if(bs.size()==0){
                        turn="B";
                        h=false;
                    }
                    else{
                        turn=bs.get(0);
                        bs.remove(0);
                    }
                    break;
                case "c":
                    if(cs.size()==0){
                        turn="C";
                        h=false;
                    }
                    else{
                        turn=cs.get(0);
                        cs.remove(0);
                    }
                    break;
            }
        }
        System.out.println(turn);
    }
} import java.util.*; util.* java public class Main {
    public static void main(String[] args) {
        // 自分の得意な言語で
        // Let's チャレンジ！！

        Scanner sc = new Scanner(System.in);
        String line = sc.nextLine();
        String a[]=line.split("",0);
        ArrayList<String> as=new ArrayList<String>();
        for(int i=0;i<a.length;i++){
            as.add(a[i]);
        }
        line = sc.nextLine();
        String b[]=line.split("",0);
        ArrayList<String> bs=new ArrayList<String>();
        for(int i=0;i<b.length;i++){
            bs.add(b[i]);
        }
        line = sc.nextLine();
        String c[]=line.split("",0);
        ArrayList<String> cs=new ArrayList<String>();
        for(int i=0;i<c.length;i++){
            cs.add(c[i]);
        }
        String turn="a";
        boolean h=true;
        while (h){
            switch(turn){
                case "a":
                    if(as.size()==0){
                        turn="A";
                        h=false;
                    }
                    else{
                        turn=as.get(0);
                        as.remove(0);
                    }
                    break;
                case "b":
                    if(bs.size()==0){
                        turn="B";
                        h=false;
                    }
                    else{
                        turn=bs.get(0);
                        bs.remove(0);
                    }
                    break;
                case "c":
                    if(cs.size()==0){
                        turn="C";
                        h=false;
                    }
                    else{
                        turn=cs.get(0);
                        cs.remove(0);
                    }
                    break;
            }
        }
        System.out.println(turn);
    }
} Main public static void main(String[] args) {
        // 自分の得意な言語で
        // Let's チャレンジ！！

        Scanner sc = new Scanner(System.in);
        String line = sc.nextLine();
        String a[]=line.split("",0);
        ArrayList<String> as=new ArrayList<String>();
        for(int i=0;i<a.length;i++){
            as.add(a[i]);
        }
        line = sc.nextLine();
        String b[]=line.split("",0);
        ArrayList<String> bs=new ArrayList<String>();
        for(int i=0;i<b.length;i++){
            bs.add(b[i]);
        }
        line = sc.nextLine();
        String c[]=line.split("",0);
        ArrayList<String> cs=new ArrayList<String>();
        for(int i=0;i<c.length;i++){
            cs.add(c[i]);
        }
        String turn="a";
        boolean h=true;
        while (h){
            switch(turn){
                case "a":
                    if(as.size()==0){
                        turn="A";
                        h=false;
                    }
                    else{
                        turn=as.get(0);
                        as.remove(0);
                    }
                    break;
                case "b":
                    if(bs.size()==0){
                        turn="B";
                        h=false;
                    }
                    else{
                        turn=bs.get(0);
                        bs.remove(0);
                    }
                    break;
                case "c":
                    if(cs.size()==0){
                        turn="C";
                        h=false;
                    }
                    else{
                        turn=cs.get(0);
                        cs.remove(0);
                    }
                    break;
            }
        }
        System.out.println(turn);
    } main {
        // 自分の得意な言語で
        // Let's チャレンジ！！

        Scanner sc = new Scanner(System.in);
        String line = sc.nextLine();
        String a[]=line.split("",0);
        ArrayList<String> as=new ArrayList<String>();
        for(int i=0;i<a.length;i++){
            as.add(a[i]);
        }
        line = sc.nextLine();
        String b[]=line.split("",0);
        ArrayList<String> bs=new ArrayList<String>();
        for(int i=0;i<b.length;i++){
            bs.add(b[i]);
        }
        line = sc.nextLine();
        String c[]=line.split("",0);
        ArrayList<String> cs=new ArrayList<String>();
        for(int i=0;i<c.length;i++){
            cs.add(c[i]);
        }
        String turn="a";
        boolean h=true;
        while (h){
            switch(turn){
                case "a":
                    if(as.size()==0){
                        turn="A";
                        h=false;
                    }
                    else{
                        turn=as.get(0);
                        as.remove(0);
                    }
                    break;
                case "b":
                    if(bs.size()==0){
                        turn="B";
                        h=false;
                    }
                    else{
                        turn=bs.get(0);
                        bs.remove(0);
                    }
                    break;
                case "c":
                    if(cs.size()==0){
                        turn="C";
                        h=false;
                    }
                    else{
                        turn=cs.get(0);
                        cs.remove(0);
                    }
                    break;
            }
        }
        System.out.println(turn);
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) String line = sc.nextLine(); line sc.nextLine() sc.nextLine sc String a[]=line.split("",0); a line.split("",0) line.split line "" 0 ArrayList<String> as=new ArrayList<String>(); as new ArrayList<String>() for(int i=0;i<a.length;i++){
            as.add(a[i]);
        } int i=0; int i=0; i 0 i<a.length i a.length a a.length i++ i++ i {
            as.add(a[i]);
        } {
            as.add(a[i]);
        } as.add(a[i]) as.add as a[i] a i line = sc.nextLine() line sc.nextLine() sc.nextLine sc String b[]=line.split("",0); b line.split("",0) line.split line "" 0 ArrayList<String> bs=new ArrayList<String>(); bs new ArrayList<String>() for(int i=0;i<b.length;i++){
            bs.add(b[i]);
        } int i=0; int i=0; i 0 i<b.length i b.length b b.length i++ i++ i {
            bs.add(b[i]);
        } {
            bs.add(b[i]);
        } bs.add(b[i]) bs.add bs b[i] b i line = sc.nextLine() line sc.nextLine() sc.nextLine sc String c[]=line.split("",0); c line.split("",0) line.split line "" 0 ArrayList<String> cs=new ArrayList<String>(); cs new ArrayList<String>() for(int i=0;i<c.length;i++){
            cs.add(c[i]);
        } int i=0; int i=0; i 0 i<c.length i c.length c c.length i++ i++ i {
            cs.add(c[i]);
        } {
            cs.add(c[i]);
        } cs.add(c[i]) cs.add cs c[i] c i String turn="a"; turn "a" boolean h=true; h true while (h){
            switch(turn){
                case "a":
                    if(as.size()==0){
                        turn="A";
                        h=false;
                    }
                    else{
                        turn=as.get(0);
                        as.remove(0);
                    }
                    break;
                case "b":
                    if(bs.size()==0){
                        turn="B";
                        h=false;
                    }
                    else{
                        turn=bs.get(0);
                        bs.remove(0);
                    }
                    break;
                case "c":
                    if(cs.size()==0){
                        turn="C";
                        h=false;
                    }
                    else{
                        turn=cs.get(0);
                        cs.remove(0);
                    }
                    break;
            }
        } h {
            switch(turn){
                case "a":
                    if(as.size()==0){
                        turn="A";
                        h=false;
                    }
                    else{
                        turn=as.get(0);
                        as.remove(0);
                    }
                    break;
                case "b":
                    if(bs.size()==0){
                        turn="B";
                        h=false;
                    }
                    else{
                        turn=bs.get(0);
                        bs.remove(0);
                    }
                    break;
                case "c":
                    if(cs.size()==0){
                        turn="C";
                        h=false;
                    }
                    else{
                        turn=cs.get(0);
                        cs.remove(0);
                    }
                    break;
            }
        } switch(turn){
                case "a":
                    if(as.size()==0){
                        turn="A";
                        h=false;
                    }
                    else{
                        turn=as.get(0);
                        as.remove(0);
                    }
                    break;
                case "b":
                    if(bs.size()==0){
                        turn="B";
                        h=false;
                    }
                    else{
                        turn=bs.get(0);
                        bs.remove(0);
                    }
                    break;
                case "c":
                    if(cs.size()==0){
                        turn="C";
                        h=false;
                    }
                    else{
                        turn=cs.get(0);
                        cs.remove(0);
                    }
                    break;
            } turn case "a": "a" case "a": if(as.size()==0){
                        turn="A";
                        h=false;
                    }
                    else{
                        turn=as.get(0);
                        as.remove(0);
                    } as.size()==0 as.size() as.size as 0 {
                        turn="A";
                        h=false;
                    } turn="A" turn "A" h=false h false {
                        turn=as.get(0);
                        as.remove(0);
                    } turn=as.get(0) turn as.get(0) as.get as 0 as.remove(0) as.remove as 0 break; case "b": "b" case "b": if(bs.size()==0){
                        turn="B";
                        h=false;
                    }
                    else{
                        turn=bs.get(0);
                        bs.remove(0);
                    } bs.size()==0 bs.size() bs.size bs 0 {
                        turn="B";
                        h=false;
                    } turn="B" turn "B" h=false h false {
                        turn=bs.get(0);
                        bs.remove(0);
                    } turn=bs.get(0) turn bs.get(0) bs.get bs 0 bs.remove(0) bs.remove bs 0 break; case "c": "c" case "c": if(cs.size()==0){
                        turn="C";
                        h=false;
                    }
                    else{
                        turn=cs.get(0);
                        cs.remove(0);
                    } cs.size()==0 cs.size() cs.size cs 0 {
                        turn="C";
                        h=false;
                    } turn="C" turn "C" h=false h false {
                        turn=cs.get(0);
                        cs.remove(0);
                    } turn=cs.get(0) turn cs.get(0) cs.get cs 0 cs.remove(0) cs.remove cs 0 break; System.out.println(turn) System.out.println System.out System System.out turn String[] args args public class Main {
    public static void main(String[] args) {
        // 自分の得意な言語で
        // Let's チャレンジ！！

        Scanner sc = new Scanner(System.in);
        String line = sc.nextLine();
        String a[]=line.split("",0);
        ArrayList<String> as=new ArrayList<String>();
        for(int i=0;i<a.length;i++){
            as.add(a[i]);
        }
        line = sc.nextLine();
        String b[]=line.split("",0);
        ArrayList<String> bs=new ArrayList<String>();
        for(int i=0;i<b.length;i++){
            bs.add(b[i]);
        }
        line = sc.nextLine();
        String c[]=line.split("",0);
        ArrayList<String> cs=new ArrayList<String>();
        for(int i=0;i<c.length;i++){
            cs.add(c[i]);
        }
        String turn="a";
        boolean h=true;
        while (h){
            switch(turn){
                case "a":
                    if(as.size()==0){
                        turn="A";
                        h=false;
                    }
                    else{
                        turn=as.get(0);
                        as.remove(0);
                    }
                    break;
                case "b":
                    if(bs.size()==0){
                        turn="B";
                        h=false;
                    }
                    else{
                        turn=bs.get(0);
                        bs.remove(0);
                    }
                    break;
                case "c":
                    if(cs.size()==0){
                        turn="C";
                        h=false;
                    }
                    else{
                        turn=cs.get(0);
                        cs.remove(0);
                    }
                    break;
            }
        }
        System.out.println(turn);
    }
} public class Main {
    public static void main(String[] args) {
        // 自分の得意な言語で
        // Let's チャレンジ！！

        Scanner sc = new Scanner(System.in);
        String line = sc.nextLine();
        String a[]=line.split("",0);
        ArrayList<String> as=new ArrayList<String>();
        for(int i=0;i<a.length;i++){
            as.add(a[i]);
        }
        line = sc.nextLine();
        String b[]=line.split("",0);
        ArrayList<String> bs=new ArrayList<String>();
        for(int i=0;i<b.length;i++){
            bs.add(b[i]);
        }
        line = sc.nextLine();
        String c[]=line.split("",0);
        ArrayList<String> cs=new ArrayList<String>();
        for(int i=0;i<c.length;i++){
            cs.add(c[i]);
        }
        String turn="a";
        boolean h=true;
        while (h){
            switch(turn){
                case "a":
                    if(as.size()==0){
                        turn="A";
                        h=false;
                    }
                    else{
                        turn=as.get(0);
                        as.remove(0);
                    }
                    break;
                case "b":
                    if(bs.size()==0){
                        turn="B";
                        h=false;
                    }
                    else{
                        turn=bs.get(0);
                        bs.remove(0);
                    }
                    break;
                case "c":
                    if(cs.size()==0){
                        turn="C";
                        h=false;
                    }
                    else{
                        turn=cs.get(0);
                        cs.remove(0);
                    }
                    break;
            }
        }
        System.out.println(turn);
    }
} Main
import java.util.*;


public class Main {
    public static void main(String[] args) {
        // 自分の得意な言語で
        // Let's チャレンジ！！

        Scanner sc = new Scanner(System.in);
        String line = sc.nextLine();
        String a[]=line.split("",0);
        ArrayList<String> as=new ArrayList<String>();
        for(int i=0;i<a.length;i++){
            as.add(a[i]);
        }
        line = sc.nextLine();
        String b[]=line.split("",0);
        ArrayList<String> bs=new ArrayList<String>();
        for(int i=0;i<b.length;i++){
            bs.add(b[i]);
        }
        line = sc.nextLine();
        String c[]=line.split("",0);
        ArrayList<String> cs=new ArrayList<String>();
        for(int i=0;i<c.length;i++){
            cs.add(c[i]);
        }
        String turn="a";
        boolean h=true;
        while (h){
            switch(turn){
                case "a":
                    if(as.size()==0){
                        turn="A";
                        h=false;
                    }
                    else{
                        turn=as.get(0);
                        as.remove(0);
                    }
                    break;
                case "b":
                    if(bs.size()==0){
                        turn="B";
                        h=false;
                    }
                    else{
                        turn=bs.get(0);
                        bs.remove(0);
                    }
                    break;
                case "c":
                    if(cs.size()==0){
                        turn="C";
                        h=false;
                    }
                    else{
                        turn=cs.get(0);
                        cs.remove(0);
                    }
                    break;
            }
        }
        System.out.println(turn);
    }
}