; LLVM IR from musetronstar/tagd :: tagd/src (file)

; Unoptimized IR (clang -disable-llvm-passes):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.__gnu_cxx::__normal_iterator" = type { ptr }
%class.anon = type { i8 }

@.str.5 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.12 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.22 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.24 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.25 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.26 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.27 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.28 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.29 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.30 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.31 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.32 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.33 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.34 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.35 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.36 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.37 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.42 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.44 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.45 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.46 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.47 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.48 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.49 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.50 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.51 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.52 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.53 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.54 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.55 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.56 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.57 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.58 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.59 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.60 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.61 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.62 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.63 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.64 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.65 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.66 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.67 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.68 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.69 = external hidden unnamed_addr constant [37 x i8], align 1
@.str.70 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.71 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.72 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.73 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.74 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.75 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.76 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.77 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.78 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.79 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.80 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.81 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.82 = external hidden unnamed_addr constant [8 x i8], align 1
@.str.83 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.84 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.85 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.86 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.87 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.88 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.89 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.90 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.91 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.92 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.93 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.94 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.95 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.96 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.97 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.98 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.99 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.100 = external hidden unnamed_addr constant [16 x i8], align 1

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #0

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #0

; Function Attrs: mustprogress nounwind uwtable
declare noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32)) #1 align 2

; Function Attrs: mustprogress uwtable
define dso_local noundef ptr @_ZN4tagd4file14ext_media_typeENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef %0) #2 align 2 {
  %2 = alloca ptr, align 8
  %3 = alloca ptr, align 8
  %4 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %5 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %6 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %7 = alloca %class.anon, align 1
  %8 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %9 = alloca i64, align 8
  %10 = alloca i32, align 4
  store ptr %0, ptr %3, align 8, !tbaa !5
  %11 = call noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32) %0) #4
  br i1 %11, label %12, label %13

12:                                               ; preds = %1
  store ptr null, ptr %2, align 8
  br label %263

13:                                               ; preds = %1
  %14 = call ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5beginEv(ptr noundef nonnull align 8 dereferenceable(32) %0) #4
  %15 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %4, i32 0, i32 0
  store ptr %14, ptr %15, align 8
  %16 = call ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE3endEv(ptr noundef nonnull align 8 dereferenceable(32) %0) #4
  %17 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %5, i32 0, i32 0
  store ptr %16, ptr %17, align 8
  %18 = call ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5beginEv(ptr noundef nonnull align 8 dereferenceable(32) %0) #4
  %19 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %6, i32 0, i32 0
  store ptr %18, ptr %19, align 8
  %20 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %4, i32 0, i32 0
  %21 = load ptr, ptr %20, align 8
  %22 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %5, i32 0, i32 0
  %23 = load ptr, ptr %22, align 8
  %24 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %6, i32 0, i32 0
  %25 = load ptr, ptr %24, align 8
  %26 = call ptr @"_ZSt9transformIN9__gnu_cxx17__normal_iteratorIPcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEES9_ZN4tagd4file14ext_media_typeES8_E3$_0ET0_T_SE_SD_T1_"(ptr %21, ptr %23, ptr %25)
  %27 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %8, i32 0, i32 0
  store ptr %26, ptr %27, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %9) #4
  store i64 0, ptr %9, align 8, !tbaa !9
  %28 = load i64, ptr %9, align 8, !tbaa !9
  %29 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %28)
  %30 = load i8, ptr %29, align 1, !tbaa !11
  %31 = sext i8 %30 to i32
  switch i32 %31, label %260 [
    i32 55, label %32
    i32 97, label %36
    i32 99, label %43
    i32 100, label %50
    i32 102, label %54
    i32 103, label %61
    i32 104, label %68
    i32 105, label %75
    i32 106, label %79
    i32 108, label %100
    i32 109, label %104
    i32 111, label %141
    i32 112, label %145
    i32 114, label %172
    i32 115, label %182
    i32 116, label %189
    i32 119, label %215
    i32 120, label %237
    i32 122, label %256
  ]

32:                                               ; preds = %13
  %33 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.5)
  br i1 %33, label %34, label %35

34:                                               ; preds = %32
  store ptr @.str.6, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

35:                                               ; preds = %32
  br label %261

36:                                               ; preds = %13
  %37 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.7)
  br i1 %37, label %38, label %39

38:                                               ; preds = %36
  store ptr @.str.8, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

39:                                               ; preds = %36
  %40 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.9)
  br i1 %40, label %41, label %42

41:                                               ; preds = %39
  store ptr @.str.10, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

42:                                               ; preds = %39
  br label %261

43:                                               ; preds = %13
  %44 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.11)
  br i1 %44, label %45, label %46

45:                                               ; preds = %43
  store ptr @.str.12, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

46:                                               ; preds = %43
  %47 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.13)
  br i1 %47, label %48, label %49

48:                                               ; preds = %46
  store ptr @.str.14, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

49:                                               ; preds = %46
  br label %261

50:                                               ; preds = %13
  %51 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.15)
  br i1 %51, label %52, label %53

52:                                               ; preds = %50
  store ptr @.str.16, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

53:                                               ; preds = %50
  br label %261

54:                                               ; preds = %13
  %55 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.17)
  br i1 %55, label %56, label %57

56:                                               ; preds = %54
  store ptr @.str.18, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

57:                                               ; preds = %54
  %58 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.19)
  br i1 %58, label %59, label %60

59:                                               ; preds = %57
  store ptr @.str.20, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

60:                                               ; preds = %57
  br label %261

61:                                               ; preds = %13
  %62 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.21)
  br i1 %62, label %63, label %64

63:                                               ; preds = %61
  store ptr @.str.22, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

64:                                               ; preds = %61
  %65 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.23)
  br i1 %65, label %66, label %67

66:                                               ; preds = %64
  store ptr @.str.24, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

67:                                               ; preds = %64
  br label %261

68:                                               ; preds = %13
  %69 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.25)
  br i1 %69, label %70, label %71

70:                                               ; preds = %68
  store ptr @.str.26, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

71:                                               ; preds = %68
  %72 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.27)
  br i1 %72, label %73, label %74

73:                                               ; preds = %71
  store ptr @.str.26, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

74:                                               ; preds = %71
  br label %261

75:                                               ; preds = %13
  %76 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.28)
  br i1 %76, label %77, label %78

77:                                               ; preds = %75
  store ptr @.str.29, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

78:                                               ; preds = %75
  br label %261

79:                                               ; preds = %13
  %80 = load i64, ptr %9, align 8, !tbaa !9
  %81 = add i64 %80, 1
  store i64 %81, ptr %9, align 8, !tbaa !9
  %82 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %81)
  %83 = load i8, ptr %82, align 1, !tbaa !11
  %84 = sext i8 %83 to i32
  switch i32 %84, label %99 [
    i32 115, label %85
    i32 112, label %92
  ]

85:                                               ; preds = %79
  %86 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.30)
  br i1 %86, label %87, label %88

87:                                               ; preds = %85
  store ptr @.str.31, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

88:                                               ; preds = %85
  %89 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.32)
  br i1 %89, label %90, label %91

90:                                               ; preds = %88
  store ptr @.str.33, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

91:                                               ; preds = %88
  br label %99

92:                                               ; preds = %79
  %93 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.34)
  br i1 %93, label %94, label %95

94:                                               ; preds = %92
  store ptr @.str.35, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

95:                                               ; preds = %92
  %96 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.36)
  br i1 %96, label %97, label %98

97:                                               ; preds = %95
  store ptr @.str.35, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

98:                                               ; preds = %95
  br label %99

99:                                               ; preds = %98, %91, %79
  br label %261

100:                                              ; preds = %13
  %101 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.37)
  br i1 %101, label %102, label %103

102:                                              ; preds = %100
  store ptr @.str.38, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

103:                                              ; preds = %100
  br label %261

104:                                              ; preds = %13
  %105 = load i64, ptr %9, align 8, !tbaa !9
  %106 = add i64 %105, 1
  store i64 %106, ptr %9, align 8, !tbaa !9
  %107 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %106)
  %108 = load i8, ptr %107, align 1, !tbaa !11
  %109 = sext i8 %108 to i32
  switch i32 %109, label %140 [
    i32 51, label %110
    i32 52, label %114
    i32 100, label %118
    i32 105, label %122
    i32 107, label %126
    i32 112, label %130
  ]

110:                                              ; preds = %104
  %111 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.39)
  br i1 %111, label %112, label %113

112:                                              ; preds = %110
  store ptr @.str.40, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

113:                                              ; preds = %110
  br label %140

114:                                              ; preds = %104
  %115 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.41)
  br i1 %115, label %116, label %117

116:                                              ; preds = %114
  store ptr @.str.42, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

117:                                              ; preds = %114
  br label %140

118:                                              ; preds = %104
  %119 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.43)
  br i1 %119, label %120, label %121

120:                                              ; preds = %118
  store ptr @.str.44, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

121:                                              ; preds = %118
  br label %140

122:                                              ; preds = %104
  %123 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.45)
  br i1 %123, label %124, label %125

124:                                              ; preds = %122
  store ptr @.str.46, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

125:                                              ; preds = %122
  br label %140

126:                                              ; preds = %104
  %127 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.47)
  br i1 %127, label %128, label %129

128:                                              ; preds = %126
  store ptr @.str.48, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

129:                                              ; preds = %126
  br label %140

130:                                              ; preds = %104
  %131 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.49)
  br i1 %131, label %132, label %133

132:                                              ; preds = %130
  store ptr @.str.50, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

133:                                              ; preds = %130
  %134 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.51)
  br i1 %134, label %135, label %136

135:                                              ; preds = %133
  store ptr @.str.42, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

136:                                              ; preds = %133
  %137 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.52)
  br i1 %137, label %138, label %139

138:                                              ; preds = %136
  store ptr @.str.53, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

139:                                              ; preds = %136
  br label %140

140:                                              ; preds = %139, %129, %125, %121, %117, %113, %104
  br label %261

141:                                              ; preds = %13
  %142 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.54)
  br i1 %142, label %143, label %144

143:                                              ; preds = %141
  store ptr @.str.55, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

144:                                              ; preds = %141
  br label %261

145:                                              ; preds = %13
  %146 = load i64, ptr %9, align 8, !tbaa !9
  %147 = add i64 %146, 1
  store i64 %147, ptr %9, align 8, !tbaa !9
  %148 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %147)
  %149 = load i8, ptr %148, align 1, !tbaa !11
  %150 = sext i8 %149 to i32
  switch i32 %150, label %171 [
    i32 100, label %151
    i32 103, label %155
    i32 110, label %159
    i32 112, label %163
    i32 115, label %167
  ]

151:                                              ; preds = %145
  %152 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.56)
  br i1 %152, label %153, label %154

153:                                              ; preds = %151
  store ptr @.str.57, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

154:                                              ; preds = %151
  br label %171

155:                                              ; preds = %145
  %156 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.58)
  br i1 %156, label %157, label %158

157:                                              ; preds = %155
  store ptr @.str.59, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

158:                                              ; preds = %155
  br label %171

159:                                              ; preds = %145
  %160 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.60)
  br i1 %160, label %161, label %162

161:                                              ; preds = %159
  store ptr @.str.61, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

162:                                              ; preds = %159
  br label %171

163:                                              ; preds = %145
  %164 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.62)
  br i1 %164, label %165, label %166

165:                                              ; preds = %163
  store ptr @.str.63, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

166:                                              ; preds = %163
  br label %171

167:                                              ; preds = %145
  %168 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.64)
  br i1 %168, label %169, label %170

169:                                              ; preds = %167
  store ptr @.str.65, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

170:                                              ; preds = %167
  br label %171

171:                                              ; preds = %170, %166, %162, %158, %154, %145
  br label %261

172:                                              ; preds = %13
  %173 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.66)
  br i1 %173, label %174, label %175

174:                                              ; preds = %172
  store ptr @.str.67, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

175:                                              ; preds = %172
  %176 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.68)
  br i1 %176, label %177, label %178

177:                                              ; preds = %175
  store ptr @.str.69, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

178:                                              ; preds = %175
  %179 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.70)
  br i1 %179, label %180, label %181

180:                                              ; preds = %178
  store ptr @.str.71, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

181:                                              ; preds = %178
  br label %261

182:                                              ; preds = %13
  %183 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.72)
  br i1 %183, label %184, label %185

184:                                              ; preds = %182
  store ptr @.str.73, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

185:                                              ; preds = %182
  %186 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.74)
  br i1 %186, label %187, label %188

187:                                              ; preds = %185
  store ptr @.str.75, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

188:                                              ; preds = %185
  br label %261

189:                                              ; preds = %13
  %190 = load i64, ptr %9, align 8, !tbaa !9
  %191 = add i64 %190, 1
  store i64 %191, ptr %9, align 8, !tbaa !9
  %192 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %191)
  %193 = load i8, ptr %192, align 1, !tbaa !11
  %194 = sext i8 %193 to i32
  switch i32 %194, label %214 [
    i32 97, label %195
    i32 103, label %202
    i32 111, label %206
    i32 120, label %210
  ]

195:                                              ; preds = %189
  %196 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.76)
  br i1 %196, label %197, label %198

197:                                              ; preds = %195
  store ptr @.str.77, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

198:                                              ; preds = %195
  %199 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.78)
  br i1 %199, label %200, label %201

200:                                              ; preds = %198
  store ptr @.str.79, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

201:                                              ; preds = %198
  br label %214

202:                                              ; preds = %189
  %203 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.80)
  br i1 %203, label %204, label %205

204:                                              ; preds = %202
  store ptr @.str.81, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

205:                                              ; preds = %202
  br label %214

206:                                              ; preds = %189
  %207 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.82)
  br i1 %207, label %208, label %209

208:                                              ; preds = %206
  store ptr @.str.83, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

209:                                              ; preds = %206
  br label %214

210:                                              ; preds = %189
  %211 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.84)
  br i1 %211, label %212, label %213

212:                                              ; preds = %210
  store ptr @.str.10, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

213:                                              ; preds = %210
  br label %214

214:                                              ; preds = %213, %209, %205, %201, %189
  br label %261

215:                                              ; preds = %13
  %216 = load i64, ptr %9, align 8, !tbaa !9
  %217 = add i64 %216, 1
  store i64 %217, ptr %9, align 8, !tbaa !9
  %218 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %217)
  %219 = load i8, ptr %218, align 1, !tbaa !11
  %220 = sext i8 %219 to i32
  switch i32 %220, label %236 [
    i32 97, label %221
    i32 101, label %225
    i32 109, label %229
  ]

221:                                              ; preds = %215
  %222 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.85)
  br i1 %222, label %223, label %224

223:                                              ; preds = %221
  store ptr @.str.86, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

224:                                              ; preds = %221
  br label %236

225:                                              ; preds = %215
  %226 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.87)
  br i1 %226, label %227, label %228

227:                                              ; preds = %225
  store ptr @.str.88, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

228:                                              ; preds = %225
  br label %236

229:                                              ; preds = %215
  %230 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.89)
  br i1 %230, label %231, label %232

231:                                              ; preds = %229
  store ptr @.str.90, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

232:                                              ; preds = %229
  %233 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.91)
  br i1 %233, label %234, label %235

234:                                              ; preds = %232
  store ptr @.str.92, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

235:                                              ; preds = %232
  br label %236

236:                                              ; preds = %235, %228, %224, %215
  br label %261

237:                                              ; preds = %13
  %238 = load i64, ptr %9, align 8, !tbaa !9
  %239 = add i64 %238, 1
  store i64 %239, ptr %9, align 8, !tbaa !9
  %240 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %239)
  %241 = load i8, ptr %240, align 1, !tbaa !11
  %242 = sext i8 %241 to i32
  switch i32 %242, label %255 [
    i32 104, label %243
    i32 108, label %247
    i32 109, label %251
  ]

243:                                              ; preds = %237
  %244 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.93)
  br i1 %244, label %245, label %246

245:                                              ; preds = %243
  store ptr @.str.94, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

246:                                              ; preds = %243
  br label %255

247:                                              ; preds = %237
  %248 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.95)
  br i1 %248, label %249, label %250

249:                                              ; preds = %247
  store ptr @.str.96, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

250:                                              ; preds = %247
  br label %255

251:                                              ; preds = %237
  %252 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.97)
  br i1 %252, label %253, label %254

253:                                              ; preds = %251
  store ptr @.str.98, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

254:                                              ; preds = %251
  br label %255

255:                                              ; preds = %254, %250, %246, %237
  br label %261

256:                                              ; preds = %13
  %257 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef @.str.99)
  br i1 %257, label %258, label %259

258:                                              ; preds = %256
  store ptr @.str.100, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

259:                                              ; preds = %256
  br label %261

260:                                              ; preds = %13
  store ptr null, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

261:                                              ; preds = %259, %255, %236, %214, %188, %181, %171, %144, %140, %103, %99, %78, %74, %67, %60, %53, %49, %42, %35
  store ptr null, ptr %2, align 8
  store i32 1, ptr %10, align 4
  br label %262

262:                                              ; preds = %261, %260, %258, %253, %249, %245, %234, %231, %227, %223, %212, %208, %204, %200, %197, %187, %184, %180, %177, %174, %169, %165, %161, %157, %153, %143, %138, %135, %132, %128, %124, %120, %116, %112, %102, %97, %94, %90, %87, %77, %73, %70, %66, %63, %59, %56, %52, %48, %45, %41, %38, %34
  call void @llvm.lifetime.end.p0(i64 8, ptr %9) #4
  br label %263

263:                                              ; preds = %262, %12
  %264 = load ptr, ptr %2, align 8
  ret ptr %264
}

; Function Attrs: mustprogress uwtable
declare hidden ptr @"_ZSt9transformIN9__gnu_cxx17__normal_iteratorIPcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEES9_ZN4tagd4file14ext_media_typeES8_E3$_0ET0_T_SE_SD_T1_"(ptr, ptr, ptr) #2

; Function Attrs: mustprogress nounwind uwtable
declare ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5beginEv(ptr noundef nonnull align 8 dereferenceable(32)) #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE3endEv(ptr noundef nonnull align 8 dereferenceable(32)) #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32), i64 noundef) #1 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #3

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"long", !7, i64 0}
!11 = !{!7, !7, i64 0}


; Optimized IR (opt -passes='default<O3>'):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

@.str.5 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.12 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.22 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.24 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.25 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.26 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.27 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.28 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.29 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.30 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.31 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.32 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.33 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.34 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.35 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.36 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.37 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.42 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.44 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.45 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.46 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.47 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.48 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.49 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.50 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.51 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.52 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.53 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.54 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.55 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.56 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.57 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.58 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.59 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.60 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.61 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.62 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.63 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.64 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.65 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.66 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.67 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.68 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.69 = external hidden unnamed_addr constant [37 x i8], align 1
@.str.70 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.71 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.72 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.73 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.74 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.75 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.76 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.77 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.78 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.79 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.80 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.81 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.82 = external hidden unnamed_addr constant [8 x i8], align 1
@.str.83 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.84 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.85 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.86 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.87 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.88 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.89 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.90 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.91 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.92 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.93 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.94 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.95 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.96 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.97 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.98 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.99 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.100 = external hidden unnamed_addr constant [16 x i8], align 1

; Function Attrs: mustprogress nounwind uwtable
declare noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
define dso_local noundef ptr @_ZN4tagd4file14ext_media_typeENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull %0) local_unnamed_addr #1 align 2 {
  %2 = tail call noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32) %0) #3
  br i1 %2, label %129, label %3

3:                                                ; preds = %1
  %4 = tail call ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5beginEv(ptr noundef nonnull align 8 dereferenceable(32) %0) #3
  %5 = tail call ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE3endEv(ptr noundef nonnull align 8 dereferenceable(32) %0) #3
  %6 = tail call ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5beginEv(ptr noundef nonnull align 8 dereferenceable(32) %0) #3
  %7 = tail call ptr @"_ZSt9transformIN9__gnu_cxx17__normal_iteratorIPcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEES9_ZN4tagd4file14ext_media_typeES8_E3$_0ET0_T_SE_SD_T1_"(ptr %4, ptr %5, ptr %6)
  %8 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef 0)
  %9 = load i8, ptr %8, align 1, !tbaa !5
  switch i8 %9, label %129 [
    i8 55, label %10
    i8 97, label %12
    i8 99, label %16
    i8 100, label %20
    i8 102, label %22
    i8 103, label %26
    i8 104, label %30
    i8 105, label %34
    i8 106, label %36
    i8 108, label %47
    i8 109, label %49
    i8 111, label %68
    i8 112, label %70
    i8 114, label %83
    i8 115, label %89
    i8 116, label %93
    i8 119, label %106
    i8 120, label %117
    i8 122, label %126
  ]

10:                                               ; preds = %3
  %11 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.5)
  br i1 %11, label %129, label %128

12:                                               ; preds = %3
  %13 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.7)
  br i1 %13, label %129, label %14

14:                                               ; preds = %12
  %15 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.9)
  br i1 %15, label %129, label %128

16:                                               ; preds = %3
  %17 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.11)
  br i1 %17, label %129, label %18

18:                                               ; preds = %16
  %19 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.13)
  br i1 %19, label %129, label %128

20:                                               ; preds = %3
  %21 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.15)
  br i1 %21, label %129, label %128

22:                                               ; preds = %3
  %23 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.17)
  br i1 %23, label %129, label %24

24:                                               ; preds = %22
  %25 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.19)
  br i1 %25, label %129, label %128

26:                                               ; preds = %3
  %27 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.21)
  br i1 %27, label %129, label %28

28:                                               ; preds = %26
  %29 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.23)
  br i1 %29, label %129, label %128

30:                                               ; preds = %3
  %31 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.25)
  br i1 %31, label %129, label %32

32:                                               ; preds = %30
  %33 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.27)
  br i1 %33, label %129, label %128

34:                                               ; preds = %3
  %35 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.28)
  br i1 %35, label %129, label %128

36:                                               ; preds = %3
  %37 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef 1)
  %38 = load i8, ptr %37, align 1, !tbaa !5
  switch i8 %38, label %128 [
    i8 115, label %39
    i8 112, label %43
  ]

39:                                               ; preds = %36
  %40 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.30)
  br i1 %40, label %129, label %41

41:                                               ; preds = %39
  %42 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.32)
  br i1 %42, label %129, label %128

43:                                               ; preds = %36
  %44 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.34)
  br i1 %44, label %129, label %45

45:                                               ; preds = %43
  %46 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.36)
  br i1 %46, label %129, label %128

47:                                               ; preds = %3
  %48 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.37)
  br i1 %48, label %129, label %128

49:                                               ; preds = %3
  %50 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef 1)
  %51 = load i8, ptr %50, align 1, !tbaa !5
  switch i8 %51, label %128 [
    i8 51, label %52
    i8 52, label %54
    i8 100, label %56
    i8 105, label %58
    i8 107, label %60
    i8 112, label %62
  ]

52:                                               ; preds = %49
  %53 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.39)
  br i1 %53, label %129, label %128

54:                                               ; preds = %49
  %55 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.41)
  br i1 %55, label %129, label %128

56:                                               ; preds = %49
  %57 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.43)
  br i1 %57, label %129, label %128

58:                                               ; preds = %49
  %59 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.45)
  br i1 %59, label %129, label %128

60:                                               ; preds = %49
  %61 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.47)
  br i1 %61, label %129, label %128

62:                                               ; preds = %49
  %63 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.49)
  br i1 %63, label %129, label %64

64:                                               ; preds = %62
  %65 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.51)
  br i1 %65, label %129, label %66

66:                                               ; preds = %64
  %67 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.52)
  br i1 %67, label %129, label %128

68:                                               ; preds = %3
  %69 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.54)
  br i1 %69, label %129, label %128

70:                                               ; preds = %3
  %71 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef 1)
  %72 = load i8, ptr %71, align 1, !tbaa !5
  switch i8 %72, label %128 [
    i8 100, label %73
    i8 103, label %75
    i8 110, label %77
    i8 112, label %79
    i8 115, label %81
  ]

73:                                               ; preds = %70
  %74 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.56)
  br i1 %74, label %129, label %128

75:                                               ; preds = %70
  %76 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.58)
  br i1 %76, label %129, label %128

77:                                               ; preds = %70
  %78 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.60)
  br i1 %78, label %129, label %128

79:                                               ; preds = %70
  %80 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.62)
  br i1 %80, label %129, label %128

81:                                               ; preds = %70
  %82 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.64)
  br i1 %82, label %129, label %128

83:                                               ; preds = %3
  %84 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.66)
  br i1 %84, label %129, label %85

85:                                               ; preds = %83
  %86 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.68)
  br i1 %86, label %129, label %87

87:                                               ; preds = %85
  %88 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.70)
  br i1 %88, label %129, label %128

89:                                               ; preds = %3
  %90 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.72)
  br i1 %90, label %129, label %91

91:                                               ; preds = %89
  %92 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.74)
  br i1 %92, label %129, label %128

93:                                               ; preds = %3
  %94 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef 1)
  %95 = load i8, ptr %94, align 1, !tbaa !5
  switch i8 %95, label %128 [
    i8 97, label %96
    i8 103, label %100
    i8 111, label %102
    i8 120, label %104
  ]

96:                                               ; preds = %93
  %97 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.76)
  br i1 %97, label %129, label %98

98:                                               ; preds = %96
  %99 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.78)
  br i1 %99, label %129, label %128

100:                                              ; preds = %93
  %101 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.80)
  br i1 %101, label %129, label %128

102:                                              ; preds = %93
  %103 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.82)
  br i1 %103, label %129, label %128

104:                                              ; preds = %93
  %105 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.84)
  br i1 %105, label %129, label %128

106:                                              ; preds = %3
  %107 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef 1)
  %108 = load i8, ptr %107, align 1, !tbaa !5
  switch i8 %108, label %128 [
    i8 97, label %109
    i8 101, label %111
    i8 109, label %113
  ]

109:                                              ; preds = %106
  %110 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.85)
  br i1 %110, label %129, label %128

111:                                              ; preds = %106
  %112 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.87)
  br i1 %112, label %129, label %128

113:                                              ; preds = %106
  %114 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.89)
  br i1 %114, label %129, label %115

115:                                              ; preds = %113
  %116 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.91)
  br i1 %116, label %129, label %128

117:                                              ; preds = %3
  %118 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef 1)
  %119 = load i8, ptr %118, align 1, !tbaa !5
  switch i8 %119, label %128 [
    i8 104, label %120
    i8 108, label %122
    i8 109, label %124
  ]

120:                                              ; preds = %117
  %121 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.93)
  br i1 %121, label %129, label %128

122:                                              ; preds = %117
  %123 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.95)
  br i1 %123, label %129, label %128

124:                                              ; preds = %117
  %125 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.97)
  br i1 %125, label %129, label %128

126:                                              ; preds = %3
  %127 = tail call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull @.str.99)
  br i1 %127, label %129, label %128

128:                                              ; preds = %126, %117, %120, %122, %124, %106, %109, %111, %115, %93, %98, %100, %102, %104, %91, %87, %70, %73, %75, %77, %79, %81, %68, %49, %52, %54, %56, %58, %60, %66, %47, %36, %41, %45, %34, %32, %28, %24, %20, %18, %14, %10
  br label %129

129:                                              ; preds = %128, %10, %12, %14, %16, %18, %20, %22, %24, %26, %28, %30, %32, %34, %39, %41, %43, %45, %47, %52, %54, %56, %58, %60, %62, %64, %66, %68, %73, %75, %77, %79, %81, %83, %85, %87, %89, %91, %96, %98, %100, %102, %104, %109, %111, %113, %115, %120, %122, %124, %126, %3, %1
  %.1 = phi ptr [ null, %1 ], [ null, %128 ], [ @.str.6, %10 ], [ @.str.8, %12 ], [ @.str.10, %14 ], [ @.str.12, %16 ], [ @.str.14, %18 ], [ @.str.16, %20 ], [ @.str.18, %22 ], [ @.str.20, %24 ], [ @.str.22, %26 ], [ @.str.24, %28 ], [ @.str.26, %30 ], [ @.str.26, %32 ], [ @.str.29, %34 ], [ @.str.31, %39 ], [ @.str.33, %41 ], [ @.str.35, %43 ], [ @.str.35, %45 ], [ @.str.38, %47 ], [ @.str.40, %52 ], [ @.str.42, %54 ], [ @.str.44, %56 ], [ @.str.46, %58 ], [ @.str.48, %60 ], [ @.str.50, %62 ], [ @.str.42, %64 ], [ @.str.53, %66 ], [ @.str.55, %68 ], [ @.str.57, %73 ], [ @.str.59, %75 ], [ @.str.61, %77 ], [ @.str.63, %79 ], [ @.str.65, %81 ], [ @.str.67, %83 ], [ @.str.69, %85 ], [ @.str.71, %87 ], [ @.str.73, %89 ], [ @.str.75, %91 ], [ @.str.77, %96 ], [ @.str.79, %98 ], [ @.str.81, %100 ], [ @.str.83, %102 ], [ @.str.10, %104 ], [ @.str.86, %109 ], [ @.str.88, %111 ], [ @.str.90, %113 ], [ @.str.92, %115 ], [ @.str.94, %120 ], [ @.str.96, %122 ], [ @.str.98, %124 ], [ @.str.100, %126 ], [ null, %3 ]
  ret ptr %.1
}

; Function Attrs: mustprogress uwtable
declare hidden ptr @"_ZSt9transformIN9__gnu_cxx17__normal_iteratorIPcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEES9_ZN4tagd4file14ext_media_typeES8_E3$_0ET0_T_SE_SD_T1_"(ptr, ptr, ptr) local_unnamed_addr #1

; Function Attrs: mustprogress nounwind uwtable
declare ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5beginEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE3endEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32), i64 noundef) local_unnamed_addr #0 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #2

attributes #0 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"omnipotent char", !7, i64 0}
!7 = !{!"Simple C++ TBAA"}


; Effective O3 passes: EarlyCSEPass,GlobalOptPass,InferFunctionAttrsPass,InstCombinePass,PostOrderFunctionAttrsPass,SROAPass,SimplifyCFGPass,TailCallElimPass