org_aspectj_ajde_core_tests_model_SavedModelConsistencyTest_java
org.aspectj.weaver.bcel.BcelTypeMunger
public boolean munge(BcelClassWeaver weaver) {
        WeaverStateInfo typeWeaverState;
        ContextToken tok = CompilationAndWeavingContext.enteringPhase(31, this);
        boolean changed = false;
        boolean worthReporting = true;
        if (weaver.getWorld().isOverWeaving() && (typeWeaverState = weaver.getLazyClassGen().getType().getWeaverState()) != null && typeWeaverState.isAspectAlreadyApplied(this.getAspectType())) {
            return false;
        }
        if (this.munger.getKind() == ResolvedTypeMunger.Field) {
            changed = this.mungeNewField(weaver, (NewFieldTypeMunger)this.munger);
        } else if (this.munger.getKind() == ResolvedTypeMunger.Method) {
            changed = this.mungeNewMethod(weaver, (NewMethodTypeMunger)this.munger);
        } else if (this.munger.getKind() == ResolvedTypeMunger.InnerClass) {
            changed = this.mungeNewMemberType(weaver, (NewMemberClassTypeMunger)this.munger);
        } else if (this.munger.getKind() == ResolvedTypeMunger.MethodDelegate2) {
            changed = this.mungeMethodDelegate(weaver, (MethodDelegateTypeMunger)this.munger);
        } else if (this.munger.getKind() == ResolvedTypeMunger.FieldHost) {
            changed = this.mungeFieldHost(weaver, (MethodDelegateTypeMunger.FieldHostTypeMunger)this.munger);
        } else if (this.munger.getKind() == ResolvedTypeMunger.PerObjectInterface) {
            changed = this.mungePerObjectInterface(weaver, (PerObjectInterfaceTypeMunger)this.munger);
            worthReporting = false;
        } else if (this.munger.getKind() == ResolvedTypeMunger.PerTypeWithinInterface) {
            changed = this.mungePerTypeWithinTransformer(weaver);
            worthReporting = false;
        } else if (this.munger.getKind() == ResolvedTypeMunger.PrivilegedAccess) {
            changed = this.mungePrivilegedAccess(weaver, (PrivilegedAccessMunger)this.munger);
            worthReporting = false;
        } else if (this.munger.getKind() == ResolvedTypeMunger.Constructor) {
            changed = this.mungeNewConstructor(weaver, (NewConstructorTypeMunger)this.munger);
        } else if (this.munger.getKind() == ResolvedTypeMunger.Parent) {
            changed = this.mungeNewParent(weaver, (NewParentTypeMunger)this.munger);
        } else if (this.munger.getKind() == ResolvedTypeMunger.AnnotationOnType) {
            changed = this.mungeNewAnnotationOnType(weaver, (AnnotationOnTypeMunger)this.munger);
            worthReporting = false;
        } else {
            throw new RuntimeException("unimplemented");
        }
        if (changed && this.munger.changesPublicSignature()) {
            WeaverStateInfo info = weaver.getLazyClassGen().getOrCreateWeaverStateInfo(weaver.getReweavableMode());
            info.addConcreteMunger(this);
        }
        if (changed && worthReporting) {
            ResolvedType declaringAspect = null;
            AsmManager model = ((BcelWorld)this.getWorld()).getModelAsAsmManager();
            if (model != null) {
                if (this.munger instanceof NewParentTypeMunger) {
                    NewParentTypeMunger nptMunger = (NewParentTypeMunger)this.munger;
                    declaringAspect = nptMunger.getDeclaringType();
                    if (declaringAspect.isParameterizedOrGenericType()) {
                        declaringAspect = declaringAspect.getRawType();
                    }
                    ResolvedType thisAspect = this.getAspectType();
                    AsmRelationshipProvider.addRelationship(model, weaver.getLazyClassGen().getType(), this.munger, thisAspect);
                    if (!thisAspect.equals(declaringAspect)) {
                        ResolvedType target = weaver.getLazyClassGen().getType();
                        ResolvedType newParent = nptMunger.getNewParent();
                        IProgramElement thisAspectNode = model.getHierarchy().findElementForType(thisAspect.getPackageName(), thisAspect.getClassName());
                        Map<String, List<String>> declareParentsMap = thisAspectNode.getDeclareParentsMap();
                        if (declareParentsMap == null) {
                            declareParentsMap = new HashMap<String, List<String>>();
                            thisAspectNode.setDeclareParentsMap(declareParentsMap);
                        }
                        String tname = target.getName();
                        String pname = newParent.getName();
                        List newparents = declareParentsMap.computeIfAbsent(tname, k -> new ArrayList());
                        newparents.add(pname);
                        AsmRelationshipProvider.addRelationship(model, weaver.getLazyClassGen().getType(), this.munger, declaringAspect);
                    }
                } else {
                    declaringAspect = this.getAspectType();
                    AsmRelationshipProvider.addRelationship(model, weaver.getLazyClassGen().getType(), this.munger, declaringAspect);
                }
            }
        }
        if (changed && worthReporting && this.munger != null && !weaver.getWorld().getMessageHandler().isIgnoring(IMessage.WEAVEINFO)) {
            String tName = weaver.getLazyClassGen().getType().getSourceLocation().getSourceFile().getName();
            tName = tName.contains("no debug info available") ? "no debug info available" : this.getShortname(weaver.getLazyClassGen().getType().getSourceLocation().getSourceFile().getPath());
            String fName = this.getShortname(this.getAspectType().getSourceLocation().getSourceFile().getPath());
            if (this.munger.getKind().equals(ResolvedTypeMunger.Parent)) {
                NewParentTypeMunger parentTM = (NewParentTypeMunger)this.munger;
                if (parentTM.isMixin()) {
                    weaver.getWorld().getMessageHandler().handleMessage(WeaveMessage.constructWeavingMessage(WeaveMessage.WEAVEMESSAGE_MIXIN, new String[]{parentTM.getNewParent().getName(), fName, weaver.getLazyClassGen().getType().getName(), tName}, weaver.getLazyClassGen().getClassName(), this.getAspectType().getName()));
                } else if (parentTM.getNewParent().isInterface()) {
                    weaver.getWorld().getMessageHandler().handleMessage(WeaveMessage.constructWeavingMessage(WeaveMessage.WEAVEMESSAGE_DECLAREPARENTSIMPLEMENTS, new String[]{weaver.getLazyClassGen().getType().getName(), tName, parentTM.getNewParent().getName(), fName}, weaver.getLazyClassGen().getClassName(), this.getAspectType().getName()));
                } else {
                    weaver.getWorld().getMessageHandler().handleMessage(WeaveMessage.constructWeavingMessage(WeaveMessage.WEAVEMESSAGE_DECLAREPARENTSEXTENDS, new String[]{weaver.getLazyClassGen().getType().getName(), tName, parentTM.getNewParent().getName(), fName}));
                }
            } else if (!this.munger.getKind().equals(ResolvedTypeMunger.FieldHost)) {
                ResolvedMember declaredSig = this.munger.getSignature();
                String fromString = fName + ":'" + declaredSig + "'";
                String kindString = this.munger.getKind().toString().toLowerCase();
                if (kindString.equals("innerclass")) {
                    kindString = "member class";
                    fromString = fName;
                }
                weaver.getWorld().getMessageHandler().handleMessage(WeaveMessage.constructWeavingMessage(WeaveMessage.WEAVEMESSAGE_ITD, new String[]{weaver.getLazyClassGen().getType().getName(), tName, kindString, this.getAspectType().getName(), fromString}, weaver.getLazyClassGen().getClassName(), this.getAspectType().getName()));
            }
        }
        CompilationAndWeavingContext.leavingPhase(tok);
        return changed;
    }
 -> java.lang.ThreadLocal.get(): java.lang.Object -> java.util.Stack.push(java.lang.Object): java.lang.Object -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.replace(char,char): java.lang.String -> java.lang.String.replace(char,char): java.lang.String -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.replace(char,char): java.lang.String -> java.lang.String.replace(char,char): java.lang.String -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.lang.reflect.Modifier.isStatic(int): boolean -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.lang.String.charAt(int): char -> java.lang.String.indexOf(int): int -> java.lang.String.charAt(int): char -> java.lang.String.indexOf(int,int): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.contains(java.lang.CharSequence): boolean -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.indexOf(int): int -> java.util.List.add(java.lang.Object): boolean -> java.lang.String.charAt(int): char -> java.util.List.toArray(java.lang.Object[]): java.lang.Object[] -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.charAt(int): char -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.reflect.Modifier.isInterface(int): boolean -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.replace(char,char): java.lang.String -> java.lang.String.replace(char,char): java.lang.String -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.replace(char,char): java.lang.String -> java.lang.String.replace(char,char): java.lang.String -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.lang.reflect.Modifier.isStatic(int): boolean -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.lang.String.charAt(int): char -> java.lang.String.indexOf(int): int -> java.lang.String.charAt(int): char -> java.lang.String.indexOf(int,int): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.contains(java.lang.CharSequence): boolean -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.indexOf(int): int -> java.util.List.add(java.lang.Object): boolean -> java.lang.String.charAt(int): char -> java.util.List.toArray(java.lang.Object[]): java.lang.Object[] -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.charAt(int): char -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.reflect.Modifier.isStatic(int): boolean -> java.util.List.add(java.lang.Object): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.System.arraycopy(java.lang.Object,int,java.lang.Object,int,int): void -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.Integer.valueOf(int): java.lang.Integer -> java.util.Map.put(java.lang.Object,java.lang.Object): java.lang.Object -> java.util.List.size(): int -> java.util.List.size(): int -> java.util.List.toArray(java.lang.Object[]): java.lang.Object[] -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.charAt(int): char -> java.util.List.add(java.lang.Object): boolean -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.replace(char,char): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.add(java.lang.Object): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.List.isEmpty(): boolean -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.isEmpty(): boolean -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.isEmpty(): boolean -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.isEmpty(): boolean -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.isEmpty(): boolean -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Map.put(java.lang.Object,java.lang.Object): java.lang.Object -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.StringBuilder.append(char): java.lang.StringBuilder -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.toCharArray(): char[] -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.StringBuilder.append(char[]): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.lang.StringBuilder.toString(): java.lang.String -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.StringBuilder.append(char): java.lang.StringBuilder -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.toCharArray(): char[] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.StringBuilder.append(char[]): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.lang.StringBuilder.toString(): java.lang.String -> java.io.File.getPath(): java.lang.String -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.io.File.getPath(): java.lang.String -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.HashMap.get(java.lang.Object): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.add(java.lang.Object): boolean -> java.util.HashMap.put(java.lang.Object,java.lang.Object): java.lang.Object -> java.util.List.contains(java.lang.Object): boolean -> java.util.List.add(java.lang.Object): boolean -> java.util.HashMap.get(java.lang.Object): java.lang.Object -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.contains(java.lang.Object): boolean -> java.util.List.add(java.lang.Object): boolean -> java.util.Set.add(java.lang.Object): boolean -> java.util.List.contains(java.lang.Object): boolean -> java.lang.ThreadLocal.get(): java.lang.Object -> java.util.Stack.isEmpty(): boolean -> java.util.Stack.pop(): java.lang.Object
 [CALL] [CALL] [CALL] -> java.lang.ThreadLocal.get(): java.lang.Object [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] -> java.util.Stack.push(java.lang.Object): java.lang.Object [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.replace(char,char): java.lang.String [EXIT] [EXIT] -> java.lang.String.replace(char,char): java.lang.String [EXIT] [CALL] [CALL] [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.replace(char,char): java.lang.String [EXIT] [EXIT] -> java.lang.String.replace(char,char): java.lang.String [EXIT] [CALL] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String [EXIT] [EXIT] [CALL] [EXIT] -> java.lang.reflect.Modifier.isStatic(int): boolean -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder [CALL] [EXIT] [CALL] [EXIT] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String [CALL] [CALL] [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.indexOf(int): int -> java.lang.String.charAt(int): char -> java.lang.String.indexOf(int,int): int -> java.lang.String.substring(int,int): java.lang.String [CALL] -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.contains(java.lang.CharSequence): boolean -> java.lang.String.charAt(int): char [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.indexOf(int): int [CALL] [EXIT] [EXIT] [EXIT] -> java.util.List.add(java.lang.Object): boolean -> java.lang.String.charAt(int): char -> java.util.List.toArray(java.lang.Object[]): java.lang.Object[] -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String [CALL] -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.charAt(int): char [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [CALL] [EXIT] [EXIT] -> java.lang.reflect.Modifier.isInterface(int): boolean [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.replace(char,char): java.lang.String [EXIT] [EXIT] -> java.lang.String.replace(char,char): java.lang.String [EXIT] [CALL] [CALL] [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.replace(char,char): java.lang.String [EXIT] [EXIT] -> java.lang.String.replace(char,char): java.lang.String [EXIT] [CALL] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String [EXIT] [EXIT] [CALL] [EXIT] -> java.lang.reflect.Modifier.isStatic(int): boolean -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder [CALL] [EXIT] [CALL] [EXIT] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String [CALL] [CALL] [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.indexOf(int): int -> java.lang.String.charAt(int): char -> java.lang.String.indexOf(int,int): int -> java.lang.String.substring(int,int): java.lang.String [CALL] -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.contains(java.lang.CharSequence): boolean -> java.lang.String.charAt(int): char [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.indexOf(int): int [CALL] [EXIT] [EXIT] [EXIT] -> java.util.List.add(java.lang.Object): boolean -> java.lang.String.charAt(int): char -> java.util.List.toArray(java.lang.Object[]): java.lang.Object[] -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String [CALL] -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.charAt(int): char [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [CALL] [CALL] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.reflect.Modifier.isStatic(int): boolean [CALL] [EXIT] -> java.util.List.add(java.lang.Object): boolean [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] -> java.lang.String.startsWith(java.lang.String): boolean [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [EXIT] [CALL] -> java.lang.System.arraycopy(java.lang.Object,int,java.lang.Object,int,int): void [EXIT] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.Integer.valueOf(int): java.lang.Integer -> java.util.Map.put(java.lang.Object,java.lang.Object): java.lang.Object [EXIT] [EXIT] [CALL] [CALL] -> java.util.List.size(): int [EXIT] [EXIT] [CALL] -> java.util.List.size(): int -> java.util.List.toArray(java.lang.Object[]): java.lang.Object[] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.charAt(int): char [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] -> java.util.List.add(java.lang.Object): boolean [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.replace(char,char): java.lang.String [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.add(java.lang.Object): boolean [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.util.Map.get(java.lang.Object): java.lang.Object [CALL] [CALL] [EXIT] -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object [CALL] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.add(java.lang.Object): boolean [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.List.isEmpty(): boolean [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean [CALL] -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean [CALL] [EXIT] [CALL] -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean [CALL] [EXIT] [CALL] -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean [CALL] [EXIT] [CALL] -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean [CALL] [EXIT] [CALL] -> java.lang.String.indexOf(int): int -> java.util.Collection.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.isEmpty(): boolean -> java.util.Iterator.hasNext(): boolean [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [EXIT] -> java.util.Map.put(java.lang.Object,java.lang.Object): java.lang.Object [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [CALL] [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder [CALL] [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [CALL] [EXIT] [EXIT] -> java.lang.StringBuilder.append(char): java.lang.StringBuilder [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.lang.String.startsWith(java.lang.String): boolean [EXIT] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [CALL] [EXIT] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder [CALL] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [EXIT] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder [CALL] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] -> java.lang.String.toCharArray(): char[] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.lang.String.startsWith(java.lang.String): boolean [EXIT] [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] [EXIT] -> java.lang.StringBuilder.append(char[]): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String [CALL] [EXIT] -> java.lang.StringBuilder.toString(): java.lang.String [EXIT] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder [CALL] [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] [EXIT] -> java.lang.StringBuilder.append(char): java.lang.StringBuilder [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.lang.String.startsWith(java.lang.String): boolean [EXIT] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [CALL] [EXIT] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder [CALL] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [EXIT] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder [CALL] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] -> java.lang.String.toCharArray(): char[] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.Object.equals(java.lang.Object): boolean [EXIT] -> java.lang.StringBuilder.append(char[]): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String [CALL] [EXIT] -> java.lang.StringBuilder.toString(): java.lang.String [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] -> java.io.File.getPath(): java.lang.String -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] -> java.io.File.getPath(): java.lang.String -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [EXIT] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.util.Iterator.hasNext(): boolean [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] -> java.util.HashMap.get(java.lang.Object): java.lang.Object [EXIT] [CALL] -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean [EXIT] -> java.util.List.add(java.lang.Object): boolean -> java.util.HashMap.put(java.lang.Object,java.lang.Object): java.lang.Object [EXIT] [CALL] -> java.util.List.contains(java.lang.Object): boolean -> java.util.List.add(java.lang.Object): boolean [EXIT] [CALL] [CALL] -> java.util.HashMap.get(java.lang.Object): java.lang.Object [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [CALL] [EXIT] [EXIT] [CALL] -> java.util.List.contains(java.lang.Object): boolean -> java.util.List.add(java.lang.Object): boolean [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.util.Set.add(java.lang.Object): boolean [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] -> java.util.List.contains(java.lang.Object): boolean [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [CALL] -> java.lang.ThreadLocal.get(): java.lang.Object [EXIT] -> java.util.Stack.isEmpty(): boolean -> java.util.Stack.pop(): java.lang.Object [EXIT]