<?xml version="1.0" encoding="UTF-8"?>
<files psalm-version="dev-master@d90a9a28a53176b4eb329d4c062d37516d3227f3">
  <file src="examples/TemplateChecker.php">
    <PossiblyUndefinedIntArrayOffset occurrences="2">
      <code>$comment_block-&gt;tags['variablesfrom'][0]</code>
      <code>$matches[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="examples/TemplateScanner.php">
    <PossiblyUndefinedIntArrayOffset occurrences="2">
      <code>$comment_block-&gt;tags['variablesfrom'][0]</code>
      <code>$matches[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Codebase.php">
    <PossiblyUndefinedIntArrayOffset occurrences="6">
      <code>$const_name</code>
      <code>$const_name</code>
      <code>$matches[0]</code>
      <code>$property_name</code>
      <code>$symbol_name</code>
      <code>$symbol_parts[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Config/FileFilter.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>explode('::', $method_id)[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/ErrorBaseline.php">
    <PossiblyUndefinedIntArrayOffset occurrences="3">
      <code>$matches[1]</code>
      <code>$matches[2]</code>
      <code>$matches[3]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/ClassAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="4">
      <code>$comments[0]</code>
      <code>$property_name</code>
      <code>$stmt-&gt;props[0]</code>
      <code>$uninitialized_variables[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/ClassLikeAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$property_name</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/ProjectAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="5">
      <code>$destination_parts[1]</code>
      <code>$destination_parts[1]</code>
      <code>$destination_parts[1]</code>
      <code>$php_minor_version</code>
      <code>$source_parts[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Block/ForAnalyzer.php">
    <ArgumentTypeCoercion occurrences="1">
      <code>$stmt-&gt;cond</code>
    </ArgumentTypeCoercion>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Block/ForeachAnalyzer.php">
    <ConflictingReferenceConstraint occurrences="2">
      <code>if (AtomicTypeComparator::isContainedBy(</code>
      <code>if (AtomicTypeComparator::isContainedBy(</code>
    </ConflictingReferenceConstraint>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Block/SwitchAnalyzer.php">
    <InvalidPropertyAssignmentValue occurrences="1">
      <code>$context-&gt;assigned_var_ids += $switch_scope-&gt;new_assigned_var_ids</code>
    </InvalidPropertyAssignmentValue>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Block/SwitchCaseAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="3">
      <code>$new_case_equality_expr-&gt;getArgs()[1]</code>
      <code>$switch_scope-&gt;leftover_statements[0]</code>
      <code>$traverser-&gt;traverse([$switch_condition])[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/AssertionFinder.php">
    <PossiblyUndefinedIntArrayOffset occurrences="28">
      <code>$assertion-&gt;rule[0]</code>
      <code>$assertion-&gt;rule[0]</code>
      <code>$assertion-&gt;rule[0]</code>
      <code>$assertion-&gt;rule[0]</code>
      <code>$assertion-&gt;rule[0]</code>
      <code>$assertion-&gt;rule[0]</code>
      <code>$assertion-&gt;rule[0]</code>
      <code>$count_expr-&gt;getArgs()[0]</code>
      <code>$count_expr-&gt;getArgs()[0]</code>
      <code>$count_expr-&gt;getArgs()[0]</code>
      <code>$count_expr-&gt;getArgs()[0]</code>
      <code>$count_expr-&gt;getArgs()[0]</code>
      <code>$counted_expr-&gt;getArgs()[0]</code>
      <code>$expr-&gt;getArgs()[0]</code>
      <code>$expr-&gt;getArgs()[0]</code>
      <code>$expr-&gt;getArgs()[0]</code>
      <code>$expr-&gt;getArgs()[0]</code>
      <code>$expr-&gt;getArgs()[0]</code>
      <code>$expr-&gt;getArgs()[0]</code>
      <code>$expr-&gt;getArgs()[0]</code>
      <code>$expr-&gt;getArgs()[0]</code>
      <code>$expr-&gt;getArgs()[1]</code>
      <code>$expr-&gt;getArgs()[1]</code>
      <code>$get_debug_type_expr-&gt;getArgs()[0]</code>
      <code>$get_debug_type_expr-&gt;getArgs()[0]</code>
      <code>$getclass_expr-&gt;getArgs()[0]</code>
      <code>$gettype_expr-&gt;getArgs()[0]</code>
      <code>$gettype_expr-&gt;getArgs()[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/Assignment/StaticPropertyAssignmentAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$new_property_name</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/BinaryOp/ArithmeticOpAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="2">
      <code>$invalid_left_messages[0]</code>
      <code>$invalid_right_messages[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/Call/ArgumentAnalyzer.php">
    <ComplexMethod occurrences="1">
      <code>verifyType</code>
    </ComplexMethod>
    <PossiblyUndefinedIntArrayOffset occurrences="3">
      <code>$method_name</code>
      <code>$parts[1]</code>
      <code>explode('::', $cased_method_id)[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/Call/ArrayFunctionArgumentsAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="5">
      <code>$args[0]</code>
      <code>$args[0]</code>
      <code>$args[1]</code>
      <code>$callmap_callables[0]</code>
      <code>$method_name</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/Call/FunctionCallAnalyzer.php">
    <PossiblyUndefinedArrayOffset occurrences="1">
      <code>$stmt-&gt;getArgs()[0]</code>
    </PossiblyUndefinedArrayOffset>
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$parts[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/Call/FunctionCallReturnTypeFetcher.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$method</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/Call/MethodCallAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="6">
      <code>$result-&gt;invalid_method_call_types[0]</code>
      <code>$result-&gt;non_existent_class_method_ids[0]</code>
      <code>$result-&gt;non_existent_class_method_ids[0]</code>
      <code>$result-&gt;non_existent_interface_method_ids[0]</code>
      <code>$result-&gt;non_existent_interface_method_ids[0]</code>
      <code>$result-&gt;non_existent_magic_method_ids[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/Call/StaticMethod/ExistingAtomicStaticCallAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$new_method_name</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/CallAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="2">
      <code>$callable_arg-&gt;items[0]</code>
      <code>$callable_arg-&gt;items[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/ClassConstAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="2">
      <code>$new_const_name</code>
      <code>$new_const_name</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/Fetch/ArrayFetchAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$properties[0]</code>
    </PossiblyUndefinedIntArrayOffset>
    <ReferenceConstraintViolation occurrences="3">
      <code>$stmt_type</code>
      <code>$stmt_type</code>
      <code>$stmt_type</code>
    </ReferenceConstraintViolation>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/Fetch/AtomicPropertyFetchAnalyzer.php">
    <ReferenceConstraintViolation occurrences="1">
      <code>$stmt_type</code>
    </ReferenceConstraintViolation>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/Fetch/InstancePropertyFetchAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$invalid_fetch_types[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/Fetch/StaticPropertyFetchAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$new_property_name</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/Expression/YieldAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$atomic_return_type-&gt;type_params[2]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/ReturnAnalyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$method_name</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/Statements/UnusedAssignmentRemover.php">
    <PossiblyUndefinedIntArrayOffset occurrences="6">
      <code>$token_list[$iter]</code>
      <code>$token_list[$iter]</code>
      <code>$token_list[$iter]</code>
      <code>$token_list[$iter]</code>
      <code>$token_list[0]</code>
      <code>$token_list[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Analyzer/StatementsAnalyzer.php">
    <PossiblyUndefinedArrayOffset occurrences="1">
      <code>$stmt-&gt;expr-&gt;getArgs()[0]</code>
    </PossiblyUndefinedArrayOffset>
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$check_type_string</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Cli/LanguageServer.php">
    <PossiblyInvalidArgument occurrences="1">
      <code>$options['tcp'] ?? null</code>
    </PossiblyInvalidArgument>
  </file>
  <file src="src/Psalm/Internal/Cli/Refactor.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$identifier_name</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Codebase/Analyzer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$trait</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Codebase/ClassLikes.php">
    <PossiblyUndefinedIntArrayOffset occurrences="5">
      <code>$destination_name</code>
      <code>$destination_name</code>
      <code>$destination_name</code>
      <code>$source_const_name</code>
      <code>$stub</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Codebase/Functions.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$stub</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Codebase/InternalCallMapHandler.php">
    <PossiblyUndefinedIntArrayOffset occurrences="2">
      <code>$callables[0]</code>
      <code>$callables[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Codebase/Methods.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$function_callables[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Codebase/Properties.php">
    <PossiblyUndefinedIntArrayOffset occurrences="6">
      <code>$property_name</code>
      <code>$property_name</code>
      <code>$property_name</code>
      <code>$property_name</code>
      <code>$property_name</code>
      <code>$property_name</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Diff/ClassStatementsDiffer.php">
    <PossiblyUndefinedIntArrayOffset occurrences="6">
      <code>$a-&gt;props[0]</code>
      <code>$a-&gt;stmts[0]</code>
      <code>$a_stmt_comments[0]</code>
      <code>$b-&gt;props[0]</code>
      <code>$b-&gt;stmts[0]</code>
      <code>$b_stmt_comments[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Diff/FileDiffer.php">
    <InvalidArrayOffset occurrences="1">
      <code>$b[$y]</code>
    </InvalidArrayOffset>
  </file>
  <file src="src/Psalm/Internal/FileManipulation/PropertyDocblockManipulator.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$stmt-&gt;props[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/LanguageServer/LanguageClient.php">
    <DocblockTypeContradiction occurrences="3">
      <code>$type &lt; 1</code>
      <code>$type &lt; 1 || $type &gt; 4</code>
      <code>$type &gt; 4</code>
    </DocblockTypeContradiction>
  </file>
  <file src="src/Psalm/Internal/LanguageServer/Message.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$pair[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/LanguageServer/ProtocolStreamReader.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$parts[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/LanguageServer/Server/TextDocument.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$contentChanges[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/MethodIdentifier.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$method_id_parts[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/PhpVisitor/PartialParserVisitor.php">
    <PossiblyUndefinedIntArrayOffset occurrences="8">
      <code>$cs[0]</code>
      <code>$match[0]</code>
      <code>$match[1]</code>
      <code>$match[2]</code>
      <code>$node-&gt;stmts[0]</code>
      <code>$replacement_stmts[0]</code>
      <code>$replacement_stmts[0]</code>
      <code>$replacement_stmts[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/PhpVisitor/Reflector/ClassLikeDocblockParser.php">
    <PossiblyUndefinedIntArrayOffset occurrences="4">
      <code>$doc_line_parts[1]</code>
      <code>$matches[0]</code>
      <code>$method_tree-&gt;children[0]</code>
      <code>$method_tree-&gt;children[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/PhpVisitor/Reflector/ClassLikeNodeScanner.php">
    <PossiblyUndefinedIntArrayOffset occurrences="2">
      <code>$l[4]</code>
      <code>$r[4]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/PhpVisitor/Reflector/ExpressionScanner.php">
    <PossiblyUndefinedIntArrayOffset occurrences="2">
      <code>$node-&gt;getArgs()[0]</code>
      <code>$node-&gt;getArgs()[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/PhpVisitor/Reflector/FunctionLikeDocblockParser.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$since_parts[1]</code>
    </PossiblyUndefinedIntArrayOffset>
    <RedundantCondition occurrences="1">
      <code>count($line_parts) &gt; 0</code>
    </RedundantCondition>
  </file>
  <file src="src/Psalm/Internal/PhpVisitor/Reflector/FunctionLikeDocblockScanner.php">
    <PossiblyInvalidArrayOffset occurrences="1">
      <code>$fixed_type_tokens[$i - 1]</code>
    </PossiblyInvalidArrayOffset>
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$source_param_string</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/PhpVisitor/Reflector/FunctionLikeNodeScanner.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$stmt-&gt;stmts[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/PhpVisitor/SimpleNameResolver.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$cs[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Provider/ReturnTypeProvider/ArrayMapReturnTypeProvider.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$callable_method_name</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Provider/ReturnTypeProvider/ArrayMergeReturnTypeProvider.php">
    <InvalidArgument occurrences="1">
      <code>$class_strings ?: null</code>
    </InvalidArgument>
  </file>
  <file src="src/Psalm/Internal/Provider/ReturnTypeProvider/ArrayReduceReturnTypeProvider.php">
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$method_name</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Type/Comparator/AtomicTypeComparator.php">
    <ComplexMethod occurrences="1">
      <code>isContainedBy</code>
    </ComplexMethod>
    <PossiblyUndefinedIntArrayOffset occurrences="2">
      <code>$array-&gt;properties[0]</code>
      <code>$array-&gt;properties[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Type/Comparator/CallableTypeComparator.php">
    <LessSpecificReturnStatement occurrences="1">
      <code>$callable</code>
    </LessSpecificReturnStatement>
    <MoreSpecificReturnType occurrences="1">
      <code>TCallable|TClosure|null</code>
    </MoreSpecificReturnType>
  </file>
  <file src="src/Psalm/Internal/Type/SimpleAssertionReconciler.php">
    <PossiblyUndefinedIntArrayOffset occurrences="4">
      <code>$array_atomic_type-&gt;properties[0]</code>
      <code>$properties[0]</code>
      <code>$properties[0]</code>
      <code>$properties[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Type/TemplateStandinTypeReplacer.php">
    <ImpureMethodCall occurrences="2">
      <code>getClassTemplateTypes</code>
      <code>has</code>
    </ImpureMethodCall>
  </file>
  <file src="src/Psalm/Internal/Type/TypeCombiner.php">
    <PossiblyUndefinedIntArrayOffset occurrences="7">
      <code>$combination-&gt;array_type_params[1]</code>
      <code>$combination-&gt;array_type_params[1]</code>
      <code>$combination-&gt;array_type_params[1]</code>
      <code>$combination-&gt;array_type_params[1]</code>
      <code>$combination-&gt;array_type_params[1]</code>
      <code>$combination-&gt;array_type_params[1]</code>
      <code>$combination-&gt;array_type_params[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Type/TypeExpander.php">
    <InvalidArgument occurrences="1">
      <code>$fallback_params</code>
    </InvalidArgument>
  </file>
  <file src="src/Psalm/Internal/Type/TypeParser.php">
    <PossiblyUndefinedIntArrayOffset occurrences="10">
      <code>$const_name</code>
      <code>$const_name</code>
      <code>$intersection_types[0]</code>
      <code>$parse_tree-&gt;children[0]</code>
      <code>$parse_tree-&gt;condition-&gt;children[0]</code>
      <code>array_keys($offset_template_data)[0]</code>
      <code>array_keys($template_type_map[$array_param_name])[0]</code>
      <code>array_keys($template_type_map[$class_name])[0]</code>
      <code>array_keys($template_type_map[$fq_classlike_name])[0]</code>
      <code>array_keys($template_type_map[$template_param_name])[0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Internal/Type/TypeTokenizer.php">
    <PossiblyInvalidArrayOffset occurrences="4">
      <code>$type_tokens[$i - 1]</code>
      <code>$type_tokens[$i - 1]</code>
      <code>$type_tokens[$i - 1]</code>
      <code>$type_tokens[$i - 1]</code>
    </PossiblyInvalidArrayOffset>
  </file>
  <file src="src/Psalm/Storage/ClassConstantStorage.php">
    <MutableDependency occurrences="1">
      <code>CustomMetadataTrait</code>
    </MutableDependency>
  </file>
  <file src="src/Psalm/Storage/FunctionLikeParameter.php">
    <ImpureMethodCall occurrences="4">
      <code>traverse</code>
      <code>traverse</code>
      <code>traverse</code>
      <code>traverse</code>
    </ImpureMethodCall>
  </file>
  <file src="src/Psalm/Type.php">
    <ImpureStaticProperty occurrences="1">
      <code>self::$listKey</code>
    </ImpureStaticProperty>
  </file>
  <file src="src/Psalm/Type/Atomic.php">
    <ImpureMethodCall occurrences="12">
      <code>classExtendsOrImplements</code>
      <code>classExtendsOrImplements</code>
      <code>classExtendsOrImplements</code>
      <code>classOrInterfaceExists</code>
      <code>classOrInterfaceExists</code>
      <code>classOrInterfaceExists</code>
      <code>getMappedGenericTypeParams</code>
      <code>interfaceExtends</code>
      <code>interfaceExtends</code>
      <code>interfaceExtends</code>
      <code>traverse</code>
      <code>traverse</code>
    </ImpureMethodCall>
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>array_keys($template_type_map[$value])[0]</code>
    </PossiblyUndefinedIntArrayOffset>
    <ReferenceConstraintViolation occurrences="1">
      <code>$value</code>
    </ReferenceConstraintViolation>
  </file>
  <file src="src/Psalm/Type/Atomic/CallableTrait.php">
    <ImpureMethodCall occurrences="4">
      <code>replace</code>
      <code>replace</code>
      <code>replace</code>
      <code>replace</code>
    </ImpureMethodCall>
  </file>
  <file src="src/Psalm/Type/Atomic/GenericTrait.php">
    <ImpureMethodCall occurrences="3">
      <code>getMappedGenericTypeParams</code>
      <code>replace</code>
      <code>replace</code>
    </ImpureMethodCall>
    <InvalidReturnType occurrences="2">
      <code>TTypeParams|null</code>
      <code>TTypeParams|null</code>
    </InvalidReturnType>
    <PossiblyUndefinedIntArrayOffset occurrences="1">
      <code>$this-&gt;type_params[1]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Type/Atomic/HasIntersectionTrait.php">
    <ImpureMethodCall occurrences="1">
      <code>getMostSpecificTypeFromBounds</code>
    </ImpureMethodCall>
  </file>
  <file src="src/Psalm/Type/Atomic/TCallableList.php">
    <DeprecatedClass occurrences="1">
      <code>TNonEmptyList</code>
    </DeprecatedClass>
  </file>
  <file src="src/Psalm/Type/Atomic/TClassString.php">
    <ImpureMethodCall occurrences="1">
      <code>replace</code>
    </ImpureMethodCall>
  </file>
  <file src="src/Psalm/Type/Atomic/TClassStringMap.php">
    <ImpureMethodCall occurrences="4">
      <code>getString</code>
      <code>getString</code>
      <code>replace</code>
      <code>replace</code>
    </ImpureMethodCall>
    <ImpurePropertyAssignment occurrences="1">
      <code>$cloned-&gt;value_param</code>
    </ImpurePropertyAssignment>
  </file>
  <file src="src/Psalm/Type/Atomic/TConditional.php">
    <ImpureMethodCall occurrences="1">
      <code>replace</code>
    </ImpureMethodCall>
  </file>
  <file src="src/Psalm/Type/Atomic/TDependentListKey.php">
    <PossiblyUnusedMethod occurrences="1">
      <code>__construct</code>
    </PossiblyUnusedMethod>
  </file>
  <file src="src/Psalm/Type/Atomic/TKeyedArray.php">
    <DeprecatedClass occurrences="3">
      <code>TList</code>
      <code>new TList($this-&gt;getGenericValueType())</code>
      <code>new TNonEmptyList($this-&gt;getGenericValueType())</code>
    </DeprecatedClass>
    <ImpureMethodCall occurrences="13">
      <code>combine</code>
      <code>combine</code>
      <code>combineUnionTypes</code>
      <code>combineUnionTypes</code>
      <code>combineUnionTypes</code>
      <code>combineUnionTypes</code>
      <code>combineUnionTypes</code>
      <code>combineUnionTypes</code>
      <code>combineUnionTypes</code>
      <code>replace</code>
      <code>replace</code>
      <code>replace</code>
      <code>replace</code>
    </ImpureMethodCall>
    <ImpurePropertyAssignment occurrences="1">
      <code>$key_type-&gt;possibly_undefined</code>
    </ImpurePropertyAssignment>
    <PossiblyUndefinedIntArrayOffset occurrences="3">
      <code>$this-&gt;properties[0]</code>
      <code>$this-&gt;properties[0]</code>
      <code>$this-&gt;properties[0]</code>
    </PossiblyUndefinedIntArrayOffset>
    <PossiblyUnusedMethod occurrences="1">
      <code>getList</code>
    </PossiblyUnusedMethod>
  </file>
  <file src="src/Psalm/Type/Atomic/TList.php">
    <ImpureMethodCall occurrences="2">
      <code>replace</code>
      <code>replace</code>
    </ImpureMethodCall>
    <ImpurePropertyAssignment occurrences="1">
      <code>$cloned-&gt;type_param</code>
    </ImpurePropertyAssignment>
  </file>
  <file src="src/Psalm/Type/Atomic/TNonEmptyList.php">
    <DeprecatedClass occurrences="1">
      <code>TList</code>
    </DeprecatedClass>
    <PossiblyUnusedMethod occurrences="1">
      <code>setCount</code>
    </PossiblyUnusedMethod>
  </file>
  <file src="src/Psalm/Type/Atomic/TObjectWithProperties.php">
    <ImpureMethodCall occurrences="2">
      <code>replace</code>
      <code>replace</code>
    </ImpureMethodCall>
  </file>
  <file src="src/Psalm/Type/Atomic/TTemplateKeyOf.php">
    <ImpureMethodCall occurrences="1">
      <code>replace</code>
    </ImpureMethodCall>
  </file>
  <file src="src/Psalm/Type/Atomic/TTemplatePropertiesOf.php">
    <ImpureMethodCall occurrences="1">
      <code>replace</code>
    </ImpureMethodCall>
  </file>
  <file src="src/Psalm/Type/Atomic/TTemplateValueOf.php">
    <ImpureMethodCall occurrences="1">
      <code>replace</code>
    </ImpureMethodCall>
  </file>
  <file src="src/Psalm/Type/MutableUnion.php">
    <PossiblyUnusedProperty occurrences="7">
      <code>$allow_mutations</code>
      <code>$by_ref</code>
      <code>$failed_reconciliation</code>
      <code>$from_template_default</code>
      <code>$has_mutations</code>
      <code>$initialized_class</code>
      <code>$reference_free</code>
    </PossiblyUnusedProperty>
  </file>
  <file src="src/Psalm/Type/Reconciler.php">
    <PossiblyUndefinedIntArrayOffset occurrences="3">
      <code>$const_name</code>
      <code>$type[0]</code>
      <code>$type[0][0]</code>
    </PossiblyUndefinedIntArrayOffset>
  </file>
  <file src="src/Psalm/Type/TypeNode.php">
    <ReferenceConstraintViolation occurrences="1">
      <code>$node</code>
    </ReferenceConstraintViolation>
  </file>
  <file src="src/Psalm/Type/TypeVisitor.php">
    <ImpureMethodCall occurrences="1">
      <code>visit</code>
    </ImpureMethodCall>
  </file>
  <file src="src/Psalm/Type/Union.php">
    <PossiblyUnusedProperty occurrences="1">
      <code>$ignore_isset</code>
    </PossiblyUnusedProperty>
  </file>
  <file src="src/Psalm/Type/UnionTrait.php">
    <ImpureMethodCall occurrences="4">
      <code>traverse</code>
      <code>traverse</code>
      <code>traverseArray</code>
      <code>traverseArray</code>
    </ImpureMethodCall>
    <MoreSpecificReturnType occurrences="1">
      <code>TArray|TKeyedArray|TClassStringMap</code>
    </MoreSpecificReturnType>
    <PossiblyUndefinedStringArrayOffset occurrences="1">
      <code>$this-&gt;types['array']</code>
    </PossiblyUndefinedStringArrayOffset>
    <PossiblyUnusedMethod occurrences="2">
      <code>allFloatLiterals</code>
      <code>allFloatLiterals</code>
    </PossiblyUnusedMethod>
  </file>
  <file src="tests/Internal/Codebase/InternalCallMapHandlerTest.php">
    <UnusedPsalmSuppress occurrences="1">
      <code>UndefinedMethod</code>
    </UnusedPsalmSuppress>
  </file>
  <file src="vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ArrowFunction.php">
    <PossiblyUndefinedStringArrayOffset occurrences="1">
      <code>$subNodes['expr']</code>
    </PossiblyUndefinedStringArrayOffset>
  </file>
</files>
