Skip to content

Instantly share code, notes, and snippets.

@ethanc8
Created June 4, 2024 17:18
Show Gist options
  • Save ethanc8/d02ef13441e1eb58d372cf650fa3f63b to your computer and use it in GitHub Desktop.
Save ethanc8/d02ef13441e1eb58d372cf650fa3f63b to your computer and use it in GitHub Desktop.
; ModuleID = 'CAAnimation.m'
source_filename = "CAAnimation.m"
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-pc-linux-gnu"
%struct.CATransform3D = type { double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double }
%struct._NSPoint = type { double, double }
%struct._NSSize = type { double, double }
%struct._NSRect = type { %struct._NSPoint, %struct._NSSize }
%struct._GSQuartzCoreQuaternion = type { double, double, double, double }
$.objcv2_load_function = comdat any
$.objc_str_CAAnimationDiscrete = comdat any
$.objc_sel_name_takeNoteThatNextFrameTimeChanged = comdat any
$".objc_sel_types_v16\010:8" = comdat any
$".objc_selector_takeNoteThatNextFrameTimeChanged_v16\010:8" = comdat any
$.objc_sel_name_count = comdat any
$".objc_sel_types_Q16\010:8" = comdat any
$".objc_selector_count_Q16\010:8" = comdat any
$".objc_sel_name_pointerAtIndex:" = comdat any
$".objc_sel_types_^v24\010:8Q16" = comdat any
$".objc_selector_pointerAtIndex:_^v24\010:8Q16" = comdat any
$.objc_str_Animation_already_added_to_this_layer = comdat any
$".objc_sel_name_raise:format:" = comdat any
$".objc_sel_types_v32\010:8\0116\0124" = comdat any
$".objc_selector_raise:format:_v32\010:8\0116\0124" = comdat any
$".objc_sel_name_addPointer:" = comdat any
$".objc_sel_types_v24\010:8^v16" = comdat any
$".objc_selector_addPointer:_v24\010:8^v16" = comdat any
$".objc_sel_name_removePointerAtIndex:" = comdat any
$".objc_sel_types_v24\010:8Q16" = comdat any
$".objc_selector_removePointerAtIndex:_v24\010:8Q16" = comdat any
$.objc_sel_name_alloc = comdat any
$".objc_sel_types_\0116\010:8" = comdat any
$".objc_selector_alloc_\0116\010:8" = comdat any
$.objc_sel_name_init = comdat any
$".objc_selector_init_\0116\010:8" = comdat any
$.objc_sel_name_autorelease = comdat any
$".objc_selector_autorelease_\0116\010:8" = comdat any
$".objc_sel_name_isEqualToString:" = comdat any
$".objc_sel_types_C24\010:8\0116" = comdat any
$".objc_selector_isEqualToString:_C24\010:8\0116" = comdat any
$.objc_str_removedOnCompletion = comdat any
$".objc_sel_name_numberWithBool:" = comdat any
$".objc_sel_types_\0120\010:8C16" = comdat any
$".objc_selector_numberWithBool:_\0120\010:8C16" = comdat any
$.objc_str_timingFunction = comdat any
$".objc_sel_name_numberWithFloat:" = comdat any
$".objc_sel_types_\0120\010:8f16" = comdat any
$".objc_selector_numberWithFloat:_\0120\010:8f16" = comdat any
$.objc_str_autoreverses = comdat any
$.objc_str_repeatCount = comdat any
$.objc_selector_init_ = comdat any
$.objc_sel_name_class = comdat any
$".objc_sel_types_#16\010:8" = comdat any
$".objc_selector_class_#16\010:8" = comdat any
$".objc_sel_name_defaultValueForKey:" = comdat any
$".objc_sel_types_\0124\010:8\0116" = comdat any
$".objc_selector_defaultValueForKey:_\0124\010:8\0116" = comdat any
$".objc_sel_name_setValue:forKey:" = comdat any
$".objc_selector_setValue:forKey:_v32\010:8\0116\0124" = comdat any
$.objc_sel_name_weakObjectsPointerArray = comdat any
$".objc_selector_weakObjectsPointerArray_\0116\010:8" = comdat any
$.objc_sel_name_retain = comdat any
$".objc_selector_retain_\0116\010:8" = comdat any
$".objc_sel_name_containsValueForKey:" = comdat any
$".objc_selector_containsValueForKey:_C24\010:8\0116" = comdat any
$".objc_sel_name_decodeObjectForKey:" = comdat any
$".objc_selector_decodeObjectForKey:_\0124\010:8\0116" = comdat any
$".objc_sel_name_shouldArchiveValueForKey:" = comdat any
$".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116" = comdat any
$".objc_sel_name_encodeWithCoder:" = comdat any
$".objc_sel_types_v24\010:8\0116" = comdat any
$".objc_selector_encodeWithCoder:_v24\010:8\0116" = comdat any
$".objc_sel_name_allocWithZone:" = comdat any
$".objc_sel_types_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16" = comdat any
$".objc_selector_allocWithZone:_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16" = comdat any
$".objc_sel_name_valueForKey:" = comdat any
$".objc_selector_valueForKey:_\0124\010:8\0116" = comdat any
$.objc_sel_name_release = comdat any
$".objc_sel_types_Vv16\010:8" = comdat any
$".objc_selector_release_Vv16\010:8" = comdat any
$.objc_sel_name_dealloc = comdat any
$.objc_selector_dealloc_ = comdat any
$.objc_sel_name_beginTime = comdat any
$".objc_sel_types_d16\010:8" = comdat any
$".objc_selector_beginTime_d16\010:8" = comdat any
$.objc_sel_name_speed = comdat any
$".objc_sel_types_f16\010:8" = comdat any
$".objc_selector_speed_f16\010:8" = comdat any
$.objc_sel_name_timeOffset = comdat any
$".objc_selector_timeOffset_d16\010:8" = comdat any
$.objc_sel_name_localTime = comdat any
$".objc_selector_localTime_d16\010:8" = comdat any
$".objc_sel_name_activeTimeWithTimeAuthorityLocalTime:" = comdat any
$".objc_sel_types_d24\010:8d16" = comdat any
$".objc_selector_activeTimeWithTimeAuthorityLocalTime:_d24\010:8d16" = comdat any
$.objc_sel_name_duration = comdat any
$".objc_selector_duration_d16\010:8" = comdat any
$.objc_sel_name_autoreverses = comdat any
$".objc_sel_types_C16\010:8" = comdat any
$".objc_selector_autoreverses_C16\010:8" = comdat any
$".objc_sel_name_addAnimation:forKey:" = comdat any
$".objc_selector_addAnimation:forKey:_v32\010:8\0116\0124" = comdat any
$.objc_sel_name_animation = comdat any
$".objc_selector_animation_\0116\010:8" = comdat any
$".objc_sel_name_setBeginTime:" = comdat any
$".objc_sel_types_v24\010:8d16" = comdat any
$".objc_selector_setBeginTime:_v24\010:8d16" = comdat any
$".objc_sel_name_handleAddedToLayer:" = comdat any
$".objc_selector_handleAddedToLayer:_v24\010:8\0116" = comdat any
$".objc_sel_name_handleRemovedFromLayer:" = comdat any
$".objc_selector_handleRemovedFromLayer:_v24\010:8\0116" = comdat any
$".objc_sel_name_initWithCoder:" = comdat any
$".objc_selector_initWithCoder:_\0124\010:8\0116" = comdat any
$".objc_sel_name_copyWithZone:" = comdat any
$".objc_selector_copyWithZone:_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16" = comdat any
$".objc_selector_dealloc_v16\010:8" = comdat any
$".objc_sel_name_localTimeWithTimeAuthority:" = comdat any
$".objc_sel_types_d24\010:8\0116" = comdat any
$".objc_selector_localTimeWithTimeAuthority:_d24\010:8\0116" = comdat any
$".objc_sel_name_runActionForKey:object:arguments:" = comdat any
$".objc_sel_types_v40\010:8\0116\0124\0132" = comdat any
$".objc_selector_runActionForKey:object:arguments:_v40\010:8\0116\0124\0132" = comdat any
$.objc_sel_name_delegate = comdat any
$".objc_selector_delegate_\0116\010:8" = comdat any
$".objc_sel_name_setDelegate:" = comdat any
$".objc_selector_setDelegate:_v24\010:8\0116" = comdat any
$.objc_sel_name_timingFunction = comdat any
$".objc_selector_timingFunction_\0116\010:8" = comdat any
$".objc_sel_name_setTimingFunction:" = comdat any
$".objc_selector_setTimingFunction:_v24\010:8\0116" = comdat any
$.objc_sel_name_removedOnCompletion = comdat any
$".objc_selector_removedOnCompletion_C16\010:8" = comdat any
$".objc_sel_name_setRemovedOnCompletion:" = comdat any
$".objc_sel_types_v20\010:8C16" = comdat any
$".objc_selector_setRemovedOnCompletion:_v20\010:8C16" = comdat any
$".objc_sel_name_setTimeOffset:" = comdat any
$".objc_selector_setTimeOffset:_v24\010:8d16" = comdat any
$.objc_sel_name_repeatCount = comdat any
$".objc_selector_repeatCount_f16\010:8" = comdat any
$".objc_sel_name_setRepeatCount:" = comdat any
$".objc_sel_types_v20\010:8f16" = comdat any
$".objc_selector_setRepeatCount:_v20\010:8f16" = comdat any
$.objc_sel_name_repeatDuration = comdat any
$".objc_selector_repeatDuration_f16\010:8" = comdat any
$".objc_sel_name_setRepeatDuration:" = comdat any
$".objc_selector_setRepeatDuration:_v20\010:8f16" = comdat any
$".objc_sel_name_setAutoreverses:" = comdat any
$".objc_selector_setAutoreverses:_v20\010:8C16" = comdat any
$.objc_sel_name_fillMode = comdat any
$".objc_selector_fillMode_\0116\010:8" = comdat any
$".objc_sel_name_setFillMode:" = comdat any
$".objc_selector_setFillMode:_v24\010:8\0116" = comdat any
$".objc_sel_name_setDuration:" = comdat any
$".objc_selector_setDuration:_v24\010:8d16" = comdat any
$".objc_sel_name_setSpeed:" = comdat any
$".objc_selector_setSpeed:_v20\010:8f16" = comdat any
$.objc_sel_name_layers = comdat any
$".objc_selector_layers_\0116\010:8" = comdat any
$".objc_sel_name_setLayers:" = comdat any
$".objc_selector_setLayers:_v24\010:8\0116" = comdat any
$".objc_sel_types_v24\010:8\01\22NSCoder\2216" = comdat any
$".objc_sel_types_\0124\010:8\01\22NSCoder\2216" = comdat any
$._OBJC_PROTOCOL_NSCoding = comdat any
$._OBJC_PROTOCOL_NSCopying = comdat any
$".objc_sel_types_v40\010:8\01\22NSString\2216\0124\01\22NSDictionary\2232" = comdat any
$._OBJC_PROTOCOL_CAAction = comdat any
$".objc_sel_types_\01\22NSString\2216\010:8" = comdat any
$".objc_sel_types_v24\010:8\01\22NSString\2216" = comdat any
$.objc_sel_name_activeTime = comdat any
$".objc_selector_activeTime_d16\010:8" = comdat any
$".objc_sel_types_d24\010:8\01\22<CAMediaTiming>\2216" = comdat any
$._OBJC_PROTOCOL_CAMediaTiming = comdat any
$".objc_sel_name_initWithKeyPath:" = comdat any
$".objc_selector_initWithKeyPath:_\0124\010:8\0116" = comdat any
$.objc_str_cumulative = comdat any
$.objc_str_valueFunction = comdat any
$".objc_selector_defaultValueForKey:_" = comdat any
$".objc_sel_name_setKeyPath:" = comdat any
$".objc_selector_setKeyPath:_v24\010:8\0116" = comdat any
$".objc_selector_copyWithZone:_" = comdat any
$.objc_sel_name_modelLayer = comdat any
$".objc_selector_modelLayer_\0116\010:8" = comdat any
$.objc_sel_name_keyPath = comdat any
$".objc_selector_keyPath_\0116\010:8" = comdat any
$".objc_sel_name_valueForKeyPath:" = comdat any
$".objc_selector_valueForKeyPath:_\0124\010:8\0116" = comdat any
$".objc_sel_name_calculatedAnimationValueAtTime:onLayer:" = comdat any
$".objc_sel_types_\0132\010:8d16\0124" = comdat any
$".objc_selector_calculatedAnimationValueAtTime:onLayer:_\0132\010:8d16\0124" = comdat any
$".objc_sel_name_setValue:forKeyPath:" = comdat any
$".objc_selector_setValue:forKeyPath:_v32\010:8\0116\0124" = comdat any
$".objc_sel_name_animationWithKeyPath:" = comdat any
$".objc_selector_animationWithKeyPath:_\0124\010:8\0116" = comdat any
$".objc_sel_name_applyToLayer:" = comdat any
$".objc_selector_applyToLayer:_v24\010:8\0116" = comdat any
$.objc_sel_name_isAdditive = comdat any
$".objc_selector_isAdditive_C16\010:8" = comdat any
$".objc_sel_name_setAdditive:" = comdat any
$".objc_selector_setAdditive:_v20\010:8C16" = comdat any
$.objc_sel_name_isCumulative = comdat any
$".objc_selector_isCumulative_C16\010:8" = comdat any
$".objc_sel_name_setCumulative:" = comdat any
$".objc_selector_setCumulative:_v20\010:8C16" = comdat any
$.objc_sel_name_valueFunction = comdat any
$".objc_selector_valueFunction_\0116\010:8" = comdat any
$".objc_sel_name_setValueFunction:" = comdat any
$".objc_selector_setValueFunction:_v24\010:8\0116" = comdat any
$".objc_sel_name_evaluateYAtX:" = comdat any
$".objc_selector_evaluateYAtX:_d24\010:8d16" = comdat any
$".objc_sel_name_isKindOfClass:" = comdat any
$".objc_sel_types_C24\010:8#16" = comdat any
$".objc_selector_isKindOfClass:_C24\010:8#16" = comdat any
$.objc_sel_name_floatValue = comdat any
$".objc_selector_floatValue_f16\010:8" = comdat any
$.objc_sel_name_objCType = comdat any
$".objc_sel_types_r*16\010:8" = comdat any
$".objc_selector_objCType_r*16\010:8" = comdat any
$.objc_sel_name_pointValue = comdat any
$".objc_sel_types_{_NSPoint=dd}16\010:8" = comdat any
$".objc_selector_pointValue_{_NSPoint=dd}16\010:8" = comdat any
$".objc_sel_name_valueWithBytes:objCType:" = comdat any
$".objc_sel_types_\0132\010:8r^v16r*24" = comdat any
$".objc_selector_valueWithBytes:objCType:_\0132\010:8r^v16r*24" = comdat any
$".objc_sel_name_valueWithPoint:" = comdat any
$".objc_sel_types_\0132\010:8{_NSPoint=dd}16" = comdat any
$".objc_selector_valueWithPoint:_\0132\010:8{_NSPoint=dd}16" = comdat any
$".objc_sel_name_getValue:" = comdat any
$".objc_selector_getValue:_v24\010:8^v16" = comdat any
$.objc_sel_name_sizeValue = comdat any
$".objc_sel_types_{_NSSize=dd}16\010:8" = comdat any
$".objc_selector_sizeValue_{_NSSize=dd}16\010:8" = comdat any
$".objc_sel_name_valueWithSize:" = comdat any
$".objc_sel_types_\0132\010:8{_NSSize=dd}16" = comdat any
$".objc_selector_valueWithSize:_\0132\010:8{_NSSize=dd}16" = comdat any
$.objc_sel_name_rectValue = comdat any
$".objc_sel_types_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8" = comdat any
$".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8" = comdat any
$".objc_sel_name_valueWithRect:" = comdat any
$".objc_sel_types_\0148\010:8{_NSRect={_NSPoint=dd}{_NSSize=dd}}16" = comdat any
$".objc_selector_valueWithRect:_\0148\010:8{_NSRect={_NSPoint=dd}{_NSSize=dd}}16" = comdat any
$.objc_sel_name_CATransform3DValue = comdat any
$".objc_sel_types_{CATransform3D=dddddddddddddddd}16\010:8" = comdat any
$".objc_selector_CATransform3DValue_{CATransform3D=dddddddddddddddd}16\010:8" = comdat any
$".objc_sel_name_valueWithCATransform3D:" = comdat any
$".objc_sel_types_\01144\010:8{CATransform3D=dddddddddddddddd}16" = comdat any
$".objc_selector_valueWithCATransform3D:_\01144\010:8{CATransform3D=dddddddddddddddd}16" = comdat any
$.objc_sel_name_fromValue = comdat any
$".objc_selector_fromValue_\0116\010:8" = comdat any
$".objc_sel_name_setFromValue:" = comdat any
$".objc_selector_setFromValue:_v24\010:8\0116" = comdat any
$.objc_sel_name_byValue = comdat any
$".objc_selector_byValue_\0116\010:8" = comdat any
$".objc_sel_name_setByValue:" = comdat any
$".objc_selector_setByValue:_v24\010:8\0116" = comdat any
$.objc_sel_name_toValue = comdat any
$".objc_selector_toValue_\0116\010:8" = comdat any
$".objc_sel_name_setToValue:" = comdat any
$".objc_selector_setToValue:_v24\010:8\0116" = comdat any
$.objc_sel_name_calculationMode = comdat any
$".objc_selector_calculationMode_\0116\010:8" = comdat any
$".objc_sel_name_setCalculationMode:" = comdat any
$".objc_selector_setCalculationMode:_v24\010:8\0116" = comdat any
$.objc_sel_name_values = comdat any
$".objc_selector_values_\0116\010:8" = comdat any
$".objc_sel_name_setValues:" = comdat any
$".objc_selector_setValues:_v24\010:8\0116" = comdat any
$.objc_sel_name_mass = comdat any
$".objc_selector_mass_d16\010:8" = comdat any
$".objc_sel_name_setMass:" = comdat any
$".objc_selector_setMass:_v24\010:8d16" = comdat any
$.objc_sel_name_stiffness = comdat any
$".objc_selector_stiffness_d16\010:8" = comdat any
$".objc_sel_name_setStiffness:" = comdat any
$".objc_selector_setStiffness:_v24\010:8d16" = comdat any
$.objc_sel_name_damping = comdat any
$".objc_selector_damping_d16\010:8" = comdat any
$".objc_sel_name_setDamping:" = comdat any
$".objc_selector_setDamping:_v24\010:8d16" = comdat any
$.objc_sel_name_initialVelocity = comdat any
$".objc_selector_initialVelocity_d16\010:8" = comdat any
$".objc_sel_name_setInitialVelocity:" = comdat any
$".objc_selector_setInitialVelocity:_v24\010:8d16" = comdat any
$.objc_sel_name_settlingDuration = comdat any
$".objc_selector_settlingDuration_d16\010:8" = comdat any
$.objc_sel_name_type = comdat any
$".objc_selector_type_\0116\010:8" = comdat any
$".objc_sel_name_setType:" = comdat any
$".objc_selector_setType:_v24\010:8\0116" = comdat any
$.objc_sel_name_subtype = comdat any
$".objc_selector_subtype_\0116\010:8" = comdat any
$".objc_sel_name_setSubtype:" = comdat any
$".objc_selector_setSubtype:_v24\010:8\0116" = comdat any
$.objc_init = comdat any
$.objc_ctor = comdat any
$.objc_null_selector = comdat any
$.objc_null_category = comdat any
$.objc_null_protocol_ref = comdat any
$.objc_null_class_alias = comdat any
@._OBJC_CLASS_NSConstantString = external global ptr
@0 = private unnamed_addr constant [20 x i8] c"CAAnimationDiscrete\00", align 1
@.objc_str_CAAnimationDiscrete = linkonce_odr hidden global { ptr, i32, i32, i32, i32, ptr } { ptr @._OBJC_CLASS_NSConstantString, i32 0, i32 19, i32 19, i32 0, ptr @0 }, section "__objc_constant_string", comdat, align 8
@kCAAnimationDiscrete = local_unnamed_addr constant ptr @.objc_str_CAAnimationDiscrete, align 8, !dbg !0
@__objc_ivar_offset_CAAnimation._beginTime.d = global i32 24
@.objc_sel_name_takeNoteThatNextFrameTimeChanged = linkonce_odr hidden constant [33 x i8] c"takeNoteThatNextFrameTimeChanged\00", comdat
@".objc_sel_types_v16\010:8" = linkonce_odr hidden constant [8 x i8] c"v16@0:8\00", comdat
@".objc_selector_takeNoteThatNextFrameTimeChanged_v16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_takeNoteThatNextFrameTimeChanged, ptr @".objc_sel_types_v16\010:8" }, section "__objc_selectors", comdat, align 8
@"__objc_ivar_offset_CAAnimation._layers.\01" = global i32 80
@.objc_sel_name_count = linkonce_odr hidden constant [6 x i8] c"count\00", comdat
@".objc_sel_types_Q16\010:8" = linkonce_odr hidden constant [8 x i8] c"Q16@0:8\00", comdat
@".objc_selector_count_Q16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_count, ptr @".objc_sel_types_Q16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_pointerAtIndex:" = linkonce_odr hidden constant [16 x i8] c"pointerAtIndex:\00", comdat
@".objc_sel_types_^v24\010:8Q16" = linkonce_odr hidden constant [12 x i8] c"^v24@0:8Q16\00", comdat
@".objc_selector_pointerAtIndex:_^v24\010:8Q16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_pointerAtIndex:", ptr @".objc_sel_types_^v24\010:8Q16" }, section "__objc_selectors", comdat, align 8
@._OBJC_REF_CLASS_NSException = external local_unnamed_addr global ptr
@NSGenericException = external local_unnamed_addr constant ptr, align 8
@1 = private unnamed_addr constant [38 x i8] c"Animation already added to this layer\00", align 1
@.objc_str_Animation_already_added_to_this_layer = linkonce_odr hidden global { ptr, i32, i32, i32, i32, ptr } { ptr @._OBJC_CLASS_NSConstantString, i32 0, i32 37, i32 37, i32 0, ptr @1 }, section "__objc_constant_string", comdat, align 8
@".objc_sel_name_raise:format:" = linkonce_odr hidden constant [14 x i8] c"raise:format:\00", comdat
@".objc_sel_types_v32\010:8\0116\0124" = linkonce_odr hidden constant [14 x i8] c"v32@0:8@16@24\00", comdat
@".objc_selector_raise:format:_v32\010:8\0116\0124" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_raise:format:", ptr @".objc_sel_types_v32\010:8\0116\0124" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_addPointer:" = linkonce_odr hidden constant [12 x i8] c"addPointer:\00", comdat
@".objc_sel_types_v24\010:8^v16" = linkonce_odr hidden constant [12 x i8] c"v24@0:8^v16\00", comdat
@".objc_selector_addPointer:_v24\010:8^v16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_addPointer:", ptr @".objc_sel_types_v24\010:8^v16" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_removePointerAtIndex:" = linkonce_odr hidden constant [22 x i8] c"removePointerAtIndex:\00", comdat
@".objc_sel_types_v24\010:8Q16" = linkonce_odr hidden constant [11 x i8] c"v24@0:8Q16\00", comdat
@".objc_selector_removePointerAtIndex:_v24\010:8Q16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_removePointerAtIndex:", ptr @".objc_sel_types_v24\010:8Q16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_alloc = linkonce_odr hidden constant [6 x i8] c"alloc\00", comdat
@".objc_sel_types_\0116\010:8" = linkonce_odr hidden constant [8 x i8] c"@16@0:8\00", comdat
@".objc_selector_alloc_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_alloc, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_init = linkonce_odr hidden constant [5 x i8] c"init\00", comdat
@".objc_selector_init_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_init, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_autorelease = linkonce_odr hidden constant [12 x i8] c"autorelease\00", comdat
@".objc_selector_autorelease_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_autorelease, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_isEqualToString:" = linkonce_odr hidden constant [17 x i8] c"isEqualToString:\00", comdat
@".objc_sel_types_C24\010:8\0116" = linkonce_odr hidden constant [11 x i8] c"C24@0:8@16\00", comdat
@".objc_selector_isEqualToString:_C24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_isEqualToString:", ptr @".objc_sel_types_C24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@2 = private unnamed_addr constant [20 x i8] c"removedOnCompletion\00", align 1
@.objc_str_removedOnCompletion = linkonce_odr hidden global { ptr, i32, i32, i32, i32, ptr } { ptr @._OBJC_CLASS_NSConstantString, i32 0, i32 19, i32 19, i32 0, ptr @2 }, section "__objc_constant_string", comdat, align 8
@._OBJC_REF_CLASS_NSNumber = external local_unnamed_addr global ptr
@".objc_sel_name_numberWithBool:" = linkonce_odr hidden constant [16 x i8] c"numberWithBool:\00", comdat
@".objc_sel_types_\0120\010:8C16" = linkonce_odr hidden constant [11 x i8] c"@20@0:8C16\00", comdat
@".objc_selector_numberWithBool:_\0120\010:8C16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_numberWithBool:", ptr @".objc_sel_types_\0120\010:8C16" }, section "__objc_selectors", comdat, align 8
@3 = private unnamed_addr constant [15 x i8] c"timingFunction\00", align 1
@.objc_str_timingFunction = linkonce_odr hidden global { ptr, i32, i32, i32, i32, ptr } { ptr @._OBJC_CLASS_NSConstantString, i32 0, i32 14, i32 14, i32 0, ptr @3 }, section "__objc_constant_string", comdat, align 8
@".objc_sel_name_numberWithFloat:" = linkonce_odr hidden constant [17 x i8] c"numberWithFloat:\00", comdat
@".objc_sel_types_\0120\010:8f16" = linkonce_odr hidden constant [11 x i8] c"@20@0:8f16\00", comdat
@".objc_selector_numberWithFloat:_\0120\010:8f16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_numberWithFloat:", ptr @".objc_sel_types_\0120\010:8f16" }, section "__objc_selectors", comdat, align 8
@4 = private unnamed_addr constant [13 x i8] c"autoreverses\00", align 1
@.objc_str_autoreverses = linkonce_odr hidden global { ptr, i32, i32, i32, i32, ptr } { ptr @._OBJC_CLASS_NSConstantString, i32 0, i32 12, i32 12, i32 0, ptr @4 }, section "__objc_constant_string", comdat, align 8
@5 = private unnamed_addr constant [12 x i8] c"repeatCount\00", align 1
@.objc_str_repeatCount = linkonce_odr hidden global { ptr, i32, i32, i32, i32, ptr } { ptr @._OBJC_CLASS_NSConstantString, i32 0, i32 11, i32 11, i32 0, ptr @5 }, section "__objc_constant_string", comdat, align 8
@.objc_selector_init_ = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_init, ptr null }, section "__objc_selectors", comdat, align 8
@._OBJC_REF_CLASS_NSObject = external local_unnamed_addr global ptr
@.objc_sel_name_class = linkonce_odr hidden constant [6 x i8] c"class\00", comdat
@".objc_sel_types_#16\010:8" = linkonce_odr hidden constant [8 x i8] c"#16@0:8\00", comdat
@".objc_selector_class_#16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_class, ptr @".objc_sel_types_#16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_defaultValueForKey:" = linkonce_odr hidden constant [20 x i8] c"defaultValueForKey:\00", comdat
@".objc_sel_types_\0124\010:8\0116" = linkonce_odr hidden constant [11 x i8] c"@24@0:8@16\00", comdat
@".objc_selector_defaultValueForKey:_\0124\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_defaultValueForKey:", ptr @".objc_sel_types_\0124\010:8\0116" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setValue:forKey:" = linkonce_odr hidden constant [17 x i8] c"setValue:forKey:\00", comdat
@".objc_selector_setValue:forKey:_v32\010:8\0116\0124" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setValue:forKey:", ptr @".objc_sel_types_v32\010:8\0116\0124" }, section "__objc_selectors", comdat, align 8
@._OBJC_REF_CLASS_NSPointerArray = external local_unnamed_addr global ptr
@.objc_sel_name_weakObjectsPointerArray = linkonce_odr hidden constant [24 x i8] c"weakObjectsPointerArray\00", comdat
@".objc_selector_weakObjectsPointerArray_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_weakObjectsPointerArray, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_retain = linkonce_odr hidden constant [7 x i8] c"retain\00", comdat
@".objc_selector_retain_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_retain, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_containsValueForKey:" = linkonce_odr hidden constant [21 x i8] c"containsValueForKey:\00", comdat
@".objc_selector_containsValueForKey:_C24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_containsValueForKey:", ptr @".objc_sel_types_C24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_decodeObjectForKey:" = linkonce_odr hidden constant [20 x i8] c"decodeObjectForKey:\00", comdat
@".objc_selector_decodeObjectForKey:_\0124\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_decodeObjectForKey:", ptr @".objc_sel_types_\0124\010:8\0116" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_shouldArchiveValueForKey:" = linkonce_odr hidden constant [26 x i8] c"shouldArchiveValueForKey:\00", comdat
@".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_shouldArchiveValueForKey:", ptr @".objc_sel_types_C24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_encodeWithCoder:" = linkonce_odr hidden constant [17 x i8] c"encodeWithCoder:\00", comdat
@".objc_sel_types_v24\010:8\0116" = linkonce_odr hidden constant [11 x i8] c"v24@0:8@16\00", comdat
@".objc_selector_encodeWithCoder:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_encodeWithCoder:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_allocWithZone:" = linkonce_odr hidden constant [15 x i8] c"allocWithZone:\00", comdat
@".objc_sel_types_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16" = linkonce_odr hidden constant [47 x i8] c"@24@0:8^{_NSZone=^?^?^?^?^?^?^?Q@^{_NSZone}}16\00", comdat
@".objc_selector_allocWithZone:_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_allocWithZone:", ptr @".objc_sel_types_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_valueForKey:" = linkonce_odr hidden constant [13 x i8] c"valueForKey:\00", comdat
@".objc_selector_valueForKey:_\0124\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_valueForKey:", ptr @".objc_sel_types_\0124\010:8\0116" }, section "__objc_selectors", comdat, align 8
@"__objc_ivar_offset_CAAnimation._timingFunction.\01" = global i32 8
@.objc_sel_name_release = linkonce_odr hidden constant [8 x i8] c"release\00", comdat
@".objc_sel_types_Vv16\010:8" = linkonce_odr hidden constant [9 x i8] c"Vv16@0:8\00", comdat
@".objc_selector_release_Vv16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_release, ptr @".objc_sel_types_Vv16\010:8" }, section "__objc_selectors", comdat, align 8
@"__objc_ivar_offset_CAAnimation._fillMode.\01" = global i32 56
@.objc_sel_name_dealloc = linkonce_odr hidden constant [8 x i8] c"dealloc\00", comdat
@.objc_selector_dealloc_ = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_dealloc, ptr null }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_beginTime = linkonce_odr hidden constant [10 x i8] c"beginTime\00", comdat
@".objc_sel_types_d16\010:8" = linkonce_odr hidden constant [8 x i8] c"d16@0:8\00", comdat
@".objc_selector_beginTime_d16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_beginTime, ptr @".objc_sel_types_d16\010:8" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_speed = linkonce_odr hidden constant [6 x i8] c"speed\00", comdat
@".objc_sel_types_f16\010:8" = linkonce_odr hidden constant [8 x i8] c"f16@0:8\00", comdat
@".objc_selector_speed_f16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_speed, ptr @".objc_sel_types_f16\010:8" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_timeOffset = linkonce_odr hidden constant [11 x i8] c"timeOffset\00", comdat
@".objc_selector_timeOffset_d16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_timeOffset, ptr @".objc_sel_types_d16\010:8" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_localTime = linkonce_odr hidden constant [10 x i8] c"localTime\00", comdat
@".objc_selector_localTime_d16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_localTime, ptr @".objc_sel_types_d16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_activeTimeWithTimeAuthorityLocalTime:" = linkonce_odr hidden constant [38 x i8] c"activeTimeWithTimeAuthorityLocalTime:\00", comdat
@".objc_sel_types_d24\010:8d16" = linkonce_odr hidden constant [11 x i8] c"d24@0:8d16\00", comdat
@".objc_selector_activeTimeWithTimeAuthorityLocalTime:_d24\010:8d16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_activeTimeWithTimeAuthorityLocalTime:", ptr @".objc_sel_types_d24\010:8d16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_duration = linkonce_odr hidden constant [9 x i8] c"duration\00", comdat
@".objc_selector_duration_d16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_duration, ptr @".objc_sel_types_d16\010:8" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_autoreverses = linkonce_odr hidden constant [13 x i8] c"autoreverses\00", comdat
@".objc_sel_types_C16\010:8" = linkonce_odr hidden constant [8 x i8] c"C16@0:8\00", comdat
@".objc_selector_autoreverses_C16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_autoreverses, ptr @".objc_sel_types_C16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_addAnimation:forKey:" = linkonce_odr hidden constant [21 x i8] c"addAnimation:forKey:\00", comdat
@".objc_selector_addAnimation:forKey:_v32\010:8\0116\0124" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_addAnimation:forKey:", ptr @".objc_sel_types_v32\010:8\0116\0124" }, section "__objc_selectors", comdat, align 8
@"__objc_ivar_offset_CAAnimation._delegate.\01" = global i32 0
@__objc_ivar_offset_CAAnimation._removedOnCompletion.C = global i32 16
@__objc_ivar_offset_CAAnimation._timeOffset.d = global i32 32
@__objc_ivar_offset_CAAnimation._repeatCount.f = global i32 40
@__objc_ivar_offset_CAAnimation._repeatDuration.f = global i32 44
@__objc_ivar_offset_CAAnimation._autoreverses.C = global i32 48
@__objc_ivar_offset_CAAnimation._duration.d = global i32 64
@__objc_ivar_offset_CAAnimation._speed.f = global i32 72
@6 = private unnamed_addr constant [12 x i8] c"CAAnimation\00", align 1
@.objc_sel_name_animation = linkonce_odr hidden constant [10 x i8] c"animation\00", comdat
@".objc_selector_animation_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_animation, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@7 = private unnamed_addr constant [8 x i8] c"@16@0:8\00", align 1
@8 = private unnamed_addr constant [21 x i8] c"@24@0:8@\22NSString\2216\00", align 1
@9 = private unnamed_addr constant [21 x i8] c"C24@0:8@\22NSString\2216\00", align 1
@.objc_method_list = internal global { ptr, i32, i64, [3 x { ptr, ptr, ptr }] } { ptr null, i32 3, i64 24, [3 x { ptr, ptr, ptr }] [{ ptr, ptr, ptr } { ptr @_c_CAAnimation__animation, ptr @".objc_selector_animation_\0116\010:8", ptr @7 }, { ptr, ptr, ptr } { ptr @_c_CAAnimation__defaultValueForKey_, ptr @".objc_selector_defaultValueForKey:_\0124\010:8\0116", ptr @8 }, { ptr, ptr, ptr } { ptr @_c_CAAnimation__shouldArchiveValueForKey_, ptr @".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116", ptr @9 }] }, align 8
@._OBJC_METACLASS_CAAnimation = internal global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr null, ptr null, ptr @6, i64 0, i64 1, i64 0, ptr null, ptr @.objc_method_list, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, i64 0, ptr null }, align 8
@._OBJC_CLASS_NSObject = external global ptr
@10 = private unnamed_addr constant [10 x i8] c"_delegate\00", align 1
@11 = private unnamed_addr constant [2 x i8] c"@\00", align 1
@12 = private unnamed_addr constant [16 x i8] c"_timingFunction\00", align 1
@13 = private unnamed_addr constant [25 x i8] c"@\22CAMediaTimingFunction\22\00", align 1
@14 = private unnamed_addr constant [21 x i8] c"_removedOnCompletion\00", align 1
@15 = private unnamed_addr constant [2 x i8] c"C\00", align 1
@16 = private unnamed_addr constant [11 x i8] c"_beginTime\00", align 1
@17 = private unnamed_addr constant [2 x i8] c"d\00", align 1
@18 = private unnamed_addr constant [12 x i8] c"_timeOffset\00", align 1
@19 = private unnamed_addr constant [13 x i8] c"_repeatCount\00", align 1
@20 = private unnamed_addr constant [2 x i8] c"f\00", align 1
@21 = private unnamed_addr constant [16 x i8] c"_repeatDuration\00", align 1
@22 = private unnamed_addr constant [14 x i8] c"_autoreverses\00", align 1
@23 = private unnamed_addr constant [10 x i8] c"_fillMode\00", align 1
@24 = private unnamed_addr constant [12 x i8] c"@\22NSString\22\00", align 1
@25 = private unnamed_addr constant [10 x i8] c"_duration\00", align 1
@26 = private unnamed_addr constant [7 x i8] c"_speed\00", align 1
@27 = private unnamed_addr constant [8 x i8] c"_layers\00", align 1
@28 = private unnamed_addr constant [18 x i8] c"@\22NSPointerArray\22\00", align 1
@.objc_ivar_list = private global { i32, i64, [12 x { ptr, ptr, ptr, i32, i32 }] } { i32 12, i64 32, [12 x { ptr, ptr, ptr, i32, i32 }] [{ ptr, ptr, ptr, i32, i32 } { ptr @10, ptr @11, ptr @"__objc_ivar_offset_CAAnimation._delegate.\01", i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @12, ptr @13, ptr @"__objc_ivar_offset_CAAnimation._timingFunction.\01", i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @14, ptr @15, ptr @__objc_ivar_offset_CAAnimation._removedOnCompletion.C, i32 1, i32 4 }, { ptr, ptr, ptr, i32, i32 } { ptr @16, ptr @17, ptr @__objc_ivar_offset_CAAnimation._beginTime.d, i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @18, ptr @17, ptr @__objc_ivar_offset_CAAnimation._timeOffset.d, i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @19, ptr @20, ptr @__objc_ivar_offset_CAAnimation._repeatCount.f, i32 4, i32 20 }, { ptr, ptr, ptr, i32, i32 } { ptr @21, ptr @20, ptr @__objc_ivar_offset_CAAnimation._repeatDuration.f, i32 4, i32 20 }, { ptr, ptr, ptr, i32, i32 } { ptr @22, ptr @15, ptr @__objc_ivar_offset_CAAnimation._autoreverses.C, i32 1, i32 4 }, { ptr, ptr, ptr, i32, i32 } { ptr @23, ptr @24, ptr @"__objc_ivar_offset_CAAnimation._fillMode.\01", i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @25, ptr @17, ptr @__objc_ivar_offset_CAAnimation._duration.d, i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @26, ptr @20, ptr @__objc_ivar_offset_CAAnimation._speed.f, i32 4, i32 20 }, { ptr, ptr, ptr, i32, i32 } { ptr @27, ptr @28, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", i32 8, i32 28 }] }, align 8
@".objc_sel_name_setBeginTime:" = linkonce_odr hidden constant [14 x i8] c"setBeginTime:\00", comdat
@".objc_sel_types_v24\010:8d16" = linkonce_odr hidden constant [11 x i8] c"v24@0:8d16\00", comdat
@".objc_selector_setBeginTime:_v24\010:8d16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setBeginTime:", ptr @".objc_sel_types_v24\010:8d16" }, section "__objc_selectors", comdat, align 8
@29 = private unnamed_addr constant [11 x i8] c"v24@0:8d16\00", align 1
@".objc_sel_name_handleAddedToLayer:" = linkonce_odr hidden constant [20 x i8] c"handleAddedToLayer:\00", comdat
@".objc_selector_handleAddedToLayer:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_handleAddedToLayer:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@30 = private unnamed_addr constant [20 x i8] c"v24@0:8@\22CALayer\2216\00", align 1
@".objc_sel_name_handleRemovedFromLayer:" = linkonce_odr hidden constant [24 x i8] c"handleRemovedFromLayer:\00", comdat
@".objc_selector_handleRemovedFromLayer:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_handleRemovedFromLayer:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@31 = private unnamed_addr constant [8 x i8] c"v16@0:8\00", align 1
@".objc_sel_name_initWithCoder:" = linkonce_odr hidden constant [15 x i8] c"initWithCoder:\00", comdat
@".objc_selector_initWithCoder:_\0124\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_initWithCoder:", ptr @".objc_sel_types_\0124\010:8\0116" }, section "__objc_selectors", comdat, align 8
@32 = private unnamed_addr constant [20 x i8] c"@24@0:8@\22NSCoder\2216\00", align 1
@33 = private unnamed_addr constant [20 x i8] c"v24@0:8@\22NSCoder\2216\00", align 1
@".objc_sel_name_copyWithZone:" = linkonce_odr hidden constant [14 x i8] c"copyWithZone:\00", comdat
@".objc_selector_copyWithZone:_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_copyWithZone:", ptr @".objc_sel_types_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16" }, section "__objc_selectors", comdat, align 8
@34 = private unnamed_addr constant [47 x i8] c"@24@0:8^{_NSZone=^?^?^?^?^?^?^?Q@^{_NSZone}}16\00", align 1
@".objc_selector_dealloc_v16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_dealloc, ptr @".objc_sel_types_v16\010:8" }, section "__objc_selectors", comdat, align 8
@35 = private unnamed_addr constant [11 x i8] c"d24@0:8d16\00", align 1
@".objc_sel_name_localTimeWithTimeAuthority:" = linkonce_odr hidden constant [28 x i8] c"localTimeWithTimeAuthority:\00", comdat
@".objc_sel_types_d24\010:8\0116" = linkonce_odr hidden constant [11 x i8] c"d24@0:8@16\00", comdat
@".objc_selector_localTimeWithTimeAuthority:_d24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_localTimeWithTimeAuthority:", ptr @".objc_sel_types_d24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@36 = private unnamed_addr constant [28 x i8] c"d24@0:8@\22<CAMediaTiming>\2216\00", align 1
@".objc_sel_name_runActionForKey:object:arguments:" = linkonce_odr hidden constant [34 x i8] c"runActionForKey:object:arguments:\00", comdat
@".objc_sel_types_v40\010:8\0116\0124\0132" = linkonce_odr hidden constant [17 x i8] c"v40@0:8@16@24@32\00", comdat
@".objc_selector_runActionForKey:object:arguments:_v40\010:8\0116\0124\0132" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_runActionForKey:object:arguments:", ptr @".objc_sel_types_v40\010:8\0116\0124\0132" }, section "__objc_selectors", comdat, align 8
@37 = private unnamed_addr constant [41 x i8] c"v40@0:8@\22NSString\2216@24@\22NSDictionary\2232\00", align 1
@.objc_sel_name_delegate = linkonce_odr hidden constant [9 x i8] c"delegate\00", comdat
@".objc_selector_delegate_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_delegate, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setDelegate:" = linkonce_odr hidden constant [13 x i8] c"setDelegate:\00", comdat
@".objc_selector_setDelegate:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setDelegate:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@38 = private unnamed_addr constant [11 x i8] c"v24@0:8@16\00", align 1
@.objc_sel_name_timingFunction = linkonce_odr hidden constant [15 x i8] c"timingFunction\00", comdat
@".objc_selector_timingFunction_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_timingFunction, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@39 = private unnamed_addr constant [31 x i8] c"@\22CAMediaTimingFunction\2216@0:8\00", align 1
@".objc_sel_name_setTimingFunction:" = linkonce_odr hidden constant [19 x i8] c"setTimingFunction:\00", comdat
@".objc_selector_setTimingFunction:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setTimingFunction:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@40 = private unnamed_addr constant [34 x i8] c"v24@0:8@\22CAMediaTimingFunction\2216\00", align 1
@.objc_sel_name_removedOnCompletion = linkonce_odr hidden constant [20 x i8] c"removedOnCompletion\00", comdat
@".objc_selector_removedOnCompletion_C16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_removedOnCompletion, ptr @".objc_sel_types_C16\010:8" }, section "__objc_selectors", comdat, align 8
@41 = private unnamed_addr constant [8 x i8] c"C16@0:8\00", align 1
@".objc_sel_name_setRemovedOnCompletion:" = linkonce_odr hidden constant [24 x i8] c"setRemovedOnCompletion:\00", comdat
@".objc_sel_types_v20\010:8C16" = linkonce_odr hidden constant [11 x i8] c"v20@0:8C16\00", comdat
@".objc_selector_setRemovedOnCompletion:_v20\010:8C16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setRemovedOnCompletion:", ptr @".objc_sel_types_v20\010:8C16" }, section "__objc_selectors", comdat, align 8
@42 = private unnamed_addr constant [11 x i8] c"v20@0:8C16\00", align 1
@43 = private unnamed_addr constant [8 x i8] c"d16@0:8\00", align 1
@".objc_sel_name_setTimeOffset:" = linkonce_odr hidden constant [15 x i8] c"setTimeOffset:\00", comdat
@".objc_selector_setTimeOffset:_v24\010:8d16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setTimeOffset:", ptr @".objc_sel_types_v24\010:8d16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_repeatCount = linkonce_odr hidden constant [12 x i8] c"repeatCount\00", comdat
@".objc_selector_repeatCount_f16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_repeatCount, ptr @".objc_sel_types_f16\010:8" }, section "__objc_selectors", comdat, align 8
@44 = private unnamed_addr constant [8 x i8] c"f16@0:8\00", align 1
@".objc_sel_name_setRepeatCount:" = linkonce_odr hidden constant [16 x i8] c"setRepeatCount:\00", comdat
@".objc_sel_types_v20\010:8f16" = linkonce_odr hidden constant [11 x i8] c"v20@0:8f16\00", comdat
@".objc_selector_setRepeatCount:_v20\010:8f16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setRepeatCount:", ptr @".objc_sel_types_v20\010:8f16" }, section "__objc_selectors", comdat, align 8
@45 = private unnamed_addr constant [11 x i8] c"v20@0:8f16\00", align 1
@.objc_sel_name_repeatDuration = linkonce_odr hidden constant [15 x i8] c"repeatDuration\00", comdat
@".objc_selector_repeatDuration_f16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_repeatDuration, ptr @".objc_sel_types_f16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setRepeatDuration:" = linkonce_odr hidden constant [19 x i8] c"setRepeatDuration:\00", comdat
@".objc_selector_setRepeatDuration:_v20\010:8f16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setRepeatDuration:", ptr @".objc_sel_types_v20\010:8f16" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setAutoreverses:" = linkonce_odr hidden constant [17 x i8] c"setAutoreverses:\00", comdat
@".objc_selector_setAutoreverses:_v20\010:8C16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setAutoreverses:", ptr @".objc_sel_types_v20\010:8C16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_fillMode = linkonce_odr hidden constant [9 x i8] c"fillMode\00", comdat
@".objc_selector_fillMode_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_fillMode, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@46 = private unnamed_addr constant [18 x i8] c"@\22NSString\2216@0:8\00", align 1
@".objc_sel_name_setFillMode:" = linkonce_odr hidden constant [13 x i8] c"setFillMode:\00", comdat
@".objc_selector_setFillMode:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setFillMode:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@47 = private unnamed_addr constant [21 x i8] c"v24@0:8@\22NSString\2216\00", align 1
@".objc_sel_name_setDuration:" = linkonce_odr hidden constant [13 x i8] c"setDuration:\00", comdat
@".objc_selector_setDuration:_v24\010:8d16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setDuration:", ptr @".objc_sel_types_v24\010:8d16" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setSpeed:" = linkonce_odr hidden constant [10 x i8] c"setSpeed:\00", comdat
@".objc_selector_setSpeed:_v20\010:8f16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setSpeed:", ptr @".objc_sel_types_v20\010:8f16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_layers = linkonce_odr hidden constant [7 x i8] c"layers\00", comdat
@".objc_selector_layers_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_layers, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@48 = private unnamed_addr constant [24 x i8] c"@\22NSPointerArray\2216@0:8\00", align 1
@".objc_sel_name_setLayers:" = linkonce_odr hidden constant [11 x i8] c"setLayers:\00", comdat
@".objc_selector_setLayers:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setLayers:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@49 = private unnamed_addr constant [27 x i8] c"v24@0:8@\22NSPointerArray\2216\00", align 1
@.objc_method_list.1 = internal global { ptr, i32, i64, [36 x { ptr, ptr, ptr }] } { ptr null, i32 36, i64 24, [36 x { ptr, ptr, ptr }] [{ ptr, ptr, ptr } { ptr @_i_CAAnimation__setBeginTime_, ptr @".objc_selector_setBeginTime:_v24\010:8d16", ptr @29 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__handleAddedToLayer_, ptr @".objc_selector_handleAddedToLayer:_v24\010:8\0116", ptr @30 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__handleRemovedFromLayer_, ptr @".objc_selector_handleRemovedFromLayer:_v24\010:8\0116", ptr @30 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__takeNoteThatNextFrameTimeChanged, ptr @".objc_selector_takeNoteThatNextFrameTimeChanged_v16\010:8", ptr @31 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__init, ptr @".objc_selector_init_\0116\010:8", ptr @7 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__initWithCoder_, ptr @".objc_selector_initWithCoder:_\0124\010:8\0116", ptr @32 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__encodeWithCoder_, ptr @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr @33 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__copyWithZone_, ptr @".objc_selector_copyWithZone:_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16", ptr @34 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__dealloc, ptr @".objc_selector_dealloc_v16\010:8", ptr @31 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__activeTimeWithTimeAuthorityLocalTime_, ptr @".objc_selector_activeTimeWithTimeAuthorityLocalTime:_d24\010:8d16", ptr @35 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__localTimeWithTimeAuthority_, ptr @".objc_selector_localTimeWithTimeAuthority:_d24\010:8\0116", ptr @36 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__runActionForKey_object_arguments_, ptr @".objc_selector_runActionForKey:object:arguments:_v40\010:8\0116\0124\0132", ptr @37 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__delegate, ptr @".objc_selector_delegate_\0116\010:8", ptr @7 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setDelegate_, ptr @".objc_selector_setDelegate:_v24\010:8\0116", ptr @38 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__timingFunction, ptr @".objc_selector_timingFunction_\0116\010:8", ptr @39 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setTimingFunction_, ptr @".objc_selector_setTimingFunction:_v24\010:8\0116", ptr @40 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__removedOnCompletion, ptr @".objc_selector_removedOnCompletion_C16\010:8", ptr @41 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setRemovedOnCompletion_, ptr @".objc_selector_setRemovedOnCompletion:_v20\010:8C16", ptr @42 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__beginTime, ptr @".objc_selector_beginTime_d16\010:8", ptr @43 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__timeOffset, ptr @".objc_selector_timeOffset_d16\010:8", ptr @43 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setTimeOffset_, ptr @".objc_selector_setTimeOffset:_v24\010:8d16", ptr @29 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__repeatCount, ptr @".objc_selector_repeatCount_f16\010:8", ptr @44 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setRepeatCount_, ptr @".objc_selector_setRepeatCount:_v20\010:8f16", ptr @45 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__repeatDuration, ptr @".objc_selector_repeatDuration_f16\010:8", ptr @44 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setRepeatDuration_, ptr @".objc_selector_setRepeatDuration:_v20\010:8f16", ptr @45 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__autoreverses, ptr @".objc_selector_autoreverses_C16\010:8", ptr @41 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setAutoreverses_, ptr @".objc_selector_setAutoreverses:_v20\010:8C16", ptr @42 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__fillMode, ptr @".objc_selector_fillMode_\0116\010:8", ptr @46 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setFillMode_, ptr @".objc_selector_setFillMode:_v24\010:8\0116", ptr @47 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__duration, ptr @".objc_selector_duration_d16\010:8", ptr @43 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setDuration_, ptr @".objc_selector_setDuration:_v24\010:8d16", ptr @29 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__speed, ptr @".objc_selector_speed_f16\010:8", ptr @44 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setSpeed_, ptr @".objc_selector_setSpeed:_v20\010:8f16", ptr @45 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__layers, ptr @".objc_selector_layers_\0116\010:8", ptr @48 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setLayers_, ptr @".objc_selector_setLayers:_v24\010:8\0116", ptr @49 }, { ptr, ptr, ptr } { ptr @_i_CAAnimation__setBeginTime_, ptr @".objc_selector_setBeginTime:_v24\010:8d16", ptr @29 }] }, align 8
@.objc_protocol_list = internal global { ptr, i64, [0 x ptr] } zeroinitializer, align 8
@".objc_sel_types_v24\010:8\01\22NSCoder\2216" = linkonce_odr hidden constant [20 x i8] c"v24@0:8@\22NSCoder\2216\00", comdat
@".objc_sel_types_\0124\010:8\01\22NSCoder\2216" = linkonce_odr hidden constant [20 x i8] c"@24@0:8@\22NSCoder\2216\00", comdat
@.objc_protocol_method_list = internal global { i32, i32, [2 x { ptr, ptr }] } { i32 2, i32 16, [2 x { ptr, ptr }] [{ ptr, ptr } { ptr @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr @".objc_sel_types_v24\010:8\01\22NSCoder\2216" }, { ptr, ptr } { ptr @".objc_selector_initWithCoder:_\0124\010:8\0116", ptr @".objc_sel_types_\0124\010:8\01\22NSCoder\2216" }] }, align 8
@.objc_protocol_method_list.2 = internal global { i32, i32, [0 x { ptr, ptr }] } { i32 0, i32 16, [0 x { ptr, ptr }] zeroinitializer }, align 8
@.objc_protocol_method_list.3 = internal global { i32, i32, [0 x { ptr, ptr }] } { i32 0, i32 16, [0 x { ptr, ptr }] zeroinitializer }, align 8
@.objc_protocol_method_list.4 = internal global { i32, i32, [0 x { ptr, ptr }] } { i32 0, i32 16, [0 x { ptr, ptr }] zeroinitializer }, align 8
@50 = private unnamed_addr constant [9 x i8] c"NSCoding\00", align 1
@._OBJC_PROTOCOL_NSCoding = global { ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr } { ptr inttoptr (i32 4 to ptr), ptr @50, ptr @.objc_protocol_list, ptr @.objc_protocol_method_list, ptr @.objc_protocol_method_list.3, ptr @.objc_protocol_method_list.2, ptr @.objc_protocol_method_list.4, ptr null, ptr null, ptr null, ptr null }, section "__objc_protocols", comdat, align 8
@.objc_protocol_list.5 = internal global { ptr, i64, [0 x ptr] } zeroinitializer, align 8
@.objc_protocol_method_list.6 = internal global { i32, i32, [1 x { ptr, ptr }] } { i32 1, i32 16, [1 x { ptr, ptr }] [{ ptr, ptr } { ptr @".objc_selector_copyWithZone:_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16", ptr @".objc_sel_types_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16" }] }, align 8
@.objc_protocol_method_list.7 = internal global { i32, i32, [0 x { ptr, ptr }] } { i32 0, i32 16, [0 x { ptr, ptr }] zeroinitializer }, align 8
@.objc_protocol_method_list.8 = internal global { i32, i32, [0 x { ptr, ptr }] } { i32 0, i32 16, [0 x { ptr, ptr }] zeroinitializer }, align 8
@.objc_protocol_method_list.9 = internal global { i32, i32, [0 x { ptr, ptr }] } { i32 0, i32 16, [0 x { ptr, ptr }] zeroinitializer }, align 8
@51 = private unnamed_addr constant [10 x i8] c"NSCopying\00", align 1
@._OBJC_PROTOCOL_NSCopying = global { ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr } { ptr inttoptr (i32 4 to ptr), ptr @51, ptr @.objc_protocol_list.5, ptr @.objc_protocol_method_list.6, ptr @.objc_protocol_method_list.8, ptr @.objc_protocol_method_list.7, ptr @.objc_protocol_method_list.9, ptr null, ptr null, ptr null, ptr null }, section "__objc_protocols", comdat, align 8
@.objc_protocol_list.10 = internal global { ptr, i64, [0 x ptr] } zeroinitializer, align 8
@".objc_sel_types_v40\010:8\01\22NSString\2216\0124\01\22NSDictionary\2232" = linkonce_odr hidden constant [41 x i8] c"v40@0:8@\22NSString\2216@24@\22NSDictionary\2232\00", comdat
@.objc_protocol_method_list.11 = internal global { i32, i32, [1 x { ptr, ptr }] } { i32 1, i32 16, [1 x { ptr, ptr }] [{ ptr, ptr } { ptr @".objc_selector_runActionForKey:object:arguments:_v40\010:8\0116\0124\0132", ptr @".objc_sel_types_v40\010:8\01\22NSString\2216\0124\01\22NSDictionary\2232" }] }, align 8
@.objc_protocol_method_list.12 = internal global { i32, i32, [0 x { ptr, ptr }] } { i32 0, i32 16, [0 x { ptr, ptr }] zeroinitializer }, align 8
@.objc_protocol_method_list.13 = internal global { i32, i32, [0 x { ptr, ptr }] } { i32 0, i32 16, [0 x { ptr, ptr }] zeroinitializer }, align 8
@.objc_protocol_method_list.14 = internal global { i32, i32, [0 x { ptr, ptr }] } { i32 0, i32 16, [0 x { ptr, ptr }] zeroinitializer }, align 8
@52 = private unnamed_addr constant [9 x i8] c"CAAction\00", align 1
@._OBJC_PROTOCOL_CAAction = global { ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr } { ptr inttoptr (i32 4 to ptr), ptr @52, ptr @.objc_protocol_list.10, ptr @.objc_protocol_method_list.11, ptr @.objc_protocol_method_list.13, ptr @.objc_protocol_method_list.12, ptr @.objc_protocol_method_list.14, ptr null, ptr null, ptr null, ptr null }, section "__objc_protocols", comdat, align 8
@.objc_protocol_list.15 = internal global { ptr, i64, [0 x ptr] } zeroinitializer, align 8
@".objc_sel_types_\01\22NSString\2216\010:8" = linkonce_odr hidden constant [18 x i8] c"@\22NSString\2216@0:8\00", comdat
@".objc_sel_types_v24\010:8\01\22NSString\2216" = linkonce_odr hidden constant [21 x i8] c"v24@0:8@\22NSString\2216\00", comdat
@.objc_protocol_method_list.16 = internal global { i32, i32, [16 x { ptr, ptr }] } { i32 16, i32 16, [16 x { ptr, ptr }] [{ ptr, ptr } { ptr @".objc_selector_beginTime_d16\010:8", ptr @".objc_sel_types_d16\010:8" }, { ptr, ptr } { ptr @".objc_selector_setBeginTime:_v24\010:8d16", ptr @".objc_sel_types_v24\010:8d16" }, { ptr, ptr } { ptr @".objc_selector_timeOffset_d16\010:8", ptr @".objc_sel_types_d16\010:8" }, { ptr, ptr } { ptr @".objc_selector_setTimeOffset:_v24\010:8d16", ptr @".objc_sel_types_v24\010:8d16" }, { ptr, ptr } { ptr @".objc_selector_repeatCount_f16\010:8", ptr @".objc_sel_types_f16\010:8" }, { ptr, ptr } { ptr @".objc_selector_setRepeatCount:_v20\010:8f16", ptr @".objc_sel_types_v20\010:8f16" }, { ptr, ptr } { ptr @".objc_selector_repeatDuration_f16\010:8", ptr @".objc_sel_types_f16\010:8" }, { ptr, ptr } { ptr @".objc_selector_setRepeatDuration:_v20\010:8f16", ptr @".objc_sel_types_v20\010:8f16" }, { ptr, ptr } { ptr @".objc_selector_autoreverses_C16\010:8", ptr @".objc_sel_types_C16\010:8" }, { ptr, ptr } { ptr @".objc_selector_setAutoreverses:_v20\010:8C16", ptr @".objc_sel_types_v20\010:8C16" }, { ptr, ptr } { ptr @".objc_selector_fillMode_\0116\010:8", ptr @".objc_sel_types_\01\22NSString\2216\010:8" }, { ptr, ptr } { ptr @".objc_selector_setFillMode:_v24\010:8\0116", ptr @".objc_sel_types_v24\010:8\01\22NSString\2216" }, { ptr, ptr } { ptr @".objc_selector_duration_d16\010:8", ptr @".objc_sel_types_d16\010:8" }, { ptr, ptr } { ptr @".objc_selector_setDuration:_v24\010:8d16", ptr @".objc_sel_types_v24\010:8d16" }, { ptr, ptr } { ptr @".objc_selector_speed_f16\010:8", ptr @".objc_sel_types_f16\010:8" }, { ptr, ptr } { ptr @".objc_selector_setSpeed:_v20\010:8f16", ptr @".objc_sel_types_v20\010:8f16" }] }, align 8
@.objc_sel_name_activeTime = linkonce_odr hidden constant [11 x i8] c"activeTime\00", comdat
@".objc_selector_activeTime_d16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_activeTime, ptr @".objc_sel_types_d16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_types_d24\010:8\01\22<CAMediaTiming>\2216" = linkonce_odr hidden constant [28 x i8] c"d24@0:8@\22<CAMediaTiming>\2216\00", comdat
@.objc_protocol_method_list.17 = internal global { i32, i32, [4 x { ptr, ptr }] } { i32 4, i32 16, [4 x { ptr, ptr }] [{ ptr, ptr } { ptr @".objc_selector_activeTime_d16\010:8", ptr @".objc_sel_types_d16\010:8" }, { ptr, ptr } { ptr @".objc_selector_localTime_d16\010:8", ptr @".objc_sel_types_d16\010:8" }, { ptr, ptr } { ptr @".objc_selector_activeTimeWithTimeAuthorityLocalTime:_d24\010:8d16", ptr @".objc_sel_types_d24\010:8d16" }, { ptr, ptr } { ptr @".objc_selector_localTimeWithTimeAuthority:_d24\010:8\0116", ptr @".objc_sel_types_d24\010:8\01\22<CAMediaTiming>\2216" }] }, align 8
@.objc_protocol_method_list.18 = internal global { i32, i32, [0 x { ptr, ptr }] } { i32 0, i32 16, [0 x { ptr, ptr }] zeroinitializer }, align 8
@.objc_protocol_method_list.19 = internal global { i32, i32, [0 x { ptr, ptr }] } { i32 0, i32 16, [0 x { ptr, ptr }] zeroinitializer }, align 8
@53 = private unnamed_addr constant [14 x i8] c"CAMediaTiming\00", align 1
@54 = private unnamed_addr constant [10 x i8] c"beginTime\00", align 1
@55 = private unnamed_addr constant [3 x i8] c"Td\00", align 1
@56 = private unnamed_addr constant [11 x i8] c"timeOffset\00", align 1
@57 = private unnamed_addr constant [3 x i8] c"Tf\00", align 1
@58 = private unnamed_addr constant [15 x i8] c"repeatDuration\00", align 1
@59 = private unnamed_addr constant [3 x i8] c"TC\00", align 1
@60 = private unnamed_addr constant [9 x i8] c"fillMode\00", align 1
@61 = private unnamed_addr constant [15 x i8] c"T@\22NSString\22,C\00", align 1
@62 = private unnamed_addr constant [9 x i8] c"duration\00", align 1
@63 = private unnamed_addr constant [6 x i8] c"speed\00", align 1
@.objc_property_list = internal global { i32, i32, ptr, [8 x { ptr, ptr, ptr, ptr, ptr }] } { i32 8, i32 40, ptr null, [8 x { ptr, ptr, ptr, ptr, ptr }] [{ ptr, ptr, ptr, ptr, ptr } { ptr @54, ptr @55, ptr @17, ptr @".objc_selector_beginTime_d16\010:8", ptr @".objc_selector_setBeginTime:_v24\010:8d16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @56, ptr @55, ptr @17, ptr @".objc_selector_timeOffset_d16\010:8", ptr @".objc_selector_setTimeOffset:_v24\010:8d16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @5, ptr @57, ptr @20, ptr @".objc_selector_repeatCount_f16\010:8", ptr @".objc_selector_setRepeatCount:_v20\010:8f16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @58, ptr @57, ptr @20, ptr @".objc_selector_repeatDuration_f16\010:8", ptr @".objc_selector_setRepeatDuration:_v20\010:8f16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @4, ptr @59, ptr @15, ptr @".objc_selector_autoreverses_C16\010:8", ptr @".objc_selector_setAutoreverses:_v20\010:8C16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @60, ptr @61, ptr @11, ptr @".objc_selector_fillMode_\0116\010:8", ptr @".objc_selector_setFillMode:_v24\010:8\0116" }, { ptr, ptr, ptr, ptr, ptr } { ptr @62, ptr @55, ptr @17, ptr @".objc_selector_duration_d16\010:8", ptr @".objc_selector_setDuration:_v24\010:8d16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @63, ptr @57, ptr @20, ptr @".objc_selector_speed_f16\010:8", ptr @".objc_selector_setSpeed:_v20\010:8f16" }] }, align 8
@._OBJC_PROTOCOL_CAMediaTiming = global { ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr } { ptr inttoptr (i32 4 to ptr), ptr @53, ptr @.objc_protocol_list.15, ptr @.objc_protocol_method_list.16, ptr @.objc_protocol_method_list.18, ptr @.objc_protocol_method_list.17, ptr @.objc_protocol_method_list.19, ptr @.objc_property_list, ptr null, ptr null, ptr null }, section "__objc_protocols", comdat, align 8
@.objc_protocol_list.20 = internal global { ptr, i64, [4 x ptr] } { ptr null, i64 4, [4 x ptr] [ptr @._OBJC_PROTOCOL_NSCoding, ptr @._OBJC_PROTOCOL_NSCopying, ptr @._OBJC_PROTOCOL_CAAction, ptr @._OBJC_PROTOCOL_CAMediaTiming] }, align 8
@64 = private unnamed_addr constant [7 x i8] c"layers\00", align 1
@65 = private unnamed_addr constant [30 x i8] c"T@\22NSPointerArray\22,&,V_layers\00", align 1
@66 = private unnamed_addr constant [9 x i8] c"delegate\00", align 1
@67 = private unnamed_addr constant [16 x i8] c"T@,&,V_delegate\00", align 1
@68 = private unnamed_addr constant [45 x i8] c"T@\22CAMediaTimingFunction\22,&,V_timingFunction\00", align 1
@69 = private unnamed_addr constant [25 x i8] c"TC,V_removedOnCompletion\00", align 1
@70 = private unnamed_addr constant [15 x i8] c"Td,V_beginTime\00", align 1
@71 = private unnamed_addr constant [16 x i8] c"Td,V_timeOffset\00", align 1
@72 = private unnamed_addr constant [17 x i8] c"Tf,V_repeatCount\00", align 1
@73 = private unnamed_addr constant [20 x i8] c"Tf,V_repeatDuration\00", align 1
@74 = private unnamed_addr constant [18 x i8] c"TC,V_autoreverses\00", align 1
@75 = private unnamed_addr constant [26 x i8] c"T@\22NSString\22,C,V_fillMode\00", align 1
@76 = private unnamed_addr constant [14 x i8] c"Td,V_duration\00", align 1
@77 = private unnamed_addr constant [11 x i8] c"Tf,V_speed\00", align 1
@.objc_property_list.21 = internal global { i32, i32, ptr, [12 x { ptr, ptr, ptr, ptr, ptr }] } { i32 12, i32 40, ptr null, [12 x { ptr, ptr, ptr, ptr, ptr }] [{ ptr, ptr, ptr, ptr, ptr } { ptr @64, ptr @65, ptr @11, ptr @".objc_selector_layers_\0116\010:8", ptr @".objc_selector_setLayers:_v24\010:8\0116" }, { ptr, ptr, ptr, ptr, ptr } { ptr @66, ptr @67, ptr @11, ptr @".objc_selector_delegate_\0116\010:8", ptr @".objc_selector_setDelegate:_v24\010:8\0116" }, { ptr, ptr, ptr, ptr, ptr } { ptr @3, ptr @68, ptr @11, ptr @".objc_selector_timingFunction_\0116\010:8", ptr @".objc_selector_setTimingFunction:_v24\010:8\0116" }, { ptr, ptr, ptr, ptr, ptr } { ptr @2, ptr @69, ptr @15, ptr @".objc_selector_removedOnCompletion_C16\010:8", ptr @".objc_selector_setRemovedOnCompletion:_v20\010:8C16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @54, ptr @70, ptr @17, ptr @".objc_selector_beginTime_d16\010:8", ptr @".objc_selector_setBeginTime:_v24\010:8d16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @56, ptr @71, ptr @17, ptr @".objc_selector_timeOffset_d16\010:8", ptr @".objc_selector_setTimeOffset:_v24\010:8d16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @5, ptr @72, ptr @20, ptr @".objc_selector_repeatCount_f16\010:8", ptr @".objc_selector_setRepeatCount:_v20\010:8f16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @58, ptr @73, ptr @20, ptr @".objc_selector_repeatDuration_f16\010:8", ptr @".objc_selector_setRepeatDuration:_v20\010:8f16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @4, ptr @74, ptr @15, ptr @".objc_selector_autoreverses_C16\010:8", ptr @".objc_selector_setAutoreverses:_v20\010:8C16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @60, ptr @75, ptr @11, ptr @".objc_selector_fillMode_\0116\010:8", ptr @".objc_selector_setFillMode:_v24\010:8\0116" }, { ptr, ptr, ptr, ptr, ptr } { ptr @62, ptr @76, ptr @17, ptr @".objc_selector_duration_d16\010:8", ptr @".objc_selector_setDuration:_v24\010:8d16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @63, ptr @77, ptr @20, ptr @".objc_selector_speed_f16\010:8", ptr @".objc_selector_setSpeed:_v20\010:8f16" }] }, align 8
@._OBJC_CLASS_CAAnimation = global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr @._OBJC_METACLASS_CAAnimation, ptr @._OBJC_CLASS_NSObject, ptr @6, i64 0, i64 0, i64 -88, ptr @.objc_ivar_list, ptr @.objc_method_list.1, ptr null, ptr null, ptr null, ptr null, ptr null, ptr @.objc_protocol_list.20, ptr null, i64 0, ptr @.objc_property_list.21 }, align 8
@._OBJC_REF_CLASS_CAAnimation = local_unnamed_addr global ptr @._OBJC_CLASS_CAAnimation, section "__objc_class_refs"
@._OBJC_INIT_CLASS_CAAnimation = global ptr @._OBJC_CLASS_CAAnimation, section "__objc_classes"
@".objc_sel_name_initWithKeyPath:" = linkonce_odr hidden constant [17 x i8] c"initWithKeyPath:\00", comdat
@".objc_selector_initWithKeyPath:_\0124\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_initWithKeyPath:", ptr @".objc_sel_types_\0124\010:8\0116" }, section "__objc_selectors", comdat, align 8
@78 = private unnamed_addr constant [11 x i8] c"cumulative\00", align 1
@.objc_str_cumulative = linkonce_odr hidden global { ptr, i32, i32, i32, i32, ptr } { ptr @._OBJC_CLASS_NSConstantString, i32 0, i32 10, i32 10, i32 0, ptr @78 }, section "__objc_constant_string", comdat, align 8
@79 = private unnamed_addr constant [14 x i8] c"valueFunction\00", align 1
@.objc_str_valueFunction = linkonce_odr hidden global { ptr, i32, i32, i32, i32, ptr } { ptr @._OBJC_CLASS_NSConstantString, i32 0, i32 13, i32 13, i32 0, ptr @79 }, section "__objc_constant_string", comdat, align 8
@".objc_selector_defaultValueForKey:_" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_defaultValueForKey:", ptr null }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setKeyPath:" = linkonce_odr hidden constant [12 x i8] c"setKeyPath:\00", comdat
@".objc_selector_setKeyPath:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setKeyPath:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@".objc_selector_copyWithZone:_" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_copyWithZone:", ptr null }, section "__objc_selectors", comdat, align 8
@"__objc_ivar_offset_CAPropertyAnimation._keyPath.\01" = global i32 8
@"__objc_ivar_offset_CAPropertyAnimation._valueFunction.\01" = global i32 16
@.objc_sel_name_modelLayer = linkonce_odr hidden constant [11 x i8] c"modelLayer\00", comdat
@".objc_selector_modelLayer_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_modelLayer, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_keyPath = linkonce_odr hidden constant [8 x i8] c"keyPath\00", comdat
@".objc_selector_keyPath_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_keyPath, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_valueForKeyPath:" = linkonce_odr hidden constant [17 x i8] c"valueForKeyPath:\00", comdat
@".objc_selector_valueForKeyPath:_\0124\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_valueForKeyPath:", ptr @".objc_sel_types_\0124\010:8\0116" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_calculatedAnimationValueAtTime:onLayer:" = linkonce_odr hidden constant [40 x i8] c"calculatedAnimationValueAtTime:onLayer:\00", comdat
@".objc_sel_types_\0132\010:8d16\0124" = linkonce_odr hidden constant [14 x i8] c"@32@0:8d16@24\00", comdat
@".objc_selector_calculatedAnimationValueAtTime:onLayer:_\0132\010:8d16\0124" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_calculatedAnimationValueAtTime:onLayer:", ptr @".objc_sel_types_\0132\010:8d16\0124" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setValue:forKeyPath:" = linkonce_odr hidden constant [21 x i8] c"setValue:forKeyPath:\00", comdat
@".objc_selector_setValue:forKeyPath:_v32\010:8\0116\0124" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setValue:forKeyPath:", ptr @".objc_sel_types_v32\010:8\0116\0124" }, section "__objc_selectors", comdat, align 8
@__objc_ivar_offset_CAPropertyAnimation._additive.C = global i32 0
@__objc_ivar_offset_CAPropertyAnimation._cumulative.C = global i32 1
@80 = private unnamed_addr constant [20 x i8] c"CAPropertyAnimation\00", align 1
@".objc_sel_name_animationWithKeyPath:" = linkonce_odr hidden constant [22 x i8] c"animationWithKeyPath:\00", comdat
@".objc_selector_animationWithKeyPath:_\0124\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_animationWithKeyPath:", ptr @".objc_sel_types_\0124\010:8\0116" }, section "__objc_selectors", comdat, align 8
@.objc_method_list.25 = internal global { ptr, i32, i64, [2 x { ptr, ptr, ptr }] } { ptr null, i32 2, i64 24, [2 x { ptr, ptr, ptr }] [{ ptr, ptr, ptr } { ptr @_c_CAPropertyAnimation__animationWithKeyPath_, ptr @".objc_selector_animationWithKeyPath:_\0124\010:8\0116", ptr @8 }, { ptr, ptr, ptr } { ptr @_c_CAPropertyAnimation__defaultValueForKey_, ptr @".objc_selector_defaultValueForKey:_\0124\010:8\0116", ptr @8 }] }, align 8
@._OBJC_METACLASS_CAPropertyAnimation = internal global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr null, ptr null, ptr @80, i64 0, i64 1, i64 0, ptr null, ptr @.objc_method_list.25, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, i64 0, ptr null }, align 8
@81 = private unnamed_addr constant [10 x i8] c"_additive\00", align 1
@82 = private unnamed_addr constant [12 x i8] c"_cumulative\00", align 1
@83 = private unnamed_addr constant [9 x i8] c"_keyPath\00", align 1
@84 = private unnamed_addr constant [15 x i8] c"_valueFunction\00", align 1
@85 = private unnamed_addr constant [19 x i8] c"@\22CAValueFunction\22\00", align 1
@.objc_ivar_list.26 = private global { i32, i64, [4 x { ptr, ptr, ptr, i32, i32 }] } { i32 4, i64 32, [4 x { ptr, ptr, ptr, i32, i32 }] [{ ptr, ptr, ptr, i32, i32 } { ptr @81, ptr @15, ptr @__objc_ivar_offset_CAPropertyAnimation._additive.C, i32 1, i32 4 }, { ptr, ptr, ptr, i32, i32 } { ptr @82, ptr @15, ptr @__objc_ivar_offset_CAPropertyAnimation._cumulative.C, i32 1, i32 4 }, { ptr, ptr, ptr, i32, i32 } { ptr @83, ptr @24, ptr @"__objc_ivar_offset_CAPropertyAnimation._keyPath.\01", i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @84, ptr @85, ptr @"__objc_ivar_offset_CAPropertyAnimation._valueFunction.\01", i32 8, i32 28 }] }, align 8
@".objc_sel_name_applyToLayer:" = linkonce_odr hidden constant [14 x i8] c"applyToLayer:\00", comdat
@".objc_selector_applyToLayer:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_applyToLayer:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@86 = private unnamed_addr constant [23 x i8] c"@32@0:8d16@\22CALayer\2224\00", align 1
@.objc_sel_name_isAdditive = linkonce_odr hidden constant [11 x i8] c"isAdditive\00", comdat
@".objc_selector_isAdditive_C16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_isAdditive, ptr @".objc_sel_types_C16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setAdditive:" = linkonce_odr hidden constant [13 x i8] c"setAdditive:\00", comdat
@".objc_selector_setAdditive:_v20\010:8C16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setAdditive:", ptr @".objc_sel_types_v20\010:8C16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_isCumulative = linkonce_odr hidden constant [13 x i8] c"isCumulative\00", comdat
@".objc_selector_isCumulative_C16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_isCumulative, ptr @".objc_sel_types_C16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setCumulative:" = linkonce_odr hidden constant [15 x i8] c"setCumulative:\00", comdat
@".objc_selector_setCumulative:_v20\010:8C16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setCumulative:", ptr @".objc_sel_types_v20\010:8C16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_valueFunction = linkonce_odr hidden constant [14 x i8] c"valueFunction\00", comdat
@".objc_selector_valueFunction_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_valueFunction, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@87 = private unnamed_addr constant [25 x i8] c"@\22CAValueFunction\2216@0:8\00", align 1
@".objc_sel_name_setValueFunction:" = linkonce_odr hidden constant [18 x i8] c"setValueFunction:\00", comdat
@".objc_selector_setValueFunction:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setValueFunction:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@88 = private unnamed_addr constant [28 x i8] c"v24@0:8@\22CAValueFunction\2216\00", align 1
@.objc_method_list.27 = internal global { ptr, i32, i64, [15 x { ptr, ptr, ptr }] } { ptr null, i32 15, i64 24, [15 x { ptr, ptr, ptr }] [{ ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__initWithKeyPath_, ptr @".objc_selector_initWithKeyPath:_\0124\010:8\0116", ptr @8 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__initWithCoder_, ptr @".objc_selector_initWithCoder:_\0124\010:8\0116", ptr @32 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__encodeWithCoder_, ptr @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr @33 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__copyWithZone_, ptr @".objc_selector_copyWithZone:_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16", ptr @34 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__dealloc, ptr @".objc_selector_dealloc_v16\010:8", ptr @31 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__applyToLayer_, ptr @".objc_selector_applyToLayer:_v24\010:8\0116", ptr @30 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__calculatedAnimationValueAtTime_onLayer_, ptr @".objc_selector_calculatedAnimationValueAtTime:onLayer:_\0132\010:8d16\0124", ptr @86 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__isAdditive, ptr @".objc_selector_isAdditive_C16\010:8", ptr @41 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__setAdditive_, ptr @".objc_selector_setAdditive:_v20\010:8C16", ptr @42 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__isCumulative, ptr @".objc_selector_isCumulative_C16\010:8", ptr @41 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__setCumulative_, ptr @".objc_selector_setCumulative:_v20\010:8C16", ptr @42 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__keyPath, ptr @".objc_selector_keyPath_\0116\010:8", ptr @46 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__setKeyPath_, ptr @".objc_selector_setKeyPath:_v24\010:8\0116", ptr @47 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__valueFunction, ptr @".objc_selector_valueFunction_\0116\010:8", ptr @87 }, { ptr, ptr, ptr } { ptr @_i_CAPropertyAnimation__setValueFunction_, ptr @".objc_selector_setValueFunction:_v24\010:8\0116", ptr @88 }] }, align 8
@89 = private unnamed_addr constant [9 x i8] c"additive\00", align 1
@90 = private unnamed_addr constant [26 x i8] c"TC,GisAdditive,V_additive\00", align 1
@91 = private unnamed_addr constant [30 x i8] c"TC,GisCumulative,V_cumulative\00", align 1
@92 = private unnamed_addr constant [8 x i8] c"keyPath\00", align 1
@93 = private unnamed_addr constant [25 x i8] c"T@\22NSString\22,&,V_keyPath\00", align 1
@94 = private unnamed_addr constant [38 x i8] c"T@\22CAValueFunction\22,&,V_valueFunction\00", align 1
@.objc_property_list.28 = internal global { i32, i32, ptr, [4 x { ptr, ptr, ptr, ptr, ptr }] } { i32 4, i32 40, ptr null, [4 x { ptr, ptr, ptr, ptr, ptr }] [{ ptr, ptr, ptr, ptr, ptr } { ptr @89, ptr @90, ptr @15, ptr @".objc_selector_isAdditive_C16\010:8", ptr @".objc_selector_setAdditive:_v20\010:8C16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @78, ptr @91, ptr @15, ptr @".objc_selector_isCumulative_C16\010:8", ptr @".objc_selector_setCumulative:_v20\010:8C16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @92, ptr @93, ptr @11, ptr @".objc_selector_keyPath_\0116\010:8", ptr @".objc_selector_setKeyPath:_v24\010:8\0116" }, { ptr, ptr, ptr, ptr, ptr } { ptr @79, ptr @94, ptr @11, ptr @".objc_selector_valueFunction_\0116\010:8", ptr @".objc_selector_setValueFunction:_v24\010:8\0116" }] }, align 8
@._OBJC_CLASS_CAPropertyAnimation = global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr @._OBJC_METACLASS_CAPropertyAnimation, ptr @._OBJC_CLASS_CAAnimation, ptr @80, i64 0, i64 0, i64 -24, ptr @.objc_ivar_list.26, ptr @.objc_method_list.27, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, i64 0, ptr @.objc_property_list.28 }, align 8
@._OBJC_REF_CLASS_CAPropertyAnimation = local_unnamed_addr global ptr @._OBJC_CLASS_CAPropertyAnimation, section "__objc_class_refs"
@._OBJC_INIT_CLASS_CAPropertyAnimation = global ptr @._OBJC_CLASS_CAPropertyAnimation, section "__objc_classes"
@"__objc_ivar_offset_CABasicAnimation._fromValue.\01" = global i32 0
@"__objc_ivar_offset_CABasicAnimation._byValue.\01" = global i32 16
@"__objc_ivar_offset_CABasicAnimation._toValue.\01" = global i32 8
@".objc_sel_name_evaluateYAtX:" = linkonce_odr hidden constant [14 x i8] c"evaluateYAtX:\00", comdat
@".objc_selector_evaluateYAtX:_d24\010:8d16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_evaluateYAtX:", ptr @".objc_sel_types_d24\010:8d16" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_isKindOfClass:" = linkonce_odr hidden constant [15 x i8] c"isKindOfClass:\00", comdat
@".objc_sel_types_C24\010:8#16" = linkonce_odr hidden constant [11 x i8] c"C24@0:8#16\00", comdat
@".objc_selector_isKindOfClass:_C24\010:8#16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_isKindOfClass:", ptr @".objc_sel_types_C24\010:8#16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_floatValue = linkonce_odr hidden constant [11 x i8] c"floatValue\00", comdat
@".objc_selector_floatValue_f16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_floatValue, ptr @".objc_sel_types_f16\010:8" }, section "__objc_selectors", comdat, align 8
@._OBJC_REF_CLASS_NSValue = external local_unnamed_addr global ptr
@.objc_sel_name_objCType = linkonce_odr hidden constant [9 x i8] c"objCType\00", comdat
@".objc_sel_types_r*16\010:8" = linkonce_odr hidden constant [9 x i8] c"r*16@0:8\00", comdat
@".objc_selector_objCType_r*16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_objCType, ptr @".objc_sel_types_r*16\010:8" }, section "__objc_selectors", comdat, align 8
@.str = private unnamed_addr constant [14 x i8] c"{_NSPoint=dd}\00", align 1
@.objc_sel_name_pointValue = linkonce_odr hidden constant [11 x i8] c"pointValue\00", comdat
@".objc_sel_types_{_NSPoint=dd}16\010:8" = linkonce_odr hidden constant [20 x i8] c"{_NSPoint=dd}16@0:8\00", comdat
@".objc_selector_pointValue_{_NSPoint=dd}16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_pointValue, ptr @".objc_sel_types_{_NSPoint=dd}16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_valueWithBytes:objCType:" = linkonce_odr hidden constant [25 x i8] c"valueWithBytes:objCType:\00", comdat
@".objc_sel_types_\0132\010:8r^v16r*24" = linkonce_odr hidden constant [17 x i8] c"@32@0:8r^v16r*24\00", comdat
@".objc_selector_valueWithBytes:objCType:_\0132\010:8r^v16r*24" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_valueWithBytes:objCType:", ptr @".objc_sel_types_\0132\010:8r^v16r*24" }, section "__objc_selectors", comdat, align 8
@"calculatedAnimationValueAtTime:onLayer:.warned" = internal unnamed_addr global i1 false, align 1, !dbg !754
@95 = private unnamed_addr constant [105 x i8] c"CAAnimation: one time warning: bug in gnustep-base: despite storing cgpoint, we ended up with a nspoint.\00", align 1
@.objc_string = private global { ptr, i32, i32, i32, i32, ptr } { ptr @._OBJC_CLASS_NSConstantString, i32 0, i32 104, i32 104, i32 0, ptr @95 }, section "__objc_constant_string", align 8
@".objc_sel_name_valueWithPoint:" = linkonce_odr hidden constant [16 x i8] c"valueWithPoint:\00", comdat
@".objc_sel_types_\0132\010:8{_NSPoint=dd}16" = linkonce_odr hidden constant [23 x i8] c"@32@0:8{_NSPoint=dd}16\00", comdat
@".objc_selector_valueWithPoint:_\0132\010:8{_NSPoint=dd}16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_valueWithPoint:", ptr @".objc_sel_types_\0132\010:8{_NSPoint=dd}16" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_getValue:" = linkonce_odr hidden constant [10 x i8] c"getValue:\00", comdat
@".objc_selector_getValue:_v24\010:8^v16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_getValue:", ptr @".objc_sel_types_v24\010:8^v16" }, section "__objc_selectors", comdat, align 8
@.str.29 = private unnamed_addr constant [13 x i8] c"{_NSSize=dd}\00", align 1
@.objc_sel_name_sizeValue = linkonce_odr hidden constant [10 x i8] c"sizeValue\00", comdat
@".objc_sel_types_{_NSSize=dd}16\010:8" = linkonce_odr hidden constant [19 x i8] c"{_NSSize=dd}16@0:8\00", comdat
@".objc_selector_sizeValue_{_NSSize=dd}16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_sizeValue, ptr @".objc_sel_types_{_NSSize=dd}16\010:8" }, section "__objc_selectors", comdat, align 8
@"calculatedAnimationValueAtTime:onLayer:.warned.30" = internal unnamed_addr global i1 false, align 1, !dbg !755
@96 = private unnamed_addr constant [103 x i8] c"CAAnimation: one time warning: bug in gnustep-base: despite storing cgsize, we ended up with a nssize.\00", align 1
@.objc_string.31 = private global { ptr, i32, i32, i32, i32, ptr } { ptr @._OBJC_CLASS_NSConstantString, i32 0, i32 102, i32 102, i32 0, ptr @96 }, section "__objc_constant_string", align 8
@".objc_sel_name_valueWithSize:" = linkonce_odr hidden constant [15 x i8] c"valueWithSize:\00", comdat
@".objc_sel_types_\0132\010:8{_NSSize=dd}16" = linkonce_odr hidden constant [22 x i8] c"@32@0:8{_NSSize=dd}16\00", comdat
@".objc_selector_valueWithSize:_\0132\010:8{_NSSize=dd}16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_valueWithSize:", ptr @".objc_sel_types_\0132\010:8{_NSSize=dd}16" }, section "__objc_selectors", comdat, align 8
@.str.32 = private unnamed_addr constant [36 x i8] c"{_NSRect={_NSPoint=dd}{_NSSize=dd}}\00", align 1
@.objc_sel_name_rectValue = linkonce_odr hidden constant [10 x i8] c"rectValue\00", comdat
@".objc_sel_types_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8" = linkonce_odr hidden constant [42 x i8] c"{_NSRect={_NSPoint=dd}{_NSSize=dd}}16@0:8\00", comdat
@".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_rectValue, ptr @".objc_sel_types_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8" }, section "__objc_selectors", comdat, align 8
@"calculatedAnimationValueAtTime:onLayer:.warned.33" = internal unnamed_addr global i1 false, align 1, !dbg !756
@97 = private unnamed_addr constant [103 x i8] c"CAAnimation: one time warning: bug in gnustep-base: despite storing cgrect, we ended up with a nsrect.\00", align 1
@.objc_string.34 = private global { ptr, i32, i32, i32, i32, ptr } { ptr @._OBJC_CLASS_NSConstantString, i32 0, i32 102, i32 102, i32 0, ptr @97 }, section "__objc_constant_string", align 8
@".objc_sel_name_valueWithRect:" = linkonce_odr hidden constant [15 x i8] c"valueWithRect:\00", comdat
@".objc_sel_types_\0148\010:8{_NSRect={_NSPoint=dd}{_NSSize=dd}}16" = linkonce_odr hidden constant [45 x i8] c"@48@0:8{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\00", comdat
@".objc_selector_valueWithRect:_\0148\010:8{_NSRect={_NSPoint=dd}{_NSSize=dd}}16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_valueWithRect:", ptr @".objc_sel_types_\0148\010:8{_NSRect={_NSPoint=dd}{_NSSize=dd}}16" }, section "__objc_selectors", comdat, align 8
@.str.35 = private unnamed_addr constant [33 x i8] c"{CATransform3D=dddddddddddddddd}\00", align 1
@.objc_sel_name_CATransform3DValue = linkonce_odr hidden constant [19 x i8] c"CATransform3DValue\00", comdat
@".objc_sel_types_{CATransform3D=dddddddddddddddd}16\010:8" = linkonce_odr hidden constant [39 x i8] c"{CATransform3D=dddddddddddddddd}16@0:8\00", comdat
@".objc_selector_CATransform3DValue_{CATransform3D=dddddddddddddddd}16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_CATransform3DValue, ptr @".objc_sel_types_{CATransform3D=dddddddddddddddd}16\010:8" }, section "__objc_selectors", comdat, align 8
@CATransform3DIdentity = external local_unnamed_addr constant %struct.CATransform3D, align 8
@".objc_sel_name_valueWithCATransform3D:" = linkonce_odr hidden constant [24 x i8] c"valueWithCATransform3D:\00", comdat
@".objc_sel_types_\01144\010:8{CATransform3D=dddddddddddddddd}16" = linkonce_odr hidden constant [43 x i8] c"@144@0:8{CATransform3D=dddddddddddddddd}16\00", comdat
@".objc_selector_valueWithCATransform3D:_\01144\010:8{CATransform3D=dddddddddddddddd}16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_valueWithCATransform3D:", ptr @".objc_sel_types_\01144\010:8{CATransform3D=dddddddddddddddd}16" }, section "__objc_selectors", comdat, align 8
@"__const.calculatedAnimationValueAtTime:onLayer:.valueComponents" = private unnamed_addr constant [4 x double] [double 0.000000e+00, double 0.000000e+00, double 0.000000e+00, double 1.000000e+00], align 16
@98 = private unnamed_addr constant [17 x i8] c"CABasicAnimation\00", align 1
@._OBJC_METACLASS_CABasicAnimation = internal global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr null, ptr null, ptr @98, i64 0, i64 1, i64 0, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, i64 0, ptr null }, align 8
@99 = private unnamed_addr constant [11 x i8] c"_fromValue\00", align 1
@100 = private unnamed_addr constant [9 x i8] c"_toValue\00", align 1
@101 = private unnamed_addr constant [9 x i8] c"_byValue\00", align 1
@.objc_ivar_list.36 = private global { i32, i64, [3 x { ptr, ptr, ptr, i32, i32 }] } { i32 3, i64 32, [3 x { ptr, ptr, ptr, i32, i32 }] [{ ptr, ptr, ptr, i32, i32 } { ptr @99, ptr @11, ptr @"__objc_ivar_offset_CABasicAnimation._fromValue.\01", i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @100, ptr @11, ptr @"__objc_ivar_offset_CABasicAnimation._toValue.\01", i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @101, ptr @11, ptr @"__objc_ivar_offset_CABasicAnimation._byValue.\01", i32 8, i32 28 }] }, align 8
@.objc_sel_name_fromValue = linkonce_odr hidden constant [10 x i8] c"fromValue\00", comdat
@".objc_selector_fromValue_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_fromValue, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setFromValue:" = linkonce_odr hidden constant [14 x i8] c"setFromValue:\00", comdat
@".objc_selector_setFromValue:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setFromValue:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_byValue = linkonce_odr hidden constant [8 x i8] c"byValue\00", comdat
@".objc_selector_byValue_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_byValue, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setByValue:" = linkonce_odr hidden constant [12 x i8] c"setByValue:\00", comdat
@".objc_selector_setByValue:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setByValue:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_toValue = linkonce_odr hidden constant [8 x i8] c"toValue\00", comdat
@".objc_selector_toValue_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_toValue, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setToValue:" = linkonce_odr hidden constant [12 x i8] c"setToValue:\00", comdat
@".objc_selector_setToValue:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setToValue:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@.objc_method_list.37 = internal global { ptr, i32, i64, [8 x { ptr, ptr, ptr }] } { ptr null, i32 8, i64 24, [8 x { ptr, ptr, ptr }] [{ ptr, ptr, ptr } { ptr @_i_CABasicAnimation__dealloc, ptr @".objc_selector_dealloc_v16\010:8", ptr @31 }, { ptr, ptr, ptr } { ptr @_i_CABasicAnimation__calculatedAnimationValueAtTime_onLayer_, ptr @".objc_selector_calculatedAnimationValueAtTime:onLayer:_\0132\010:8d16\0124", ptr @86 }, { ptr, ptr, ptr } { ptr @_i_CABasicAnimation__fromValue, ptr @".objc_selector_fromValue_\0116\010:8", ptr @7 }, { ptr, ptr, ptr } { ptr @_i_CABasicAnimation__setFromValue_, ptr @".objc_selector_setFromValue:_v24\010:8\0116", ptr @38 }, { ptr, ptr, ptr } { ptr @_i_CABasicAnimation__byValue, ptr @".objc_selector_byValue_\0116\010:8", ptr @7 }, { ptr, ptr, ptr } { ptr @_i_CABasicAnimation__setByValue_, ptr @".objc_selector_setByValue:_v24\010:8\0116", ptr @38 }, { ptr, ptr, ptr } { ptr @_i_CABasicAnimation__toValue, ptr @".objc_selector_toValue_\0116\010:8", ptr @7 }, { ptr, ptr, ptr } { ptr @_i_CABasicAnimation__setToValue_, ptr @".objc_selector_setToValue:_v24\010:8\0116", ptr @38 }] }, align 8
@102 = private unnamed_addr constant [10 x i8] c"fromValue\00", align 1
@103 = private unnamed_addr constant [17 x i8] c"T@,&,V_fromValue\00", align 1
@104 = private unnamed_addr constant [8 x i8] c"toValue\00", align 1
@105 = private unnamed_addr constant [15 x i8] c"T@,&,V_toValue\00", align 1
@106 = private unnamed_addr constant [8 x i8] c"byValue\00", align 1
@107 = private unnamed_addr constant [15 x i8] c"T@,&,V_byValue\00", align 1
@.objc_property_list.38 = internal global { i32, i32, ptr, [3 x { ptr, ptr, ptr, ptr, ptr }] } { i32 3, i32 40, ptr null, [3 x { ptr, ptr, ptr, ptr, ptr }] [{ ptr, ptr, ptr, ptr, ptr } { ptr @102, ptr @103, ptr @11, ptr @".objc_selector_fromValue_\0116\010:8", ptr @".objc_selector_setFromValue:_v24\010:8\0116" }, { ptr, ptr, ptr, ptr, ptr } { ptr @104, ptr @105, ptr @11, ptr @".objc_selector_toValue_\0116\010:8", ptr @".objc_selector_setToValue:_v24\010:8\0116" }, { ptr, ptr, ptr, ptr, ptr } { ptr @106, ptr @107, ptr @11, ptr @".objc_selector_byValue_\0116\010:8", ptr @".objc_selector_setByValue:_v24\010:8\0116" }] }, align 8
@._OBJC_CLASS_CABasicAnimation = global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr @._OBJC_METACLASS_CABasicAnimation, ptr @._OBJC_CLASS_CAPropertyAnimation, ptr @98, i64 0, i64 0, i64 -24, ptr @.objc_ivar_list.36, ptr @.objc_method_list.37, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, i64 0, ptr @.objc_property_list.38 }, align 8
@._OBJC_REF_CLASS_CABasicAnimation = local_unnamed_addr global ptr @._OBJC_CLASS_CABasicAnimation, section "__objc_class_refs"
@._OBJC_INIT_CLASS_CABasicAnimation = global ptr @._OBJC_CLASS_CABasicAnimation, section "__objc_classes"
@"__objc_ivar_offset_CAKeyframeAnimation._calculationMode.\01" = global i32 0
@"__objc_ivar_offset_CAKeyframeAnimation._values.\01" = global i32 8
@108 = private unnamed_addr constant [20 x i8] c"CAKeyframeAnimation\00", align 1
@._OBJC_METACLASS_CAKeyframeAnimation = internal global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr null, ptr null, ptr @108, i64 0, i64 1, i64 0, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, i64 0, ptr null }, align 8
@109 = private unnamed_addr constant [17 x i8] c"_calculationMode\00", align 1
@110 = private unnamed_addr constant [8 x i8] c"_values\00", align 1
@111 = private unnamed_addr constant [11 x i8] c"@\22NSArray\22\00", align 1
@.objc_ivar_list.39 = private global { i32, i64, [2 x { ptr, ptr, ptr, i32, i32 }] } { i32 2, i64 32, [2 x { ptr, ptr, ptr, i32, i32 }] [{ ptr, ptr, ptr, i32, i32 } { ptr @109, ptr @24, ptr @"__objc_ivar_offset_CAKeyframeAnimation._calculationMode.\01", i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @110, ptr @111, ptr @"__objc_ivar_offset_CAKeyframeAnimation._values.\01", i32 8, i32 28 }] }, align 8
@.objc_sel_name_calculationMode = linkonce_odr hidden constant [16 x i8] c"calculationMode\00", comdat
@".objc_selector_calculationMode_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_calculationMode, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setCalculationMode:" = linkonce_odr hidden constant [20 x i8] c"setCalculationMode:\00", comdat
@".objc_selector_setCalculationMode:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setCalculationMode:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_values = linkonce_odr hidden constant [7 x i8] c"values\00", comdat
@".objc_selector_values_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_values, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@112 = private unnamed_addr constant [17 x i8] c"@\22NSArray\2216@0:8\00", align 1
@".objc_sel_name_setValues:" = linkonce_odr hidden constant [11 x i8] c"setValues:\00", comdat
@".objc_selector_setValues:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setValues:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@113 = private unnamed_addr constant [20 x i8] c"v24@0:8@\22NSArray\2216\00", align 1
@.objc_method_list.40 = internal global { ptr, i32, i64, [4 x { ptr, ptr, ptr }] } { ptr null, i32 4, i64 24, [4 x { ptr, ptr, ptr }] [{ ptr, ptr, ptr } { ptr @_i_CAKeyframeAnimation__calculationMode, ptr @".objc_selector_calculationMode_\0116\010:8", ptr @46 }, { ptr, ptr, ptr } { ptr @_i_CAKeyframeAnimation__setCalculationMode_, ptr @".objc_selector_setCalculationMode:_v24\010:8\0116", ptr @47 }, { ptr, ptr, ptr } { ptr @_i_CAKeyframeAnimation__values, ptr @".objc_selector_values_\0116\010:8", ptr @112 }, { ptr, ptr, ptr } { ptr @_i_CAKeyframeAnimation__setValues_, ptr @".objc_selector_setValues:_v24\010:8\0116", ptr @113 }] }, align 8
@114 = private unnamed_addr constant [16 x i8] c"calculationMode\00", align 1
@115 = private unnamed_addr constant [33 x i8] c"T@\22NSString\22,C,V_calculationMode\00", align 1
@116 = private unnamed_addr constant [7 x i8] c"values\00", align 1
@117 = private unnamed_addr constant [23 x i8] c"T@\22NSArray\22,C,V_values\00", align 1
@.objc_property_list.41 = internal global { i32, i32, ptr, [2 x { ptr, ptr, ptr, ptr, ptr }] } { i32 2, i32 40, ptr null, [2 x { ptr, ptr, ptr, ptr, ptr }] [{ ptr, ptr, ptr, ptr, ptr } { ptr @114, ptr @115, ptr @11, ptr @".objc_selector_calculationMode_\0116\010:8", ptr @".objc_selector_setCalculationMode:_v24\010:8\0116" }, { ptr, ptr, ptr, ptr, ptr } { ptr @116, ptr @117, ptr @11, ptr @".objc_selector_values_\0116\010:8", ptr @".objc_selector_setValues:_v24\010:8\0116" }] }, align 8
@._OBJC_CLASS_CAKeyframeAnimation = global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr @._OBJC_METACLASS_CAKeyframeAnimation, ptr @._OBJC_CLASS_CAPropertyAnimation, ptr @108, i64 0, i64 0, i64 -16, ptr @.objc_ivar_list.39, ptr @.objc_method_list.40, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, i64 0, ptr @.objc_property_list.41 }, align 8
@._OBJC_REF_CLASS_CAKeyframeAnimation = local_unnamed_addr global ptr @._OBJC_CLASS_CAKeyframeAnimation, section "__objc_class_refs"
@._OBJC_INIT_CLASS_CAKeyframeAnimation = global ptr @._OBJC_CLASS_CAKeyframeAnimation, section "__objc_classes"
@__objc_ivar_offset_CASpringAnimation._mass.d = global i32 0
@__objc_ivar_offset_CASpringAnimation._stiffness.d = global i32 8
@__objc_ivar_offset_CASpringAnimation._damping.d = global i32 16
@__objc_ivar_offset_CASpringAnimation._initialVelocity.d = global i32 24
@__objc_ivar_offset_CASpringAnimation._settlingDuration.d = global i32 32
@118 = private unnamed_addr constant [18 x i8] c"CASpringAnimation\00", align 1
@._OBJC_METACLASS_CASpringAnimation = internal global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr null, ptr null, ptr @118, i64 0, i64 1, i64 0, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, i64 0, ptr null }, align 8
@119 = private unnamed_addr constant [6 x i8] c"_mass\00", align 1
@120 = private unnamed_addr constant [11 x i8] c"_stiffness\00", align 1
@121 = private unnamed_addr constant [9 x i8] c"_damping\00", align 1
@122 = private unnamed_addr constant [17 x i8] c"_initialVelocity\00", align 1
@123 = private unnamed_addr constant [18 x i8] c"_settlingDuration\00", align 1
@.objc_ivar_list.42 = private global { i32, i64, [5 x { ptr, ptr, ptr, i32, i32 }] } { i32 5, i64 32, [5 x { ptr, ptr, ptr, i32, i32 }] [{ ptr, ptr, ptr, i32, i32 } { ptr @119, ptr @17, ptr @__objc_ivar_offset_CASpringAnimation._mass.d, i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @120, ptr @17, ptr @__objc_ivar_offset_CASpringAnimation._stiffness.d, i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @121, ptr @17, ptr @__objc_ivar_offset_CASpringAnimation._damping.d, i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @122, ptr @17, ptr @__objc_ivar_offset_CASpringAnimation._initialVelocity.d, i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @123, ptr @17, ptr @__objc_ivar_offset_CASpringAnimation._settlingDuration.d, i32 8, i32 28 }] }, align 8
@.objc_sel_name_mass = linkonce_odr hidden constant [5 x i8] c"mass\00", comdat
@".objc_selector_mass_d16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_mass, ptr @".objc_sel_types_d16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setMass:" = linkonce_odr hidden constant [9 x i8] c"setMass:\00", comdat
@".objc_selector_setMass:_v24\010:8d16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setMass:", ptr @".objc_sel_types_v24\010:8d16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_stiffness = linkonce_odr hidden constant [10 x i8] c"stiffness\00", comdat
@".objc_selector_stiffness_d16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_stiffness, ptr @".objc_sel_types_d16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setStiffness:" = linkonce_odr hidden constant [14 x i8] c"setStiffness:\00", comdat
@".objc_selector_setStiffness:_v24\010:8d16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setStiffness:", ptr @".objc_sel_types_v24\010:8d16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_damping = linkonce_odr hidden constant [8 x i8] c"damping\00", comdat
@".objc_selector_damping_d16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_damping, ptr @".objc_sel_types_d16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setDamping:" = linkonce_odr hidden constant [12 x i8] c"setDamping:\00", comdat
@".objc_selector_setDamping:_v24\010:8d16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setDamping:", ptr @".objc_sel_types_v24\010:8d16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_initialVelocity = linkonce_odr hidden constant [16 x i8] c"initialVelocity\00", comdat
@".objc_selector_initialVelocity_d16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_initialVelocity, ptr @".objc_sel_types_d16\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setInitialVelocity:" = linkonce_odr hidden constant [20 x i8] c"setInitialVelocity:\00", comdat
@".objc_selector_setInitialVelocity:_v24\010:8d16" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setInitialVelocity:", ptr @".objc_sel_types_v24\010:8d16" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_settlingDuration = linkonce_odr hidden constant [17 x i8] c"settlingDuration\00", comdat
@".objc_selector_settlingDuration_d16\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_settlingDuration, ptr @".objc_sel_types_d16\010:8" }, section "__objc_selectors", comdat, align 8
@.objc_method_list.43 = internal global { ptr, i32, i64, [9 x { ptr, ptr, ptr }] } { ptr null, i32 9, i64 24, [9 x { ptr, ptr, ptr }] [{ ptr, ptr, ptr } { ptr @_i_CASpringAnimation__mass, ptr @".objc_selector_mass_d16\010:8", ptr @43 }, { ptr, ptr, ptr } { ptr @_i_CASpringAnimation__setMass_, ptr @".objc_selector_setMass:_v24\010:8d16", ptr @29 }, { ptr, ptr, ptr } { ptr @_i_CASpringAnimation__stiffness, ptr @".objc_selector_stiffness_d16\010:8", ptr @43 }, { ptr, ptr, ptr } { ptr @_i_CASpringAnimation__setStiffness_, ptr @".objc_selector_setStiffness:_v24\010:8d16", ptr @29 }, { ptr, ptr, ptr } { ptr @_i_CASpringAnimation__damping, ptr @".objc_selector_damping_d16\010:8", ptr @43 }, { ptr, ptr, ptr } { ptr @_i_CASpringAnimation__setDamping_, ptr @".objc_selector_setDamping:_v24\010:8d16", ptr @29 }, { ptr, ptr, ptr } { ptr @_i_CASpringAnimation__initialVelocity, ptr @".objc_selector_initialVelocity_d16\010:8", ptr @43 }, { ptr, ptr, ptr } { ptr @_i_CASpringAnimation__setInitialVelocity_, ptr @".objc_selector_setInitialVelocity:_v24\010:8d16", ptr @29 }, { ptr, ptr, ptr } { ptr @_i_CASpringAnimation__settlingDuration, ptr @".objc_selector_settlingDuration_d16\010:8", ptr @43 }] }, align 8
@124 = private unnamed_addr constant [5 x i8] c"mass\00", align 1
@125 = private unnamed_addr constant [10 x i8] c"Td,V_mass\00", align 1
@126 = private unnamed_addr constant [10 x i8] c"stiffness\00", align 1
@127 = private unnamed_addr constant [15 x i8] c"Td,V_stiffness\00", align 1
@128 = private unnamed_addr constant [8 x i8] c"damping\00", align 1
@129 = private unnamed_addr constant [13 x i8] c"Td,V_damping\00", align 1
@130 = private unnamed_addr constant [16 x i8] c"initialVelocity\00", align 1
@131 = private unnamed_addr constant [21 x i8] c"Td,V_initialVelocity\00", align 1
@132 = private unnamed_addr constant [17 x i8] c"settlingDuration\00", align 1
@133 = private unnamed_addr constant [24 x i8] c"Td,R,V_settlingDuration\00", align 1
@.objc_property_list.44 = internal global { i32, i32, ptr, [5 x { ptr, ptr, ptr, ptr, ptr }] } { i32 5, i32 40, ptr null, [5 x { ptr, ptr, ptr, ptr, ptr }] [{ ptr, ptr, ptr, ptr, ptr } { ptr @124, ptr @125, ptr @17, ptr @".objc_selector_mass_d16\010:8", ptr @".objc_selector_setMass:_v24\010:8d16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @126, ptr @127, ptr @17, ptr @".objc_selector_stiffness_d16\010:8", ptr @".objc_selector_setStiffness:_v24\010:8d16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @128, ptr @129, ptr @17, ptr @".objc_selector_damping_d16\010:8", ptr @".objc_selector_setDamping:_v24\010:8d16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @130, ptr @131, ptr @17, ptr @".objc_selector_initialVelocity_d16\010:8", ptr @".objc_selector_setInitialVelocity:_v24\010:8d16" }, { ptr, ptr, ptr, ptr, ptr } { ptr @132, ptr @133, ptr @17, ptr @".objc_selector_settlingDuration_d16\010:8", ptr null }] }, align 8
@._OBJC_CLASS_CASpringAnimation = global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr @._OBJC_METACLASS_CASpringAnimation, ptr @._OBJC_CLASS_CABasicAnimation, ptr @118, i64 0, i64 0, i64 -40, ptr @.objc_ivar_list.42, ptr @.objc_method_list.43, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, i64 0, ptr @.objc_property_list.44 }, align 8
@._OBJC_REF_CLASS_CASpringAnimation = local_unnamed_addr global ptr @._OBJC_CLASS_CASpringAnimation, section "__objc_class_refs"
@._OBJC_INIT_CLASS_CASpringAnimation = global ptr @._OBJC_CLASS_CASpringAnimation, section "__objc_classes"
@"__objc_ivar_offset_CATransition._type.\01" = global i32 0
@"__objc_ivar_offset_CATransition._subtype.\01" = global i32 8
@134 = private unnamed_addr constant [13 x i8] c"CATransition\00", align 1
@._OBJC_METACLASS_CATransition = internal global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr null, ptr null, ptr @134, i64 0, i64 1, i64 0, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, i64 0, ptr null }, align 8
@135 = private unnamed_addr constant [6 x i8] c"_type\00", align 1
@136 = private unnamed_addr constant [9 x i8] c"_subtype\00", align 1
@.objc_ivar_list.45 = private global { i32, i64, [2 x { ptr, ptr, ptr, i32, i32 }] } { i32 2, i64 32, [2 x { ptr, ptr, ptr, i32, i32 }] [{ ptr, ptr, ptr, i32, i32 } { ptr @135, ptr @24, ptr @"__objc_ivar_offset_CATransition._type.\01", i32 8, i32 28 }, { ptr, ptr, ptr, i32, i32 } { ptr @136, ptr @24, ptr @"__objc_ivar_offset_CATransition._subtype.\01", i32 8, i32 28 }] }, align 8
@.objc_sel_name_type = linkonce_odr hidden constant [5 x i8] c"type\00", comdat
@".objc_selector_type_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_type, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setType:" = linkonce_odr hidden constant [9 x i8] c"setType:\00", comdat
@".objc_selector_setType:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setType:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@.objc_sel_name_subtype = linkonce_odr hidden constant [8 x i8] c"subtype\00", comdat
@".objc_selector_subtype_\0116\010:8" = linkonce_odr hidden global { ptr, ptr } { ptr @.objc_sel_name_subtype, ptr @".objc_sel_types_\0116\010:8" }, section "__objc_selectors", comdat, align 8
@".objc_sel_name_setSubtype:" = linkonce_odr hidden constant [12 x i8] c"setSubtype:\00", comdat
@".objc_selector_setSubtype:_v24\010:8\0116" = linkonce_odr hidden global { ptr, ptr } { ptr @".objc_sel_name_setSubtype:", ptr @".objc_sel_types_v24\010:8\0116" }, section "__objc_selectors", comdat, align 8
@.objc_method_list.46 = internal global { ptr, i32, i64, [4 x { ptr, ptr, ptr }] } { ptr null, i32 4, i64 24, [4 x { ptr, ptr, ptr }] [{ ptr, ptr, ptr } { ptr @_i_CATransition__type, ptr @".objc_selector_type_\0116\010:8", ptr @46 }, { ptr, ptr, ptr } { ptr @_i_CATransition__setType_, ptr @".objc_selector_setType:_v24\010:8\0116", ptr @47 }, { ptr, ptr, ptr } { ptr @_i_CATransition__subtype, ptr @".objc_selector_subtype_\0116\010:8", ptr @46 }, { ptr, ptr, ptr } { ptr @_i_CATransition__setSubtype_, ptr @".objc_selector_setSubtype:_v24\010:8\0116", ptr @47 }] }, align 8
@137 = private unnamed_addr constant [5 x i8] c"type\00", align 1
@138 = private unnamed_addr constant [22 x i8] c"T@\22NSString\22,C,V_type\00", align 1
@139 = private unnamed_addr constant [8 x i8] c"subtype\00", align 1
@140 = private unnamed_addr constant [25 x i8] c"T@\22NSString\22,C,V_subtype\00", align 1
@.objc_property_list.47 = internal global { i32, i32, ptr, [2 x { ptr, ptr, ptr, ptr, ptr }] } { i32 2, i32 40, ptr null, [2 x { ptr, ptr, ptr, ptr, ptr }] [{ ptr, ptr, ptr, ptr, ptr } { ptr @137, ptr @138, ptr @11, ptr @".objc_selector_type_\0116\010:8", ptr @".objc_selector_setType:_v24\010:8\0116" }, { ptr, ptr, ptr, ptr, ptr } { ptr @139, ptr @140, ptr @11, ptr @".objc_selector_subtype_\0116\010:8", ptr @".objc_selector_setSubtype:_v24\010:8\0116" }] }, align 8
@._OBJC_CLASS_CATransition = global { ptr, ptr, ptr, i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64, ptr } { ptr @._OBJC_METACLASS_CATransition, ptr @._OBJC_CLASS_CAAnimation, ptr @134, i64 0, i64 0, i64 -16, ptr @.objc_ivar_list.45, ptr @.objc_method_list.46, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, ptr null, i64 0, ptr @.objc_property_list.47 }, align 8
@._OBJC_REF_CLASS_CATransition = local_unnamed_addr global ptr @._OBJC_CLASS_CATransition, section "__objc_class_refs"
@._OBJC_INIT_CLASS_CATransition = global ptr @._OBJC_CLASS_CATransition, section "__objc_classes"
@__start___objc_selectors = external hidden global ptr
@__stop___objc_selectors = external hidden global ptr
@__start___objc_classes = external hidden global ptr
@__stop___objc_classes = external hidden global ptr
@__start___objc_class_refs = external hidden global ptr
@__stop___objc_class_refs = external hidden global ptr
@__start___objc_cats = external hidden global ptr
@__stop___objc_cats = external hidden global ptr
@__start___objc_protocols = external hidden global ptr
@__stop___objc_protocols = external hidden global ptr
@__start___objc_protocol_refs = external hidden global ptr
@__stop___objc_protocol_refs = external hidden global ptr
@__start___objc_class_aliases = external hidden global ptr
@__stop___objc_class_aliases = external hidden global ptr
@__start___objc_constant_string = external hidden global ptr
@__stop___objc_constant_string = external hidden global ptr
@.objc_init = linkonce_odr hidden global { i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr } { i64 0, ptr @__start___objc_selectors, ptr @__stop___objc_selectors, ptr @__start___objc_classes, ptr @__stop___objc_classes, ptr @__start___objc_class_refs, ptr @__stop___objc_class_refs, ptr @__start___objc_cats, ptr @__stop___objc_cats, ptr @__start___objc_protocols, ptr @__stop___objc_protocols, ptr @__start___objc_protocol_refs, ptr @__stop___objc_protocol_refs, ptr @__start___objc_class_aliases, ptr @__stop___objc_class_aliases, ptr @__start___objc_constant_string, ptr @__stop___objc_constant_string }, comdat, align 8
@.objc_ctor = linkonce hidden global ptr @.objcv2_load_function, section ".init_array", comdat
@.objc_null_selector = linkonce_odr hidden global { ptr, ptr } zeroinitializer, section "__objc_selectors", comdat, align 8
@.objc_null_category = linkonce_odr hidden global { ptr, ptr, ptr, ptr, ptr, ptr, ptr } zeroinitializer, section "__objc_cats", comdat, align 8
@.objc_null_protocol_ref = linkonce_odr hidden global { ptr } zeroinitializer, section "__objc_protocol_refs", comdat, align 8
@.objc_null_class_alias = linkonce_odr hidden global { ptr, ptr } zeroinitializer, section "__objc_class_aliases", comdat, align 8
@llvm.used = appending global [11 x ptr] [ptr @._OBJC_INIT_CLASS_CAAnimation, ptr @._OBJC_INIT_CLASS_CABasicAnimation, ptr @._OBJC_INIT_CLASS_CAKeyframeAnimation, ptr @._OBJC_INIT_CLASS_CAPropertyAnimation, ptr @._OBJC_INIT_CLASS_CASpringAnimation, ptr @._OBJC_INIT_CLASS_CATransition, ptr @.objc_ctor, ptr @.objc_null_category, ptr @.objc_null_class_alias, ptr @.objc_null_protocol_ref, ptr @.objc_null_selector], section "llvm.metadata"
@llvm.compiler.used = appending global [1 x ptr] [ptr @.objcv2_load_function], section "llvm.metadata"
; Function Attrs: uwtable
define internal void @_i_CAAnimation__setBeginTime_(ptr noundef %0, ptr nocapture readnone %1, double noundef %2) #0 !dbg !764 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !766, metadata !DIExpression()), !dbg !769
tail call void @llvm.dbg.value(metadata ptr poison, metadata !767, metadata !DIExpression()), !dbg !769
tail call void @llvm.dbg.value(metadata double %2, metadata !768, metadata !DIExpression()), !dbg !769
%4 = load i32, ptr @__objc_ivar_offset_CAAnimation._beginTime.d, align 4, !dbg !770
%5 = zext i32 %4 to i64, !dbg !770
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !770
store double %2, ptr %6, align 8, !dbg !771
tail call void @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_takeNoteThatNextFrameTimeChanged_v16\010:8"), !dbg !772, !GNUObjCMessageSend !773
ret void, !dbg !774
}
; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare void @llvm.dbg.declare(metadata, metadata, metadata) #1
declare ptr @objc_msgSend(ptr, ...) local_unnamed_addr
; Function Attrs: uwtable
define internal void @_i_CAAnimation__handleAddedToLayer_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !775 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !777, metadata !DIExpression()), !dbg !783
tail call void @llvm.dbg.value(metadata ptr poison, metadata !778, metadata !DIExpression()), !dbg !783
tail call void @llvm.dbg.value(metadata ptr %2, metadata !779, metadata !DIExpression()), !dbg !783
tail call void @llvm.dbg.value(metadata i32 0, metadata !780, metadata !DIExpression()), !dbg !784
%4 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !785
%5 = zext i32 %4 to i64, !dbg !785
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !785
%7 = load ptr, ptr %6, align 8, !dbg !785
%8 = tail call i64 @objc_msgSend(ptr noundef %7, ptr noundef nonnull @".objc_selector_count_Q16\010:8"), !dbg !786, !GNUObjCMessageSend !787
%9 = trunc i64 %8 to i32, !dbg !786
tail call void @llvm.dbg.value(metadata i32 %9, metadata !782, metadata !DIExpression()), !dbg !784
tail call void @llvm.dbg.value(metadata i32 0, metadata !780, metadata !DIExpression()), !dbg !784
%10 = icmp sgt i32 %9, 0, !dbg !788
br i1 %10, label %11, label %14, !dbg !790
11: ; preds = %3
%12 = load ptr, ptr @NSGenericException, align 8
%13 = and i64 %8, 4294967295, !dbg !788
br label %19, !dbg !790
14: ; preds = %29, %3
%15 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !791
%16 = zext i32 %15 to i64, !dbg !791
%17 = getelementptr inbounds i8, ptr %0, i64 %16, !dbg !791
%18 = load ptr, ptr %17, align 8, !dbg !791
tail call void @objc_msgSend(ptr noundef %18, ptr noundef nonnull @".objc_selector_addPointer:_v24\010:8^v16", ptr noundef %2), !dbg !792, !GNUObjCMessageSend !793
tail call void @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_takeNoteThatNextFrameTimeChanged_v16\010:8"), !dbg !794, !GNUObjCMessageSend !773
ret void, !dbg !795
19: ; preds = %11, %29
%20 = phi i64 [ 0, %11 ], [ %30, %29 ]
tail call void @llvm.dbg.value(metadata i64 %20, metadata !780, metadata !DIExpression()), !dbg !784
%21 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !796
%22 = zext i32 %21 to i64, !dbg !796
%23 = getelementptr inbounds i8, ptr %0, i64 %22, !dbg !796
%24 = load ptr, ptr %23, align 8, !dbg !796
%25 = tail call ptr @objc_msgSend(ptr noundef %24, ptr noundef nonnull @".objc_selector_pointerAtIndex:_^v24\010:8Q16", i64 noundef %20), !dbg !799, !GNUObjCMessageSend !800
%26 = icmp eq ptr %25, %2, !dbg !801
br i1 %26, label %27, label %29, !dbg !802
27: ; preds = %19
%28 = load ptr, ptr @._OBJC_REF_CLASS_NSException, align 8, !dbg !803
tail call void (ptr, ptr, ptr, ptr, ...) @objc_msgSend(ptr noundef %28, ptr noundef nonnull @".objc_selector_raise:format:_v32\010:8\0116\0124", ptr noundef %12, ptr noundef nonnull @.objc_str_Animation_already_added_to_this_layer), !dbg !803, !GNUObjCMessageSend !804
br label %29, !dbg !803
29: ; preds = %19, %27
%30 = add nuw nsw i64 %20, 1, !dbg !805
tail call void @llvm.dbg.value(metadata i64 %30, metadata !780, metadata !DIExpression()), !dbg !784
%31 = icmp eq i64 %30, %13, !dbg !788
br i1 %31, label %14, label %19, !dbg !790, !llvm.loop !806
}
; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #2
; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #2
; Function Attrs: uwtable
define internal void @_i_CAAnimation__handleRemovedFromLayer_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef readnone %2) #0 !dbg !809 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !811, metadata !DIExpression()), !dbg !817
tail call void @llvm.dbg.value(metadata ptr poison, metadata !812, metadata !DIExpression()), !dbg !817
tail call void @llvm.dbg.value(metadata ptr %2, metadata !813, metadata !DIExpression()), !dbg !817
tail call void @llvm.dbg.value(metadata i32 0, metadata !814, metadata !DIExpression()), !dbg !818
%4 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !819
%5 = zext i32 %4 to i64, !dbg !819
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !819
%7 = load ptr, ptr %6, align 8, !dbg !819
%8 = tail call i64 @objc_msgSend(ptr noundef %7, ptr noundef nonnull @".objc_selector_count_Q16\010:8"), !dbg !820, !GNUObjCMessageSend !787
%9 = trunc i64 %8 to i32, !dbg !820
tail call void @llvm.dbg.value(metadata i32 %9, metadata !816, metadata !DIExpression()), !dbg !818
tail call void @llvm.dbg.value(metadata i32 0, metadata !814, metadata !DIExpression()), !dbg !818
%10 = icmp sgt i32 %9, 0, !dbg !821
br i1 %10, label %11, label %13, !dbg !823
11: ; preds = %3
%12 = and i64 %8, 4294967295, !dbg !821
br label %14, !dbg !823
13: ; preds = %27, %3
tail call void @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_takeNoteThatNextFrameTimeChanged_v16\010:8"), !dbg !824, !GNUObjCMessageSend !773
ret void, !dbg !825
14: ; preds = %11, %27
%15 = phi i64 [ 0, %11 ], [ %28, %27 ]
tail call void @llvm.dbg.value(metadata i64 %15, metadata !814, metadata !DIExpression()), !dbg !818
%16 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !826
%17 = zext i32 %16 to i64, !dbg !826
%18 = getelementptr inbounds i8, ptr %0, i64 %17, !dbg !826
%19 = load ptr, ptr %18, align 8, !dbg !826
%20 = tail call ptr @objc_msgSend(ptr noundef %19, ptr noundef nonnull @".objc_selector_pointerAtIndex:_^v24\010:8Q16", i64 noundef %15), !dbg !829, !GNUObjCMessageSend !800
%21 = icmp eq ptr %20, %2, !dbg !830
br i1 %21, label %22, label %27, !dbg !831
22: ; preds = %14
%23 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !832
%24 = zext i32 %23 to i64, !dbg !832
%25 = getelementptr inbounds i8, ptr %0, i64 %24, !dbg !832
%26 = load ptr, ptr %25, align 8, !dbg !832
tail call void @objc_msgSend(ptr noundef %26, ptr noundef nonnull @".objc_selector_removePointerAtIndex:_v24\010:8Q16", i64 noundef %15), !dbg !833, !GNUObjCMessageSend !834
br label %27, !dbg !833
27: ; preds = %14, %22
%28 = add nuw nsw i64 %15, 1, !dbg !835
tail call void @llvm.dbg.value(metadata i64 %28, metadata !814, metadata !DIExpression()), !dbg !818
%29 = icmp eq i64 %28, %12, !dbg !821
br i1 %29, label %13, label %14, !dbg !823, !llvm.loop !836
}
; Function Attrs: uwtable
define internal void @_i_CAAnimation__takeNoteThatNextFrameTimeChanged(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #0 !dbg !838 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !840, metadata !DIExpression()), !dbg !848
tail call void @llvm.dbg.value(metadata ptr poison, metadata !841, metadata !DIExpression()), !dbg !848
tail call void @llvm.dbg.value(metadata i32 0, metadata !842, metadata !DIExpression()), !dbg !849
%3 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !850
%4 = zext i32 %3 to i64, !dbg !850
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !850
%6 = load ptr, ptr %5, align 8, !dbg !850
%7 = tail call i64 @objc_msgSend(ptr noundef %6, ptr noundef nonnull @".objc_selector_count_Q16\010:8"), !dbg !851, !GNUObjCMessageSend !787
%8 = trunc i64 %7 to i32, !dbg !851
tail call void @llvm.dbg.value(metadata i32 %8, metadata !844, metadata !DIExpression()), !dbg !849
tail call void @llvm.dbg.value(metadata i32 0, metadata !842, metadata !DIExpression()), !dbg !849
%9 = icmp sgt i32 %8, 0, !dbg !852
br i1 %9, label %10, label %12, !dbg !853
10: ; preds = %2
%11 = and i64 %7, 4294967295, !dbg !852
br label %13, !dbg !853
12: ; preds = %13, %2
ret void, !dbg !854
13: ; preds = %10, %13
%14 = phi i64 [ 0, %10 ], [ %20, %13 ]
tail call void @llvm.dbg.value(metadata i64 %14, metadata !842, metadata !DIExpression()), !dbg !849
%15 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !855
%16 = zext i32 %15 to i64, !dbg !855
%17 = getelementptr inbounds i8, ptr %0, i64 %16, !dbg !855
%18 = load ptr, ptr %17, align 8, !dbg !855
%19 = tail call ptr @objc_msgSend(ptr noundef %18, ptr noundef nonnull @".objc_selector_pointerAtIndex:_^v24\010:8Q16", i64 noundef %14), !dbg !856, !GNUObjCMessageSend !800
tail call void @llvm.dbg.value(metadata ptr %19, metadata !845, metadata !DIExpression()), !dbg !857
tail call void @objc_msgSend(ptr noundef %19, ptr noundef nonnull @".objc_selector_takeNoteThatNextFrameTimeChanged_v16\010:8"), !dbg !858, !GNUObjCMessageSend !773
%20 = add nuw nsw i64 %14, 1, !dbg !859
tail call void @llvm.dbg.value(metadata i64 %20, metadata !842, metadata !DIExpression()), !dbg !849
%21 = icmp eq i64 %20, %11, !dbg !852
br i1 %21, label %12, label %13, !dbg !853, !llvm.loop !860
}
; Function Attrs: uwtable
define internal ptr @_c_CAAnimation__animation(ptr noundef %0, ptr nocapture readnone %1) #0 !dbg !862 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !864, metadata !DIExpression()), !dbg !866
tail call void @llvm.dbg.value(metadata ptr poison, metadata !865, metadata !DIExpression()), !dbg !866
%3 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_alloc_\0116\010:8"), !dbg !867, !GNUObjCMessageSend !868
%4 = tail call ptr @objc_msgSend(ptr noundef %3, ptr noundef nonnull @".objc_selector_init_\0116\010:8"), !dbg !869, !GNUObjCMessageSend !870
%5 = tail call ptr @objc_msgSend(ptr noundef %4, ptr noundef nonnull @".objc_selector_autorelease_\0116\010:8"), !dbg !871, !GNUObjCMessageSend !872
ret ptr %5, !dbg !873
}
; Function Attrs: uwtable
define internal ptr @_c_CAAnimation__defaultValueForKey_(ptr nocapture readnone %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !874 {
tail call void @llvm.dbg.value(metadata ptr poison, metadata !876, metadata !DIExpression()), !dbg !879
tail call void @llvm.dbg.value(metadata ptr poison, metadata !877, metadata !DIExpression()), !dbg !879
tail call void @llvm.dbg.value(metadata ptr %2, metadata !878, metadata !DIExpression()), !dbg !879
%4 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_isEqualToString:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -3920552401110932156 to ptr)), !dbg !880, !GNUObjCMessageSend !882
%5 = icmp eq i8 %4, 0, !dbg !880
br i1 %5, label %6, label %39, !dbg !883
6: ; preds = %3
%7 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_isEqualToString:_C24\010:8\0116", ptr noundef nonnull @.objc_str_removedOnCompletion), !dbg !884, !GNUObjCMessageSend !882
%8 = icmp eq i8 %7, 0, !dbg !884
br i1 %8, label %12, label %9, !dbg !886
9: ; preds = %6
%10 = load ptr, ptr @._OBJC_REF_CLASS_NSNumber, align 8, !dbg !887
%11 = tail call ptr @objc_msgSend(ptr noundef %10, ptr noundef nonnull @".objc_selector_numberWithBool:_\0120\010:8C16", i8 noundef zeroext 1), !dbg !887, !GNUObjCMessageSend !889
br label %39, !dbg !890
12: ; preds = %6
%13 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_isEqualToString:_C24\010:8\0116", ptr noundef nonnull @.objc_str_timingFunction), !dbg !891, !GNUObjCMessageSend !882
%14 = icmp eq i8 %13, 0, !dbg !891
br i1 %14, label %15, label %39, !dbg !893
15: ; preds = %12
%16 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_isEqualToString:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -3902485493908509116 to ptr)), !dbg !894, !GNUObjCMessageSend !882
%17 = icmp eq i8 %16, 0, !dbg !894
br i1 %17, label %21, label %18, !dbg !896
18: ; preds = %15
%19 = load ptr, ptr @._OBJC_REF_CLASS_NSNumber, align 8, !dbg !897
%20 = tail call ptr @objc_msgSend(ptr noundef %19, ptr noundef nonnull @".objc_selector_numberWithFloat:_\0120\010:8f16", float noundef 2.500000e-01), !dbg !897, !GNUObjCMessageSend !899
br label %39, !dbg !900
21: ; preds = %15
%22 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_isEqualToString:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -1746501255670267860 to ptr)), !dbg !901, !GNUObjCMessageSend !882
%23 = icmp eq i8 %22, 0, !dbg !901
br i1 %23, label %27, label %24, !dbg !903
24: ; preds = %21
%25 = load ptr, ptr @._OBJC_REF_CLASS_NSNumber, align 8, !dbg !904
%26 = tail call ptr @objc_msgSend(ptr noundef %25, ptr noundef nonnull @".objc_selector_numberWithFloat:_\0120\010:8f16", float noundef 1.000000e+00), !dbg !904, !GNUObjCMessageSend !899
br label %39, !dbg !906
27: ; preds = %21
%28 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_isEqualToString:_C24\010:8\0116", ptr noundef nonnull @.objc_str_autoreverses), !dbg !907, !GNUObjCMessageSend !882
%29 = icmp eq i8 %28, 0, !dbg !907
br i1 %29, label %33, label %30, !dbg !909
30: ; preds = %27
%31 = load ptr, ptr @._OBJC_REF_CLASS_NSNumber, align 8, !dbg !910
%32 = tail call ptr @objc_msgSend(ptr noundef %31, ptr noundef nonnull @".objc_selector_numberWithBool:_\0120\010:8C16", i8 noundef zeroext 0), !dbg !910, !GNUObjCMessageSend !889
br label %39, !dbg !912
33: ; preds = %27
%34 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_isEqualToString:_C24\010:8\0116", ptr noundef nonnull @.objc_str_repeatCount), !dbg !913, !GNUObjCMessageSend !882
%35 = icmp eq i8 %34, 0, !dbg !913
br i1 %35, label %39, label %36, !dbg !915
36: ; preds = %33
%37 = load ptr, ptr @._OBJC_REF_CLASS_NSNumber, align 8, !dbg !916
%38 = tail call ptr @objc_msgSend(ptr noundef %37, ptr noundef nonnull @".objc_selector_numberWithFloat:_\0120\010:8f16", float noundef 1.000000e+00), !dbg !916, !GNUObjCMessageSend !899
br label %39, !dbg !918
39: ; preds = %33, %12, %3, %36, %30, %24, %18, %9
%40 = phi ptr [ %11, %9 ], [ %20, %18 ], [ %26, %24 ], [ %32, %30 ], [ %38, %36 ], [ null, %3 ], [ null, %12 ], [ null, %33 ], !dbg !879
ret ptr %40, !dbg !919
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(none) uwtable
define internal noundef zeroext i8 @_c_CAAnimation__shouldArchiveValueForKey_(ptr nocapture readnone %0, ptr nocapture readnone %1, ptr nocapture readnone %2) #3 !dbg !920 {
tail call void @llvm.dbg.value(metadata ptr poison, metadata !922, metadata !DIExpression()), !dbg !925
tail call void @llvm.dbg.value(metadata ptr poison, metadata !923, metadata !DIExpression()), !dbg !925
tail call void @llvm.dbg.value(metadata ptr poison, metadata !924, metadata !DIExpression()), !dbg !925
ret i8 1, !dbg !926
}
; Function Attrs: uwtable
define internal ptr @_i_CAAnimation__init(ptr noundef %0, ptr nocapture readnone %1) #0 !dbg !534 {
%3 = alloca { ptr, ptr }, align 8
tail call void @llvm.dbg.value(metadata ptr %0, metadata !536, metadata !DIExpression()), !dbg !927
tail call void @llvm.dbg.value(metadata ptr poison, metadata !538, metadata !DIExpression()), !dbg !927
%4 = load ptr, ptr @._OBJC_REF_CLASS_NSObject, align 8, !dbg !928
store ptr %0, ptr %3, align 8, !dbg !928
%5 = getelementptr inbounds { ptr, ptr }, ptr %3, i64 0, i32 1, !dbg !928
store ptr %4, ptr %5, align 8, !dbg !928
%6 = call ptr @objc_msg_lookup_super(ptr nonnull %3, ptr nonnull @.objc_selector_init_) #15, !dbg !928
%7 = call ptr %6(ptr noundef %0, ptr noundef nonnull @.objc_selector_init_), !dbg !928, !GNUObjCMessageSend !929
tail call void @llvm.dbg.value(metadata ptr %7, metadata !536, metadata !DIExpression()), !dbg !927
%8 = icmp eq ptr %7, null, !dbg !930
br i1 %8, label %46, label %9, !dbg !932
9: ; preds = %2
tail call void @llvm.dbg.value(metadata i64 0, metadata !540, metadata !DIExpression()), !dbg !933
%10 = call ptr @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !934, !GNUObjCMessageSend !935
%11 = call ptr @objc_msgSend(ptr noundef %10, ptr noundef nonnull @".objc_selector_defaultValueForKey:_\0124\010:8\0116", ptr noundef nonnull inttoptr (i64 -3920552401110932156 to ptr)), !dbg !936, !GNUObjCMessageSend !937
tail call void @llvm.dbg.value(metadata ptr %11, metadata !543, metadata !DIExpression()), !dbg !938
%12 = icmp eq ptr %11, null, !dbg !939
br i1 %12, label %14, label %13, !dbg !941
13: ; preds = %9
call void @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %11, ptr noundef nonnull inttoptr (i64 -3920552401110932156 to ptr)), !dbg !942, !GNUObjCMessageSend !944
br label %14, !dbg !945
14: ; preds = %13, %9
tail call void @llvm.dbg.value(metadata i64 1, metadata !540, metadata !DIExpression()), !dbg !933
tail call void @llvm.dbg.value(metadata i64 1, metadata !540, metadata !DIExpression()), !dbg !933
%15 = call ptr @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !934, !GNUObjCMessageSend !935
%16 = call ptr @objc_msgSend(ptr noundef %15, ptr noundef nonnull @".objc_selector_defaultValueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_removedOnCompletion), !dbg !936, !GNUObjCMessageSend !937
tail call void @llvm.dbg.value(metadata ptr %16, metadata !543, metadata !DIExpression()), !dbg !938
%17 = icmp eq ptr %16, null, !dbg !939
br i1 %17, label %19, label %18, !dbg !941
18: ; preds = %14
call void @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %16, ptr noundef nonnull @.objc_str_removedOnCompletion), !dbg !942, !GNUObjCMessageSend !944
br label %19, !dbg !945
19: ; preds = %18, %14
tail call void @llvm.dbg.value(metadata i64 2, metadata !540, metadata !DIExpression()), !dbg !933
tail call void @llvm.dbg.value(metadata i64 2, metadata !540, metadata !DIExpression()), !dbg !933
%20 = call ptr @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !934, !GNUObjCMessageSend !935
%21 = call ptr @objc_msgSend(ptr noundef %20, ptr noundef nonnull @".objc_selector_defaultValueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_timingFunction), !dbg !936, !GNUObjCMessageSend !937
tail call void @llvm.dbg.value(metadata ptr %21, metadata !543, metadata !DIExpression()), !dbg !938
%22 = icmp eq ptr %21, null, !dbg !939
br i1 %22, label %24, label %23, !dbg !941
23: ; preds = %19
call void @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %21, ptr noundef nonnull @.objc_str_timingFunction), !dbg !942, !GNUObjCMessageSend !944
br label %24, !dbg !945
24: ; preds = %23, %19
tail call void @llvm.dbg.value(metadata i64 3, metadata !540, metadata !DIExpression()), !dbg !933
tail call void @llvm.dbg.value(metadata i64 3, metadata !540, metadata !DIExpression()), !dbg !933
%25 = call ptr @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !934, !GNUObjCMessageSend !935
%26 = call ptr @objc_msgSend(ptr noundef %25, ptr noundef nonnull @".objc_selector_defaultValueForKey:_\0124\010:8\0116", ptr noundef nonnull inttoptr (i64 -1746501255670267860 to ptr)), !dbg !936, !GNUObjCMessageSend !937
tail call void @llvm.dbg.value(metadata ptr %26, metadata !543, metadata !DIExpression()), !dbg !938
%27 = icmp eq ptr %26, null, !dbg !939
br i1 %27, label %29, label %28, !dbg !941
28: ; preds = %24
call void @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %26, ptr noundef nonnull inttoptr (i64 -1746501255670267860 to ptr)), !dbg !942, !GNUObjCMessageSend !944
br label %29, !dbg !945
29: ; preds = %28, %24
tail call void @llvm.dbg.value(metadata i64 4, metadata !540, metadata !DIExpression()), !dbg !933
tail call void @llvm.dbg.value(metadata i64 4, metadata !540, metadata !DIExpression()), !dbg !933
%30 = call ptr @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !934, !GNUObjCMessageSend !935
%31 = call ptr @objc_msgSend(ptr noundef %30, ptr noundef nonnull @".objc_selector_defaultValueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_autoreverses), !dbg !936, !GNUObjCMessageSend !937
tail call void @llvm.dbg.value(metadata ptr %31, metadata !543, metadata !DIExpression()), !dbg !938
%32 = icmp eq ptr %31, null, !dbg !939
br i1 %32, label %34, label %33, !dbg !941
33: ; preds = %29
call void @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %31, ptr noundef nonnull @.objc_str_autoreverses), !dbg !942, !GNUObjCMessageSend !944
br label %34, !dbg !945
34: ; preds = %33, %29
tail call void @llvm.dbg.value(metadata i64 5, metadata !540, metadata !DIExpression()), !dbg !933
tail call void @llvm.dbg.value(metadata i64 5, metadata !540, metadata !DIExpression()), !dbg !933
%35 = call ptr @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !934, !GNUObjCMessageSend !935
%36 = call ptr @objc_msgSend(ptr noundef %35, ptr noundef nonnull @".objc_selector_defaultValueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_repeatCount), !dbg !936, !GNUObjCMessageSend !937
tail call void @llvm.dbg.value(metadata ptr %36, metadata !543, metadata !DIExpression()), !dbg !938
%37 = icmp eq ptr %36, null, !dbg !939
br i1 %37, label %39, label %38, !dbg !941
38: ; preds = %34
call void @objc_msgSend(ptr noundef nonnull %7, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %36, ptr noundef nonnull @.objc_str_repeatCount), !dbg !942, !GNUObjCMessageSend !944
br label %39, !dbg !945
39: ; preds = %38, %34
tail call void @llvm.dbg.value(metadata i64 6, metadata !540, metadata !DIExpression()), !dbg !933
%40 = load ptr, ptr @._OBJC_REF_CLASS_NSPointerArray, align 8, !dbg !946
%41 = call ptr @objc_msgSend(ptr noundef %40, ptr noundef nonnull @".objc_selector_weakObjectsPointerArray_\0116\010:8"), !dbg !946, !GNUObjCMessageSend !947
%42 = call ptr @objc_msgSend(ptr noundef %41, ptr noundef nonnull @".objc_selector_retain_\0116\010:8"), !dbg !948, !GNUObjCMessageSend !949
%43 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !950
%44 = zext i32 %43 to i64, !dbg !950
%45 = getelementptr inbounds i8, ptr %7, i64 %44, !dbg !950
store ptr %42, ptr %45, align 8, !dbg !951
br label %46, !dbg !952
46: ; preds = %2, %39
ret ptr %7, !dbg !953
}
declare ptr @objc_msg_lookup_super(ptr, ptr) local_unnamed_addr
; Function Attrs: uwtable
define internal ptr @_i_CAAnimation__initWithCoder_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !551 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !553, metadata !DIExpression()), !dbg !954
tail call void @llvm.dbg.value(metadata ptr poison, metadata !554, metadata !DIExpression()), !dbg !954
tail call void @llvm.dbg.value(metadata ptr %2, metadata !555, metadata !DIExpression()), !dbg !954
%4 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_init_\0116\010:8"), !dbg !955, !GNUObjCMessageSend !870
tail call void @llvm.dbg.value(metadata ptr %4, metadata !553, metadata !DIExpression()), !dbg !954
%5 = icmp eq ptr %4, null, !dbg !956
br i1 %5, label %41, label %6, !dbg !958
6: ; preds = %3
tail call void @llvm.dbg.value(metadata i64 0, metadata !556, metadata !DIExpression()), !dbg !959
%7 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_containsValueForKey:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -3920552401110932156 to ptr)), !dbg !960, !GNUObjCMessageSend !964
%8 = icmp eq i8 %7, 0, !dbg !960
br i1 %8, label %11, label %9, !dbg !965
9: ; preds = %6
%10 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_decodeObjectForKey:_\0124\010:8\0116", ptr noundef nonnull inttoptr (i64 -3920552401110932156 to ptr)), !dbg !966, !GNUObjCMessageSend !968
tail call void @objc_msgSend(ptr noundef nonnull %4, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef %10, ptr noundef nonnull inttoptr (i64 -3920552401110932156 to ptr)), !dbg !969, !GNUObjCMessageSend !944
br label %11, !dbg !970
11: ; preds = %6, %9
tail call void @llvm.dbg.value(metadata i64 1, metadata !556, metadata !DIExpression()), !dbg !959
tail call void @llvm.dbg.value(metadata i64 1, metadata !556, metadata !DIExpression()), !dbg !959
%12 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_containsValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_removedOnCompletion), !dbg !960, !GNUObjCMessageSend !964
%13 = icmp eq i8 %12, 0, !dbg !960
br i1 %13, label %16, label %14, !dbg !965
14: ; preds = %11
%15 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_decodeObjectForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_removedOnCompletion), !dbg !966, !GNUObjCMessageSend !968
tail call void @objc_msgSend(ptr noundef nonnull %4, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef %15, ptr noundef nonnull @.objc_str_removedOnCompletion), !dbg !969, !GNUObjCMessageSend !944
br label %16, !dbg !970
16: ; preds = %14, %11
tail call void @llvm.dbg.value(metadata i64 2, metadata !556, metadata !DIExpression()), !dbg !959
tail call void @llvm.dbg.value(metadata i64 2, metadata !556, metadata !DIExpression()), !dbg !959
%17 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_containsValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_timingFunction), !dbg !960, !GNUObjCMessageSend !964
%18 = icmp eq i8 %17, 0, !dbg !960
br i1 %18, label %21, label %19, !dbg !965
19: ; preds = %16
%20 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_decodeObjectForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_timingFunction), !dbg !966, !GNUObjCMessageSend !968
tail call void @objc_msgSend(ptr noundef nonnull %4, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef %20, ptr noundef nonnull @.objc_str_timingFunction), !dbg !969, !GNUObjCMessageSend !944
br label %21, !dbg !970
21: ; preds = %19, %16
tail call void @llvm.dbg.value(metadata i64 3, metadata !556, metadata !DIExpression()), !dbg !959
tail call void @llvm.dbg.value(metadata i64 3, metadata !556, metadata !DIExpression()), !dbg !959
%22 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_containsValueForKey:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -3902485493908509116 to ptr)), !dbg !960, !GNUObjCMessageSend !964
%23 = icmp eq i8 %22, 0, !dbg !960
br i1 %23, label %26, label %24, !dbg !965
24: ; preds = %21
%25 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_decodeObjectForKey:_\0124\010:8\0116", ptr noundef nonnull inttoptr (i64 -3902485493908509116 to ptr)), !dbg !966, !GNUObjCMessageSend !968
tail call void @objc_msgSend(ptr noundef nonnull %4, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef %25, ptr noundef nonnull inttoptr (i64 -3902485493908509116 to ptr)), !dbg !969, !GNUObjCMessageSend !944
br label %26, !dbg !970
26: ; preds = %24, %21
tail call void @llvm.dbg.value(metadata i64 4, metadata !556, metadata !DIExpression()), !dbg !959
tail call void @llvm.dbg.value(metadata i64 4, metadata !556, metadata !DIExpression()), !dbg !959
%27 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_containsValueForKey:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -1746501255670267860 to ptr)), !dbg !960, !GNUObjCMessageSend !964
%28 = icmp eq i8 %27, 0, !dbg !960
br i1 %28, label %31, label %29, !dbg !965
29: ; preds = %26
%30 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_decodeObjectForKey:_\0124\010:8\0116", ptr noundef nonnull inttoptr (i64 -1746501255670267860 to ptr)), !dbg !966, !GNUObjCMessageSend !968
tail call void @objc_msgSend(ptr noundef nonnull %4, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef %30, ptr noundef nonnull inttoptr (i64 -1746501255670267860 to ptr)), !dbg !969, !GNUObjCMessageSend !944
br label %31, !dbg !970
31: ; preds = %29, %26
tail call void @llvm.dbg.value(metadata i64 5, metadata !556, metadata !DIExpression()), !dbg !959
tail call void @llvm.dbg.value(metadata i64 5, metadata !556, metadata !DIExpression()), !dbg !959
%32 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_containsValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_autoreverses), !dbg !960, !GNUObjCMessageSend !964
%33 = icmp eq i8 %32, 0, !dbg !960
br i1 %33, label %36, label %34, !dbg !965
34: ; preds = %31
%35 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_decodeObjectForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_autoreverses), !dbg !966, !GNUObjCMessageSend !968
tail call void @objc_msgSend(ptr noundef nonnull %4, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef %35, ptr noundef nonnull @.objc_str_autoreverses), !dbg !969, !GNUObjCMessageSend !944
br label %36, !dbg !970
36: ; preds = %34, %31
tail call void @llvm.dbg.value(metadata i64 6, metadata !556, metadata !DIExpression()), !dbg !959
tail call void @llvm.dbg.value(metadata i64 6, metadata !556, metadata !DIExpression()), !dbg !959
%37 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_containsValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_repeatCount), !dbg !960, !GNUObjCMessageSend !964
%38 = icmp eq i8 %37, 0, !dbg !960
br i1 %38, label %41, label %39, !dbg !965
39: ; preds = %36
%40 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_decodeObjectForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_repeatCount), !dbg !966, !GNUObjCMessageSend !968
tail call void @objc_msgSend(ptr noundef nonnull %4, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef %40, ptr noundef nonnull @.objc_str_repeatCount), !dbg !969, !GNUObjCMessageSend !944
br label %41, !dbg !970
41: ; preds = %36, %39, %3
ret ptr %4, !dbg !971
}
; Function Attrs: uwtable
define internal void @_i_CAAnimation__encodeWithCoder_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !563 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !565, metadata !DIExpression()), !dbg !972
tail call void @llvm.dbg.value(metadata ptr poison, metadata !566, metadata !DIExpression()), !dbg !972
tail call void @llvm.dbg.value(metadata ptr %2, metadata !567, metadata !DIExpression()), !dbg !972
tail call void @llvm.dbg.value(metadata i32 0, metadata !568, metadata !DIExpression()), !dbg !973
tail call void @llvm.dbg.value(metadata i64 0, metadata !568, metadata !DIExpression()), !dbg !973
%4 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !974, !GNUObjCMessageSend !935
%5 = tail call zeroext i8 @objc_msgSend(ptr noundef %4, ptr noundef nonnull @".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -3920552401110932156 to ptr)), !dbg !978, !GNUObjCMessageSend !979
%6 = icmp eq i8 %5, 0, !dbg !978
br i1 %6, label %8, label %7, !dbg !980
7: ; preds = %3
tail call void @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr noundef %2), !dbg !981, !GNUObjCMessageSend !983
br label %8, !dbg !984
8: ; preds = %3, %7
tail call void @llvm.dbg.value(metadata i64 1, metadata !568, metadata !DIExpression()), !dbg !973
tail call void @llvm.dbg.value(metadata i64 1, metadata !568, metadata !DIExpression()), !dbg !973
%9 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !974, !GNUObjCMessageSend !935
%10 = tail call zeroext i8 @objc_msgSend(ptr noundef %9, ptr noundef nonnull @".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_removedOnCompletion), !dbg !978, !GNUObjCMessageSend !979
%11 = icmp eq i8 %10, 0, !dbg !978
br i1 %11, label %13, label %12, !dbg !980
12: ; preds = %8
tail call void @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr noundef %2), !dbg !981, !GNUObjCMessageSend !983
br label %13, !dbg !984
13: ; preds = %12, %8
tail call void @llvm.dbg.value(metadata i64 2, metadata !568, metadata !DIExpression()), !dbg !973
tail call void @llvm.dbg.value(metadata i64 2, metadata !568, metadata !DIExpression()), !dbg !973
%14 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !974, !GNUObjCMessageSend !935
%15 = tail call zeroext i8 @objc_msgSend(ptr noundef %14, ptr noundef nonnull @".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_timingFunction), !dbg !978, !GNUObjCMessageSend !979
%16 = icmp eq i8 %15, 0, !dbg !978
br i1 %16, label %18, label %17, !dbg !980
17: ; preds = %13
tail call void @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr noundef %2), !dbg !981, !GNUObjCMessageSend !983
br label %18, !dbg !984
18: ; preds = %17, %13
tail call void @llvm.dbg.value(metadata i64 3, metadata !568, metadata !DIExpression()), !dbg !973
tail call void @llvm.dbg.value(metadata i64 3, metadata !568, metadata !DIExpression()), !dbg !973
%19 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !974, !GNUObjCMessageSend !935
%20 = tail call zeroext i8 @objc_msgSend(ptr noundef %19, ptr noundef nonnull @".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -3902485493908509116 to ptr)), !dbg !978, !GNUObjCMessageSend !979
%21 = icmp eq i8 %20, 0, !dbg !978
br i1 %21, label %23, label %22, !dbg !980
22: ; preds = %18
tail call void @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr noundef %2), !dbg !981, !GNUObjCMessageSend !983
br label %23, !dbg !984
23: ; preds = %22, %18
tail call void @llvm.dbg.value(metadata i64 4, metadata !568, metadata !DIExpression()), !dbg !973
tail call void @llvm.dbg.value(metadata i64 4, metadata !568, metadata !DIExpression()), !dbg !973
%24 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !974, !GNUObjCMessageSend !935
%25 = tail call zeroext i8 @objc_msgSend(ptr noundef %24, ptr noundef nonnull @".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -1746501255670267860 to ptr)), !dbg !978, !GNUObjCMessageSend !979
%26 = icmp eq i8 %25, 0, !dbg !978
br i1 %26, label %28, label %27, !dbg !980
27: ; preds = %23
tail call void @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr noundef %2), !dbg !981, !GNUObjCMessageSend !983
br label %28, !dbg !984
28: ; preds = %27, %23
tail call void @llvm.dbg.value(metadata i64 5, metadata !568, metadata !DIExpression()), !dbg !973
tail call void @llvm.dbg.value(metadata i64 5, metadata !568, metadata !DIExpression()), !dbg !973
%29 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !974, !GNUObjCMessageSend !935
%30 = tail call zeroext i8 @objc_msgSend(ptr noundef %29, ptr noundef nonnull @".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_autoreverses), !dbg !978, !GNUObjCMessageSend !979
%31 = icmp eq i8 %30, 0, !dbg !978
br i1 %31, label %33, label %32, !dbg !980
32: ; preds = %28
tail call void @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr noundef %2), !dbg !981, !GNUObjCMessageSend !983
br label %33, !dbg !984
33: ; preds = %32, %28
tail call void @llvm.dbg.value(metadata i64 6, metadata !568, metadata !DIExpression()), !dbg !973
tail call void @llvm.dbg.value(metadata i64 6, metadata !568, metadata !DIExpression()), !dbg !973
%34 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !974, !GNUObjCMessageSend !935
%35 = tail call zeroext i8 @objc_msgSend(ptr noundef %34, ptr noundef nonnull @".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_repeatCount), !dbg !978, !GNUObjCMessageSend !979
%36 = icmp eq i8 %35, 0, !dbg !978
br i1 %36, label %38, label %37, !dbg !980
37: ; preds = %33
tail call void @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr noundef %2), !dbg !981, !GNUObjCMessageSend !983
br label %38, !dbg !984
38: ; preds = %37, %33
tail call void @llvm.dbg.value(metadata i64 7, metadata !568, metadata !DIExpression()), !dbg !973
ret void, !dbg !985
}
; Function Attrs: uwtable
define internal ptr @_i_CAAnimation__copyWithZone_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !572 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !574, metadata !DIExpression()), !dbg !986
tail call void @llvm.dbg.value(metadata ptr poison, metadata !575, metadata !DIExpression()), !dbg !986
tail call void @llvm.dbg.value(metadata ptr %2, metadata !576, metadata !DIExpression()), !dbg !986
%4 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !987, !GNUObjCMessageSend !935
%5 = tail call ptr @objc_msgSend(ptr noundef %4, ptr noundef nonnull @".objc_selector_allocWithZone:_\0124\010:8^{_NSZone=^?^?^?^?^?^?^?Q\01^{_NSZone}}16", ptr noundef %2), !dbg !988, !GNUObjCMessageSend !989
tail call void @llvm.dbg.value(metadata ptr %5, metadata !577, metadata !DIExpression()), !dbg !986
%6 = icmp eq ptr %5, null, !dbg !990
br i1 %6, label %35, label %7, !dbg !992
7: ; preds = %3
tail call void @llvm.dbg.value(metadata i64 0, metadata !578, metadata !DIExpression()), !dbg !993
%8 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_valueForKey:_\0124\010:8\0116", ptr noundef nonnull inttoptr (i64 -3920552401110932156 to ptr)), !dbg !994, !GNUObjCMessageSend !995
tail call void @llvm.dbg.value(metadata ptr %8, metadata !580, metadata !DIExpression()), !dbg !996
%9 = icmp eq ptr %8, null, !dbg !997
br i1 %9, label %11, label %10, !dbg !999
10: ; preds = %7
tail call void @objc_msgSend(ptr noundef nonnull %5, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %8, ptr noundef nonnull inttoptr (i64 -3920552401110932156 to ptr)), !dbg !1000, !GNUObjCMessageSend !944
br label %11, !dbg !1002
11: ; preds = %10, %7
tail call void @llvm.dbg.value(metadata i64 1, metadata !578, metadata !DIExpression()), !dbg !993
tail call void @llvm.dbg.value(metadata i64 1, metadata !578, metadata !DIExpression()), !dbg !993
%12 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_valueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_removedOnCompletion), !dbg !994, !GNUObjCMessageSend !995
tail call void @llvm.dbg.value(metadata ptr %12, metadata !580, metadata !DIExpression()), !dbg !996
%13 = icmp eq ptr %12, null, !dbg !997
br i1 %13, label %15, label %14, !dbg !999
14: ; preds = %11
tail call void @objc_msgSend(ptr noundef nonnull %5, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %12, ptr noundef nonnull @.objc_str_removedOnCompletion), !dbg !1000, !GNUObjCMessageSend !944
br label %15, !dbg !1002
15: ; preds = %14, %11
tail call void @llvm.dbg.value(metadata i64 2, metadata !578, metadata !DIExpression()), !dbg !993
tail call void @llvm.dbg.value(metadata i64 2, metadata !578, metadata !DIExpression()), !dbg !993
%16 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_valueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_timingFunction), !dbg !994, !GNUObjCMessageSend !995
tail call void @llvm.dbg.value(metadata ptr %16, metadata !580, metadata !DIExpression()), !dbg !996
%17 = icmp eq ptr %16, null, !dbg !997
br i1 %17, label %19, label %18, !dbg !999
18: ; preds = %15
tail call void @objc_msgSend(ptr noundef nonnull %5, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %16, ptr noundef nonnull @.objc_str_timingFunction), !dbg !1000, !GNUObjCMessageSend !944
br label %19, !dbg !1002
19: ; preds = %18, %15
tail call void @llvm.dbg.value(metadata i64 3, metadata !578, metadata !DIExpression()), !dbg !993
tail call void @llvm.dbg.value(metadata i64 3, metadata !578, metadata !DIExpression()), !dbg !993
%20 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_valueForKey:_\0124\010:8\0116", ptr noundef nonnull inttoptr (i64 -3902485493908509116 to ptr)), !dbg !994, !GNUObjCMessageSend !995
tail call void @llvm.dbg.value(metadata ptr %20, metadata !580, metadata !DIExpression()), !dbg !996
%21 = icmp eq ptr %20, null, !dbg !997
br i1 %21, label %23, label %22, !dbg !999
22: ; preds = %19
tail call void @objc_msgSend(ptr noundef nonnull %5, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %20, ptr noundef nonnull inttoptr (i64 -3902485493908509116 to ptr)), !dbg !1000, !GNUObjCMessageSend !944
br label %23, !dbg !1002
23: ; preds = %22, %19
tail call void @llvm.dbg.value(metadata i64 4, metadata !578, metadata !DIExpression()), !dbg !993
tail call void @llvm.dbg.value(metadata i64 4, metadata !578, metadata !DIExpression()), !dbg !993
%24 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_valueForKey:_\0124\010:8\0116", ptr noundef nonnull inttoptr (i64 -1746501255670267860 to ptr)), !dbg !994, !GNUObjCMessageSend !995
tail call void @llvm.dbg.value(metadata ptr %24, metadata !580, metadata !DIExpression()), !dbg !996
%25 = icmp eq ptr %24, null, !dbg !997
br i1 %25, label %27, label %26, !dbg !999
26: ; preds = %23
tail call void @objc_msgSend(ptr noundef nonnull %5, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %24, ptr noundef nonnull inttoptr (i64 -1746501255670267860 to ptr)), !dbg !1000, !GNUObjCMessageSend !944
br label %27, !dbg !1002
27: ; preds = %26, %23
tail call void @llvm.dbg.value(metadata i64 5, metadata !578, metadata !DIExpression()), !dbg !993
tail call void @llvm.dbg.value(metadata i64 5, metadata !578, metadata !DIExpression()), !dbg !993
%28 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_valueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_autoreverses), !dbg !994, !GNUObjCMessageSend !995
tail call void @llvm.dbg.value(metadata ptr %28, metadata !580, metadata !DIExpression()), !dbg !996
%29 = icmp eq ptr %28, null, !dbg !997
br i1 %29, label %31, label %30, !dbg !999
30: ; preds = %27
tail call void @objc_msgSend(ptr noundef nonnull %5, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %28, ptr noundef nonnull @.objc_str_autoreverses), !dbg !1000, !GNUObjCMessageSend !944
br label %31, !dbg !1002
31: ; preds = %30, %27
tail call void @llvm.dbg.value(metadata i64 6, metadata !578, metadata !DIExpression()), !dbg !993
tail call void @llvm.dbg.value(metadata i64 6, metadata !578, metadata !DIExpression()), !dbg !993
%32 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_valueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_repeatCount), !dbg !994, !GNUObjCMessageSend !995
tail call void @llvm.dbg.value(metadata ptr %32, metadata !580, metadata !DIExpression()), !dbg !996
%33 = icmp eq ptr %32, null, !dbg !997
br i1 %33, label %35, label %34, !dbg !999
34: ; preds = %31
tail call void @objc_msgSend(ptr noundef nonnull %5, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %32, ptr noundef nonnull @.objc_str_repeatCount), !dbg !1000, !GNUObjCMessageSend !944
br label %35, !dbg !1002
35: ; preds = %31, %34, %3
ret ptr %5, !dbg !1003
}
; Function Attrs: uwtable
define internal void @_i_CAAnimation__dealloc(ptr noundef %0, ptr nocapture readnone %1) #0 !dbg !1004 {
%3 = alloca { ptr, ptr }, align 8
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1006, metadata !DIExpression()), !dbg !1008
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1007, metadata !DIExpression()), !dbg !1008
%4 = load i32, ptr @"__objc_ivar_offset_CAAnimation._timingFunction.\01", align 4, !dbg !1009
%5 = zext i32 %4 to i64, !dbg !1009
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1009
%7 = load ptr, ptr %6, align 8, !dbg !1009
tail call void @objc_msgSend(ptr noundef %7, ptr noundef nonnull @".objc_selector_release_Vv16\010:8"), !dbg !1010, !GNUObjCMessageSend !1011
%8 = load i32, ptr @"__objc_ivar_offset_CAAnimation._fillMode.\01", align 4, !dbg !1012
%9 = zext i32 %8 to i64, !dbg !1012
%10 = getelementptr inbounds i8, ptr %0, i64 %9, !dbg !1012
%11 = load ptr, ptr %10, align 8, !dbg !1012
tail call void @objc_msgSend(ptr noundef %11, ptr noundef nonnull @".objc_selector_release_Vv16\010:8"), !dbg !1013, !GNUObjCMessageSend !1011
%12 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !1014
%13 = zext i32 %12 to i64, !dbg !1014
%14 = getelementptr inbounds i8, ptr %0, i64 %13, !dbg !1014
%15 = load ptr, ptr %14, align 8, !dbg !1014
tail call void @objc_msgSend(ptr noundef %15, ptr noundef nonnull @".objc_selector_release_Vv16\010:8"), !dbg !1015, !GNUObjCMessageSend !1011
%16 = load ptr, ptr @._OBJC_REF_CLASS_NSObject, align 8, !dbg !1016
store ptr %0, ptr %3, align 8, !dbg !1016
%17 = getelementptr inbounds { ptr, ptr }, ptr %3, i64 0, i32 1, !dbg !1016
store ptr %16, ptr %17, align 8, !dbg !1016
%18 = call ptr @objc_msg_lookup_super(ptr nonnull %3, ptr nonnull @.objc_selector_dealloc_) #15, !dbg !1016
call void %18(ptr noundef %0, ptr noundef nonnull @.objc_selector_dealloc_), !dbg !1016, !GNUObjCMessageSend !1017
ret void, !dbg !1018
}
; Function Attrs: uwtable
define internal double @_i_CAAnimation__activeTimeWithTimeAuthorityLocalTime_(ptr noundef %0, ptr nocapture readnone %1, double noundef %2) #0 !dbg !1019 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1021, metadata !DIExpression()), !dbg !1025
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1022, metadata !DIExpression()), !dbg !1025
tail call void @llvm.dbg.value(metadata double %2, metadata !1023, metadata !DIExpression()), !dbg !1025
%4 = icmp eq ptr %0, null, !dbg !1026
br i1 %4, label %11, label %5, !dbg !1026
5: ; preds = %3
%6 = tail call double @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_beginTime_d16\010:8"), !dbg !1026, !GNUObjCMessageSend !1027
%7 = fsub double %2, %6, !dbg !1028
%8 = tail call float @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_speed_f16\010:8"), !dbg !1029, !GNUObjCMessageSend !1030
%9 = fpext float %8 to double, !dbg !1029
%10 = tail call double @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_timeOffset_d16\010:8"), !dbg !1031, !GNUObjCMessageSend !1032
br label %11, !dbg !1031
11: ; preds = %3, %5
%12 = phi double [ %9, %5 ], [ 0.000000e+00, %3 ]
%13 = phi double [ %7, %5 ], [ %2, %3 ]
%14 = phi double [ %10, %5 ], [ 0.000000e+00, %3 ], !dbg !1031
%15 = tail call double @llvm.fmuladd.f64(double %13, double %12, double %14), !dbg !1033
tail call void @llvm.dbg.value(metadata double %15, metadata !1024, metadata !DIExpression()), !dbg !1025
%16 = fcmp olt double %15, 0.000000e+00, !dbg !1034
%17 = select i1 %16, double 0.000000e+00, double %15, !dbg !1036
tail call void @llvm.dbg.value(metadata double %17, metadata !1024, metadata !DIExpression()), !dbg !1025
ret double %17, !dbg !1037
}
; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.fmuladd.f64(double, double, double) #1
; Function Attrs: uwtable
define internal double @_i_CAAnimation__localTimeWithTimeAuthority_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !1038 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1040, metadata !DIExpression()), !dbg !1051
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1041, metadata !DIExpression()), !dbg !1051
tail call void @llvm.dbg.value(metadata ptr %2, metadata !1042, metadata !DIExpression()), !dbg !1051
%4 = icmp eq ptr %2, null, !dbg !1052
br i1 %4, label %7, label %5, !dbg !1052
5: ; preds = %3
%6 = tail call double @objc_msgSend(ptr noundef nonnull %2, ptr noundef nonnull @".objc_selector_localTime_d16\010:8"), !dbg !1052, !GNUObjCMessageSend !1053
br label %7, !dbg !1052
7: ; preds = %5, %3
%8 = phi double [ %6, %5 ], [ 0.000000e+00, %3 ], !dbg !1052
tail call void @llvm.dbg.value(metadata double %8, metadata !1043, metadata !DIExpression()), !dbg !1051
%9 = icmp eq ptr %0, null, !dbg !1054
br i1 %9, label %24, label %10, !dbg !1054
10: ; preds = %7
%11 = tail call double @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_activeTimeWithTimeAuthorityLocalTime:_d24\010:8d16", double noundef %8), !dbg !1054, !GNUObjCMessageSend !1055
tail call void @llvm.dbg.value(metadata double %11, metadata !1044, metadata !DIExpression()), !dbg !1051
%12 = tail call double @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_duration_d16\010:8"), !dbg !1056, !GNUObjCMessageSend !1058
%13 = tail call double @llvm.fabs.f64(double %12) #16, !dbg !1056
%14 = fcmp oeq double %13, 0x7FF0000000000000, !dbg !1056
br i1 %14, label %40, label %15, !dbg !1059
15: ; preds = %10
%16 = tail call double @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_duration_d16\010:8"), !dbg !1060, !GNUObjCMessageSend !1058
%17 = fdiv double %11, %16, !dbg !1061
%18 = tail call double @llvm.floor.f64(double %17), !dbg !1062
%19 = fptosi double %18 to i64, !dbg !1062
tail call void @llvm.dbg.value(metadata i64 %19, metadata !1045, metadata !DIExpression()), !dbg !1051
%20 = sitofp i64 %19 to double, !dbg !1063
%21 = tail call double @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_duration_d16\010:8"), !dbg !1064, !GNUObjCMessageSend !1058
%22 = and i64 %19, -9223372036854775807
%23 = icmp eq i64 %22, 1
br label %24, !dbg !1064
24: ; preds = %7, %15
%25 = phi double [ %20, %15 ], [ poison, %7 ]
%26 = phi i1 [ %23, %15 ], [ poison, %7 ]
%27 = phi double [ %11, %15 ], [ 0.000000e+00, %7 ]
%28 = phi double [ %21, %15 ], [ 0.000000e+00, %7 ], !dbg !1064
%29 = fneg double %25, !dbg !1065
%30 = tail call double @llvm.fmuladd.f64(double %29, double %28, double %27), !dbg !1065
tail call void @llvm.dbg.value(metadata double %30, metadata !1050, metadata !DIExpression()), !dbg !1051
%31 = tail call zeroext i8 @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_autoreverses_C16\010:8"), !dbg !1066, !GNUObjCMessageSend !1068
%32 = icmp ne i8 %31, 0, !dbg !1066
%33 = select i1 %32, i1 %26, i1 false, !dbg !1069
br i1 %33, label %34, label %40, !dbg !1069
34: ; preds = %24
br i1 %9, label %37, label %35, !dbg !1070
35: ; preds = %34
%36 = tail call double @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_duration_d16\010:8"), !dbg !1070, !GNUObjCMessageSend !1058
br label %37, !dbg !1070
37: ; preds = %35, %34
%38 = phi double [ %36, %35 ], [ 0.000000e+00, %34 ], !dbg !1070
%39 = fsub double %38, %30, !dbg !1072
tail call void @llvm.dbg.value(metadata double %39, metadata !1050, metadata !DIExpression()), !dbg !1051
br label %40, !dbg !1073
40: ; preds = %10, %24, %37
%41 = phi double [ %39, %37 ], [ %30, %24 ], [ %11, %10 ], !dbg !1051
ret double %41, !dbg !1074
}
; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.fabs.f64(double) #1
; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.floor.f64(double) #1
; Function Attrs: uwtable
define internal void @_i_CAAnimation__runActionForKey_object_arguments_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2, ptr noundef %3, ptr nocapture readnone %4) #0 !dbg !1075 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1077, metadata !DIExpression()), !dbg !1082
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1078, metadata !DIExpression()), !dbg !1082
tail call void @llvm.dbg.value(metadata ptr %2, metadata !1079, metadata !DIExpression()), !dbg !1082
tail call void @llvm.dbg.value(metadata ptr %3, metadata !1080, metadata !DIExpression()), !dbg !1082
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1081, metadata !DIExpression()), !dbg !1082
tail call void @objc_msgSend(ptr noundef %3, ptr noundef nonnull @".objc_selector_addAnimation:forKey:_v32\010:8\0116\0124", ptr noundef %0, ptr noundef %2), !dbg !1083, !GNUObjCMessageSend !1084
ret void, !dbg !1085
}
; Function Attrs: uwtable
define internal ptr @_i_CAAnimation__delegate(ptr noundef %0, ptr noundef %1) #0 !dbg !1086 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1088, metadata !DIExpression()), !dbg !1090
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1089, metadata !DIExpression()), !dbg !1090
%3 = load i32, ptr @"__objc_ivar_offset_CAAnimation._delegate.\01", align 4, !dbg !1091
%4 = zext i32 %3 to i64, !dbg !1091
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !1091
ret ptr %5, !dbg !1091
}
declare ptr @objc_getProperty(ptr, ptr, i64, i1) local_unnamed_addr
; Function Attrs: uwtable
define internal void @_i_CAAnimation__setDelegate_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !1092 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1094, metadata !DIExpression()), !dbg !1097
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1095, metadata !DIExpression()), !dbg !1097
tail call void @llvm.dbg.value(metadata ptr %2, metadata !1096, metadata !DIExpression()), !dbg !1097
%4 = load i32, ptr @"__objc_ivar_offset_CAAnimation._delegate.\01", align 4, !dbg !1098
%5 = zext i32 %4 to i64, !dbg !1098
tail call void @objc_setProperty_atomic(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !1098
ret void, !dbg !1099
}
declare void @objc_setProperty_atomic(ptr, ptr, ptr, i64) local_unnamed_addr
; Function Attrs: uwtable
define internal ptr @_i_CAAnimation__timingFunction(ptr noundef %0, ptr noundef %1) #0 !dbg !1100 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1102, metadata !DIExpression()), !dbg !1104
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1103, metadata !DIExpression()), !dbg !1104
%3 = load i32, ptr @"__objc_ivar_offset_CAAnimation._timingFunction.\01", align 4, !dbg !1105
%4 = zext i32 %3 to i64, !dbg !1105
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !1105
ret ptr %5, !dbg !1105
}
; Function Attrs: uwtable
define internal void @_i_CAAnimation__setTimingFunction_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !1106 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1108, metadata !DIExpression()), !dbg !1111
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1109, metadata !DIExpression()), !dbg !1111
tail call void @llvm.dbg.value(metadata ptr %2, metadata !1110, metadata !DIExpression()), !dbg !1111
%4 = load i32, ptr @"__objc_ivar_offset_CAAnimation._timingFunction.\01", align 4, !dbg !1112
%5 = zext i32 %4 to i64, !dbg !1112
tail call void @objc_setProperty_atomic(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !1112
ret void, !dbg !1113
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal zeroext i8 @_i_CAAnimation__removedOnCompletion(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !1114 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1116, metadata !DIExpression()), !dbg !1118
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1117, metadata !DIExpression()), !dbg !1118
%3 = load i32, ptr @__objc_ivar_offset_CAAnimation._removedOnCompletion.C, align 4, !dbg !1119
%4 = zext i32 %3 to i64, !dbg !1119
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !1119
%6 = load atomic i8, ptr %5 unordered, align 1, !dbg !1119
ret i8 %6, !dbg !1119
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CAAnimation__setRemovedOnCompletion_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, i8 noundef zeroext %2) #5 !dbg !1120 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1122, metadata !DIExpression()), !dbg !1125
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1123, metadata !DIExpression()), !dbg !1125
tail call void @llvm.dbg.value(metadata i8 %2, metadata !1124, metadata !DIExpression()), !dbg !1125
%4 = load i32, ptr @__objc_ivar_offset_CAAnimation._removedOnCompletion.C, align 4, !dbg !1126
%5 = zext i32 %4 to i64, !dbg !1126
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1126
store atomic i8 %2, ptr %6 unordered, align 1, !dbg !1126
ret void, !dbg !1127
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal double @_i_CAAnimation__beginTime(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !1128 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1130, metadata !DIExpression()), !dbg !1132
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1131, metadata !DIExpression()), !dbg !1132
%3 = load i32, ptr @__objc_ivar_offset_CAAnimation._beginTime.d, align 4, !dbg !1133
%4 = zext i32 %3 to i64, !dbg !1133
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !1133
%6 = load atomic double, ptr %5 unordered, align 8, !dbg !1133
ret double %6, !dbg !1134
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal double @_i_CAAnimation__timeOffset(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !1135 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1137, metadata !DIExpression()), !dbg !1139
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1138, metadata !DIExpression()), !dbg !1139
%3 = load i32, ptr @__objc_ivar_offset_CAAnimation._timeOffset.d, align 4, !dbg !1140
%4 = zext i32 %3 to i64, !dbg !1140
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !1140
%6 = load atomic double, ptr %5 unordered, align 8, !dbg !1140
ret double %6, !dbg !1141
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CAAnimation__setTimeOffset_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, double noundef %2) #5 !dbg !1142 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1144, metadata !DIExpression()), !dbg !1147
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1145, metadata !DIExpression()), !dbg !1147
tail call void @llvm.dbg.value(metadata double %2, metadata !1146, metadata !DIExpression()), !dbg !1147
%4 = load i32, ptr @__objc_ivar_offset_CAAnimation._timeOffset.d, align 4, !dbg !1148
%5 = zext i32 %4 to i64, !dbg !1148
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1148
store atomic double %2, ptr %6 unordered, align 8, !dbg !1148
ret void, !dbg !1149
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal float @_i_CAAnimation__repeatCount(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !1150 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1152, metadata !DIExpression()), !dbg !1154
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1153, metadata !DIExpression()), !dbg !1154
%3 = load i32, ptr @__objc_ivar_offset_CAAnimation._repeatCount.f, align 4, !dbg !1155
%4 = zext i32 %3 to i64, !dbg !1155
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !1155
%6 = load atomic float, ptr %5 unordered, align 4, !dbg !1155
ret float %6, !dbg !1156
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CAAnimation__setRepeatCount_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, float noundef %2) #5 !dbg !1157 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1159, metadata !DIExpression()), !dbg !1162
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1160, metadata !DIExpression()), !dbg !1162
tail call void @llvm.dbg.value(metadata float %2, metadata !1161, metadata !DIExpression()), !dbg !1162
%4 = load i32, ptr @__objc_ivar_offset_CAAnimation._repeatCount.f, align 4, !dbg !1163
%5 = zext i32 %4 to i64, !dbg !1163
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1163
store atomic float %2, ptr %6 unordered, align 4, !dbg !1163
ret void, !dbg !1164
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal float @_i_CAAnimation__repeatDuration(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !1165 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1167, metadata !DIExpression()), !dbg !1169
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1168, metadata !DIExpression()), !dbg !1169
%3 = load i32, ptr @__objc_ivar_offset_CAAnimation._repeatDuration.f, align 4, !dbg !1170
%4 = zext i32 %3 to i64, !dbg !1170
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !1170
%6 = load atomic float, ptr %5 unordered, align 4, !dbg !1170
ret float %6, !dbg !1171
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CAAnimation__setRepeatDuration_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, float noundef %2) #5 !dbg !1172 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1174, metadata !DIExpression()), !dbg !1177
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1175, metadata !DIExpression()), !dbg !1177
tail call void @llvm.dbg.value(metadata float %2, metadata !1176, metadata !DIExpression()), !dbg !1177
%4 = load i32, ptr @__objc_ivar_offset_CAAnimation._repeatDuration.f, align 4, !dbg !1178
%5 = zext i32 %4 to i64, !dbg !1178
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1178
store atomic float %2, ptr %6 unordered, align 4, !dbg !1178
ret void, !dbg !1179
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal zeroext i8 @_i_CAAnimation__autoreverses(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !1180 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1182, metadata !DIExpression()), !dbg !1184
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1183, metadata !DIExpression()), !dbg !1184
%3 = load i32, ptr @__objc_ivar_offset_CAAnimation._autoreverses.C, align 4, !dbg !1185
%4 = zext i32 %3 to i64, !dbg !1185
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !1185
%6 = load atomic i8, ptr %5 unordered, align 1, !dbg !1185
ret i8 %6, !dbg !1185
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CAAnimation__setAutoreverses_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, i8 noundef zeroext %2) #5 !dbg !1186 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1188, metadata !DIExpression()), !dbg !1191
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1189, metadata !DIExpression()), !dbg !1191
tail call void @llvm.dbg.value(metadata i8 %2, metadata !1190, metadata !DIExpression()), !dbg !1191
%4 = load i32, ptr @__objc_ivar_offset_CAAnimation._autoreverses.C, align 4, !dbg !1192
%5 = zext i32 %4 to i64, !dbg !1192
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1192
store atomic i8 %2, ptr %6 unordered, align 1, !dbg !1192
ret void, !dbg !1193
}
; Function Attrs: uwtable
define internal ptr @_i_CAAnimation__fillMode(ptr noundef %0, ptr noundef %1) #0 !dbg !1194 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1196, metadata !DIExpression()), !dbg !1198
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1197, metadata !DIExpression()), !dbg !1198
%3 = load i32, ptr @"__objc_ivar_offset_CAAnimation._fillMode.\01", align 4, !dbg !1199
%4 = zext i32 %3 to i64, !dbg !1199
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !1199
ret ptr %5, !dbg !1199
}
; Function Attrs: uwtable
define internal void @_i_CAAnimation__setFillMode_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !1200 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1202, metadata !DIExpression()), !dbg !1205
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1203, metadata !DIExpression()), !dbg !1205
tail call void @llvm.dbg.value(metadata ptr %2, metadata !1204, metadata !DIExpression()), !dbg !1205
%4 = load i32, ptr @"__objc_ivar_offset_CAAnimation._fillMode.\01", align 4, !dbg !1206
%5 = zext i32 %4 to i64, !dbg !1206
tail call void @objc_setProperty_atomic_copy(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !1206
ret void, !dbg !1207
}
declare void @objc_setProperty_atomic_copy(ptr, ptr, ptr, i64) local_unnamed_addr
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal double @_i_CAAnimation__duration(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !1208 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1210, metadata !DIExpression()), !dbg !1212
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1211, metadata !DIExpression()), !dbg !1212
%3 = load i32, ptr @__objc_ivar_offset_CAAnimation._duration.d, align 4, !dbg !1213
%4 = zext i32 %3 to i64, !dbg !1213
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !1213
%6 = load atomic double, ptr %5 unordered, align 8, !dbg !1213
ret double %6, !dbg !1214
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CAAnimation__setDuration_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, double noundef %2) #5 !dbg !1215 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1217, metadata !DIExpression()), !dbg !1220
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1218, metadata !DIExpression()), !dbg !1220
tail call void @llvm.dbg.value(metadata double %2, metadata !1219, metadata !DIExpression()), !dbg !1220
%4 = load i32, ptr @__objc_ivar_offset_CAAnimation._duration.d, align 4, !dbg !1221
%5 = zext i32 %4 to i64, !dbg !1221
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1221
store atomic double %2, ptr %6 unordered, align 8, !dbg !1221
ret void, !dbg !1222
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal float @_i_CAAnimation__speed(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !1223 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1225, metadata !DIExpression()), !dbg !1227
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1226, metadata !DIExpression()), !dbg !1227
%3 = load i32, ptr @__objc_ivar_offset_CAAnimation._speed.f, align 4, !dbg !1228
%4 = zext i32 %3 to i64, !dbg !1228
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !1228
%6 = load atomic float, ptr %5 unordered, align 4, !dbg !1228
ret float %6, !dbg !1229
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CAAnimation__setSpeed_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, float noundef %2) #5 !dbg !1230 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1232, metadata !DIExpression()), !dbg !1235
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1233, metadata !DIExpression()), !dbg !1235
tail call void @llvm.dbg.value(metadata float %2, metadata !1234, metadata !DIExpression()), !dbg !1235
%4 = load i32, ptr @__objc_ivar_offset_CAAnimation._speed.f, align 4, !dbg !1236
%5 = zext i32 %4 to i64, !dbg !1236
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1236
store atomic float %2, ptr %6 unordered, align 4, !dbg !1236
ret void, !dbg !1237
}
; Function Attrs: uwtable
define internal ptr @_i_CAAnimation__layers(ptr noundef %0, ptr noundef %1) #0 !dbg !1238 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1240, metadata !DIExpression()), !dbg !1242
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1241, metadata !DIExpression()), !dbg !1242
%3 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !1243
%4 = zext i32 %3 to i64, !dbg !1243
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !1243
ret ptr %5, !dbg !1243
}
; Function Attrs: uwtable
define internal void @_i_CAAnimation__setLayers_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !1244 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1246, metadata !DIExpression()), !dbg !1249
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1247, metadata !DIExpression()), !dbg !1249
tail call void @llvm.dbg.value(metadata ptr %2, metadata !1248, metadata !DIExpression()), !dbg !1249
%4 = load i32, ptr @"__objc_ivar_offset_CAAnimation._layers.\01", align 4, !dbg !1250
%5 = zext i32 %4 to i64, !dbg !1250
tail call void @objc_setProperty_atomic(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !1250
ret void, !dbg !1251
}
; Function Attrs: uwtable
define internal ptr @_c_CAPropertyAnimation__animationWithKeyPath_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !1252 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1254, metadata !DIExpression()), !dbg !1257
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1255, metadata !DIExpression()), !dbg !1257
tail call void @llvm.dbg.value(metadata ptr %2, metadata !1256, metadata !DIExpression()), !dbg !1257
%4 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_alloc_\0116\010:8"), !dbg !1258, !GNUObjCMessageSend !868
%5 = tail call ptr @objc_msgSend(ptr noundef %4, ptr noundef nonnull @".objc_selector_initWithKeyPath:_\0124\010:8\0116", ptr noundef %2), !dbg !1259, !GNUObjCMessageSend !1260
%6 = tail call ptr @objc_msgSend(ptr noundef %5, ptr noundef nonnull @".objc_selector_autorelease_\0116\010:8"), !dbg !1261, !GNUObjCMessageSend !872
ret ptr %6, !dbg !1262
}
; Function Attrs: uwtable
define internal ptr @_c_CAPropertyAnimation__defaultValueForKey_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !1263 {
%4 = alloca { ptr, ptr }, align 8
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1265, metadata !DIExpression()), !dbg !1268
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1266, metadata !DIExpression()), !dbg !1268
tail call void @llvm.dbg.value(metadata ptr %2, metadata !1267, metadata !DIExpression()), !dbg !1268
%5 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_isEqualToString:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -4354093952098671292 to ptr)), !dbg !1269, !GNUObjCMessageSend !882
%6 = icmp eq i8 %5, 0, !dbg !1269
br i1 %6, label %7, label %22, !dbg !1271
7: ; preds = %3
%8 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_isEqualToString:_C24\010:8\0116", ptr noundef nonnull @.objc_str_cumulative), !dbg !1272, !GNUObjCMessageSend !882
%9 = icmp eq i8 %8, 0, !dbg !1272
br i1 %9, label %10, label %22, !dbg !1274
10: ; preds = %7
%11 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_isEqualToString:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -2911633181621616580 to ptr)), !dbg !1275, !GNUObjCMessageSend !882
%12 = icmp eq i8 %11, 0, !dbg !1275
br i1 %12, label %13, label %22, !dbg !1277
13: ; preds = %10
%14 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_isEqualToString:_C24\010:8\0116", ptr noundef nonnull @.objc_str_valueFunction), !dbg !1278, !GNUObjCMessageSend !882
%15 = icmp eq i8 %14, 0, !dbg !1278
br i1 %15, label %16, label %22, !dbg !1280
16: ; preds = %13
%17 = load ptr, ptr @._OBJC_REF_CLASS_CAAnimation, align 8, !dbg !1281
%18 = load ptr, ptr %17, align 8, !dbg !1281
store ptr %0, ptr %4, align 8, !dbg !1281
%19 = getelementptr inbounds { ptr, ptr }, ptr %4, i64 0, i32 1, !dbg !1281
store ptr %18, ptr %19, align 8, !dbg !1281
%20 = call ptr @objc_msg_lookup_super(ptr nonnull %4, ptr nonnull @".objc_selector_defaultValueForKey:_") #15, !dbg !1281
%21 = call ptr %20(ptr noundef %0, ptr noundef nonnull @".objc_selector_defaultValueForKey:_", ptr noundef %2), !dbg !1281, !GNUObjCMessageSend !1282
br label %22, !dbg !1283
22: ; preds = %13, %10, %7, %3, %16
%23 = phi ptr [ %21, %16 ], [ null, %3 ], [ null, %7 ], [ null, %10 ], [ null, %13 ], !dbg !1268
ret ptr %23, !dbg !1284
}
; Function Attrs: uwtable
define internal ptr @_i_CAPropertyAnimation__initWithKeyPath_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !585 {
%4 = alloca { ptr, ptr }, align 8
tail call void @llvm.dbg.value(metadata ptr %0, metadata !587, metadata !DIExpression()), !dbg !1285
tail call void @llvm.dbg.value(metadata ptr poison, metadata !589, metadata !DIExpression()), !dbg !1285
tail call void @llvm.dbg.value(metadata ptr %2, metadata !590, metadata !DIExpression()), !dbg !1285
%5 = load ptr, ptr @._OBJC_REF_CLASS_CAAnimation, align 8, !dbg !1286
store ptr %0, ptr %4, align 8, !dbg !1286
%6 = getelementptr inbounds { ptr, ptr }, ptr %4, i64 0, i32 1, !dbg !1286
store ptr %5, ptr %6, align 8, !dbg !1286
%7 = call ptr @objc_msg_lookup_super(ptr nonnull %4, ptr nonnull @.objc_selector_init_) #15, !dbg !1286
%8 = call ptr %7(ptr noundef %0, ptr noundef nonnull @.objc_selector_init_), !dbg !1286, !GNUObjCMessageSend !1287
tail call void @llvm.dbg.value(metadata ptr %8, metadata !587, metadata !DIExpression()), !dbg !1285
%9 = icmp eq ptr %8, null, !dbg !1288
br i1 %9, label %25, label %10, !dbg !1290
10: ; preds = %3
call void @objc_msgSend(ptr noundef nonnull %8, ptr noundef nonnull @".objc_selector_setKeyPath:_v24\010:8\0116", ptr noundef %2), !dbg !1291, !GNUObjCMessageSend !1292
tail call void @llvm.dbg.value(metadata i32 0, metadata !591, metadata !DIExpression()), !dbg !1293
tail call void @llvm.dbg.value(metadata i64 0, metadata !591, metadata !DIExpression()), !dbg !1293
%11 = call ptr @objc_msgSend(ptr noundef nonnull %8, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !1294, !GNUObjCMessageSend !935
%12 = call ptr @objc_msgSend(ptr noundef %11, ptr noundef nonnull @".objc_selector_defaultValueForKey:_\0124\010:8\0116", ptr noundef nonnull inttoptr (i64 -4354093952098671292 to ptr)), !dbg !1295, !GNUObjCMessageSend !937
tail call void @llvm.dbg.value(metadata ptr %12, metadata !593, metadata !DIExpression()), !dbg !1296
%13 = icmp eq ptr %12, null, !dbg !1297
br i1 %13, label %15, label %14, !dbg !1299
14: ; preds = %10
call void @objc_msgSend(ptr noundef nonnull %8, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %12, ptr noundef nonnull inttoptr (i64 -4354093952098671292 to ptr)), !dbg !1300, !GNUObjCMessageSend !944
br label %15, !dbg !1302
15: ; preds = %14, %10
tail call void @llvm.dbg.value(metadata i64 1, metadata !591, metadata !DIExpression()), !dbg !1293
tail call void @llvm.dbg.value(metadata i64 1, metadata !591, metadata !DIExpression()), !dbg !1293
%16 = call ptr @objc_msgSend(ptr noundef nonnull %8, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !1294, !GNUObjCMessageSend !935
%17 = call ptr @objc_msgSend(ptr noundef %16, ptr noundef nonnull @".objc_selector_defaultValueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_cumulative), !dbg !1295, !GNUObjCMessageSend !937
tail call void @llvm.dbg.value(metadata ptr %17, metadata !593, metadata !DIExpression()), !dbg !1296
%18 = icmp eq ptr %17, null, !dbg !1297
br i1 %18, label %20, label %19, !dbg !1299
19: ; preds = %15
call void @objc_msgSend(ptr noundef nonnull %8, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %17, ptr noundef nonnull @.objc_str_cumulative), !dbg !1300, !GNUObjCMessageSend !944
br label %20, !dbg !1302
20: ; preds = %19, %15
tail call void @llvm.dbg.value(metadata i64 2, metadata !591, metadata !DIExpression()), !dbg !1293
tail call void @llvm.dbg.value(metadata i64 2, metadata !591, metadata !DIExpression()), !dbg !1293
%21 = call ptr @objc_msgSend(ptr noundef nonnull %8, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !1294, !GNUObjCMessageSend !935
%22 = call ptr @objc_msgSend(ptr noundef %21, ptr noundef nonnull @".objc_selector_defaultValueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_valueFunction), !dbg !1295, !GNUObjCMessageSend !937
tail call void @llvm.dbg.value(metadata ptr %22, metadata !593, metadata !DIExpression()), !dbg !1296
%23 = icmp eq ptr %22, null, !dbg !1297
br i1 %23, label %25, label %24, !dbg !1299
24: ; preds = %20
call void @objc_msgSend(ptr noundef nonnull %8, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %22, ptr noundef nonnull @.objc_str_valueFunction), !dbg !1300, !GNUObjCMessageSend !944
br label %25, !dbg !1302
25: ; preds = %20, %24, %3
ret ptr %8, !dbg !1303
}
; Function Attrs: uwtable
define internal ptr @_i_CAPropertyAnimation__initWithCoder_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !601 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !603, metadata !DIExpression()), !dbg !1304
tail call void @llvm.dbg.value(metadata ptr poison, metadata !604, metadata !DIExpression()), !dbg !1304
tail call void @llvm.dbg.value(metadata ptr %2, metadata !605, metadata !DIExpression()), !dbg !1304
%4 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_init_\0116\010:8"), !dbg !1305, !GNUObjCMessageSend !870
tail call void @llvm.dbg.value(metadata ptr %4, metadata !603, metadata !DIExpression()), !dbg !1304
%5 = icmp eq ptr %4, null, !dbg !1306
br i1 %5, label %21, label %6, !dbg !1308
6: ; preds = %3
tail call void @llvm.dbg.value(metadata i64 0, metadata !606, metadata !DIExpression()), !dbg !1309
%7 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_containsValueForKey:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -4354093952098671292 to ptr)), !dbg !1310, !GNUObjCMessageSend !964
%8 = icmp eq i8 %7, 0, !dbg !1310
br i1 %8, label %11, label %9, !dbg !1314
9: ; preds = %6
%10 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_decodeObjectForKey:_\0124\010:8\0116", ptr noundef nonnull inttoptr (i64 -4354093952098671292 to ptr)), !dbg !1315, !GNUObjCMessageSend !968
tail call void @objc_msgSend(ptr noundef nonnull %4, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef %10, ptr noundef nonnull inttoptr (i64 -4354093952098671292 to ptr)), !dbg !1317, !GNUObjCMessageSend !944
br label %11, !dbg !1318
11: ; preds = %6, %9
tail call void @llvm.dbg.value(metadata i64 1, metadata !606, metadata !DIExpression()), !dbg !1309
tail call void @llvm.dbg.value(metadata i64 1, metadata !606, metadata !DIExpression()), !dbg !1309
%12 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_containsValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_cumulative), !dbg !1310, !GNUObjCMessageSend !964
%13 = icmp eq i8 %12, 0, !dbg !1310
br i1 %13, label %16, label %14, !dbg !1314
14: ; preds = %11
%15 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_decodeObjectForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_cumulative), !dbg !1315, !GNUObjCMessageSend !968
tail call void @objc_msgSend(ptr noundef nonnull %4, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef %15, ptr noundef nonnull @.objc_str_cumulative), !dbg !1317, !GNUObjCMessageSend !944
br label %16, !dbg !1318
16: ; preds = %14, %11
tail call void @llvm.dbg.value(metadata i64 2, metadata !606, metadata !DIExpression()), !dbg !1309
tail call void @llvm.dbg.value(metadata i64 2, metadata !606, metadata !DIExpression()), !dbg !1309
%17 = tail call zeroext i8 @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_containsValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_valueFunction), !dbg !1310, !GNUObjCMessageSend !964
%18 = icmp eq i8 %17, 0, !dbg !1310
br i1 %18, label %21, label %19, !dbg !1314
19: ; preds = %16
%20 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_decodeObjectForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_valueFunction), !dbg !1315, !GNUObjCMessageSend !968
tail call void @objc_msgSend(ptr noundef nonnull %4, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef %20, ptr noundef nonnull @.objc_str_valueFunction), !dbg !1317, !GNUObjCMessageSend !944
br label %21, !dbg !1318
21: ; preds = %16, %19, %3
ret ptr %4, !dbg !1319
}
; Function Attrs: uwtable
define internal void @_i_CAPropertyAnimation__encodeWithCoder_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !610 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !612, metadata !DIExpression()), !dbg !1320
tail call void @llvm.dbg.value(metadata ptr poison, metadata !613, metadata !DIExpression()), !dbg !1320
tail call void @llvm.dbg.value(metadata ptr %2, metadata !614, metadata !DIExpression()), !dbg !1320
tail call void @llvm.dbg.value(metadata i32 0, metadata !615, metadata !DIExpression()), !dbg !1321
tail call void @llvm.dbg.value(metadata i64 0, metadata !615, metadata !DIExpression()), !dbg !1321
%4 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !1322, !GNUObjCMessageSend !935
%5 = tail call zeroext i8 @objc_msgSend(ptr noundef %4, ptr noundef nonnull @".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116", ptr noundef nonnull inttoptr (i64 -4354093952098671292 to ptr)), !dbg !1326, !GNUObjCMessageSend !979
%6 = icmp eq i8 %5, 0, !dbg !1326
br i1 %6, label %8, label %7, !dbg !1327
7: ; preds = %3
tail call void @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr noundef %2), !dbg !1328, !GNUObjCMessageSend !983
br label %8, !dbg !1330
8: ; preds = %3, %7
tail call void @llvm.dbg.value(metadata i64 1, metadata !615, metadata !DIExpression()), !dbg !1321
tail call void @llvm.dbg.value(metadata i64 1, metadata !615, metadata !DIExpression()), !dbg !1321
%9 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !1322, !GNUObjCMessageSend !935
%10 = tail call zeroext i8 @objc_msgSend(ptr noundef %9, ptr noundef nonnull @".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_cumulative), !dbg !1326, !GNUObjCMessageSend !979
%11 = icmp eq i8 %10, 0, !dbg !1326
br i1 %11, label %13, label %12, !dbg !1327
12: ; preds = %8
tail call void @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr noundef %2), !dbg !1328, !GNUObjCMessageSend !983
br label %13, !dbg !1330
13: ; preds = %12, %8
tail call void @llvm.dbg.value(metadata i64 2, metadata !615, metadata !DIExpression()), !dbg !1321
tail call void @llvm.dbg.value(metadata i64 2, metadata !615, metadata !DIExpression()), !dbg !1321
%14 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !1322, !GNUObjCMessageSend !935
%15 = tail call zeroext i8 @objc_msgSend(ptr noundef %14, ptr noundef nonnull @".objc_selector_shouldArchiveValueForKey:_C24\010:8\0116", ptr noundef nonnull @.objc_str_valueFunction), !dbg !1326, !GNUObjCMessageSend !979
%16 = icmp eq i8 %15, 0, !dbg !1326
br i1 %16, label %18, label %17, !dbg !1327
17: ; preds = %13
tail call void @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_encodeWithCoder:_v24\010:8\0116", ptr noundef %2), !dbg !1328, !GNUObjCMessageSend !983
br label %18, !dbg !1330
18: ; preds = %17, %13
tail call void @llvm.dbg.value(metadata i64 3, metadata !615, metadata !DIExpression()), !dbg !1321
ret void, !dbg !1331
}
; Function Attrs: uwtable
define internal ptr @_i_CAPropertyAnimation__copyWithZone_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !619 {
%4 = alloca { ptr, ptr }, align 8
tail call void @llvm.dbg.value(metadata ptr %0, metadata !621, metadata !DIExpression()), !dbg !1332
tail call void @llvm.dbg.value(metadata ptr poison, metadata !622, metadata !DIExpression()), !dbg !1332
tail call void @llvm.dbg.value(metadata ptr %2, metadata !623, metadata !DIExpression()), !dbg !1332
%5 = load ptr, ptr @._OBJC_REF_CLASS_CAAnimation, align 8, !dbg !1333
store ptr %0, ptr %4, align 8, !dbg !1333
%6 = getelementptr inbounds { ptr, ptr }, ptr %4, i64 0, i32 1, !dbg !1333
store ptr %5, ptr %6, align 8, !dbg !1333
%7 = call ptr @objc_msg_lookup_super(ptr nonnull %4, ptr nonnull @".objc_selector_copyWithZone:_") #15, !dbg !1333
%8 = call ptr %7(ptr noundef %0, ptr noundef nonnull @".objc_selector_copyWithZone:_", ptr noundef %2), !dbg !1333, !GNUObjCMessageSend !1334
tail call void @llvm.dbg.value(metadata ptr %8, metadata !624, metadata !DIExpression()), !dbg !1332
%9 = icmp eq ptr %8, null, !dbg !1335
br i1 %9, label %22, label %10, !dbg !1337
10: ; preds = %3
tail call void @llvm.dbg.value(metadata i64 0, metadata !625, metadata !DIExpression()), !dbg !1338
%11 = call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_valueForKey:_\0124\010:8\0116", ptr noundef nonnull inttoptr (i64 -4354093952098671292 to ptr)), !dbg !1339, !GNUObjCMessageSend !995
tail call void @llvm.dbg.value(metadata ptr %11, metadata !627, metadata !DIExpression()), !dbg !1340
%12 = icmp eq ptr %11, null, !dbg !1341
br i1 %12, label %14, label %13, !dbg !1343
13: ; preds = %10
call void @objc_msgSend(ptr noundef nonnull %8, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %11, ptr noundef nonnull inttoptr (i64 -4354093952098671292 to ptr)), !dbg !1344, !GNUObjCMessageSend !944
br label %14, !dbg !1346
14: ; preds = %13, %10
tail call void @llvm.dbg.value(metadata i64 1, metadata !625, metadata !DIExpression()), !dbg !1338
tail call void @llvm.dbg.value(metadata i64 1, metadata !625, metadata !DIExpression()), !dbg !1338
%15 = call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_valueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_cumulative), !dbg !1339, !GNUObjCMessageSend !995
tail call void @llvm.dbg.value(metadata ptr %15, metadata !627, metadata !DIExpression()), !dbg !1340
%16 = icmp eq ptr %15, null, !dbg !1341
br i1 %16, label %18, label %17, !dbg !1343
17: ; preds = %14
call void @objc_msgSend(ptr noundef nonnull %8, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %15, ptr noundef nonnull @.objc_str_cumulative), !dbg !1344, !GNUObjCMessageSend !944
br label %18, !dbg !1346
18: ; preds = %17, %14
tail call void @llvm.dbg.value(metadata i64 2, metadata !625, metadata !DIExpression()), !dbg !1338
tail call void @llvm.dbg.value(metadata i64 2, metadata !625, metadata !DIExpression()), !dbg !1338
%19 = call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_valueForKey:_\0124\010:8\0116", ptr noundef nonnull @.objc_str_valueFunction), !dbg !1339, !GNUObjCMessageSend !995
tail call void @llvm.dbg.value(metadata ptr %19, metadata !627, metadata !DIExpression()), !dbg !1340
%20 = icmp eq ptr %19, null, !dbg !1341
br i1 %20, label %22, label %21, !dbg !1343
21: ; preds = %18
call void @objc_msgSend(ptr noundef nonnull %8, ptr noundef nonnull @".objc_selector_setValue:forKey:_v32\010:8\0116\0124", ptr noundef nonnull %19, ptr noundef nonnull @.objc_str_valueFunction), !dbg !1344, !GNUObjCMessageSend !944
br label %22, !dbg !1346
22: ; preds = %18, %21, %3
ret ptr %8, !dbg !1347
}
; Function Attrs: uwtable
define internal void @_i_CAPropertyAnimation__dealloc(ptr noundef %0, ptr nocapture readnone %1) #0 !dbg !1348 {
%3 = alloca { ptr, ptr }, align 8
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1350, metadata !DIExpression()), !dbg !1352
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1351, metadata !DIExpression()), !dbg !1352
%4 = load i32, ptr @"__objc_ivar_offset_CAPropertyAnimation._keyPath.\01", align 4, !dbg !1353
%5 = zext i32 %4 to i64, !dbg !1353
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1353
%7 = load ptr, ptr %6, align 8, !dbg !1353
tail call void @objc_msgSend(ptr noundef %7, ptr noundef nonnull @".objc_selector_release_Vv16\010:8"), !dbg !1354, !GNUObjCMessageSend !1011
%8 = load i32, ptr @"__objc_ivar_offset_CAPropertyAnimation._valueFunction.\01", align 4, !dbg !1355
%9 = zext i32 %8 to i64, !dbg !1355
%10 = getelementptr inbounds i8, ptr %0, i64 %9, !dbg !1355
%11 = load ptr, ptr %10, align 8, !dbg !1355
tail call void @objc_msgSend(ptr noundef %11, ptr noundef nonnull @".objc_selector_release_Vv16\010:8"), !dbg !1356, !GNUObjCMessageSend !1011
%12 = load ptr, ptr @._OBJC_REF_CLASS_CAAnimation, align 8, !dbg !1357
store ptr %0, ptr %3, align 8, !dbg !1357
%13 = getelementptr inbounds { ptr, ptr }, ptr %3, i64 0, i32 1, !dbg !1357
store ptr %12, ptr %13, align 8, !dbg !1357
%14 = call ptr @objc_msg_lookup_super(ptr nonnull %3, ptr nonnull @.objc_selector_dealloc_) #15, !dbg !1357
call void %14(ptr noundef %0, ptr noundef nonnull @.objc_selector_dealloc_), !dbg !1357, !GNUObjCMessageSend !1358
ret void, !dbg !1359
}
; Function Attrs: uwtable
define internal void @_i_CAPropertyAnimation__applyToLayer_(ptr noundef %0, ptr nocapture readnone %1, ptr noundef %2) #0 !dbg !1360 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1362, metadata !DIExpression()), !dbg !1368
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1363, metadata !DIExpression()), !dbg !1368
tail call void @llvm.dbg.value(metadata ptr %2, metadata !1364, metadata !DIExpression()), !dbg !1368
%4 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_modelLayer_\0116\010:8"), !dbg !1369, !GNUObjCMessageSend !1370
%5 = icmp eq ptr %0, null, !dbg !1371
br i1 %5, label %9, label %6, !dbg !1371
6: ; preds = %3
%7 = tail call double @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_localTimeWithTimeAuthority:_d24\010:8\0116", ptr noundef %4), !dbg !1371, !GNUObjCMessageSend !1372
tail call void @llvm.dbg.value(metadata double %7, metadata !1365, metadata !DIExpression()), !dbg !1368
%8 = fcmp olt double %7, 0.000000e+00, !dbg !1373
br i1 %8, label %18, label %9, !dbg !1375
9: ; preds = %3, %6
%10 = phi double [ %7, %6 ], [ 0.000000e+00, %3 ]
%11 = tail call ptr @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_modelLayer_\0116\010:8"), !dbg !1376, !GNUObjCMessageSend !1370
%12 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_keyPath_\0116\010:8"), !dbg !1377, !GNUObjCMessageSend !1378
%13 = tail call ptr @objc_msgSend(ptr noundef %11, ptr noundef nonnull @".objc_selector_valueForKeyPath:_\0124\010:8\0116", ptr noundef %12), !dbg !1379, !GNUObjCMessageSend !1380
tail call void @llvm.dbg.value(metadata ptr %13, metadata !1366, metadata !DIExpression()), !dbg !1368
%14 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_calculatedAnimationValueAtTime:onLayer:_\0132\010:8d16\0124", double noundef %10, ptr noundef %2), !dbg !1381, !GNUObjCMessageSend !1382
tail call void @llvm.dbg.value(metadata ptr %14, metadata !1367, metadata !DIExpression()), !dbg !1368
%15 = icmp eq ptr %14, null, !dbg !1383
br i1 %15, label %18, label %16, !dbg !1385
16: ; preds = %9
%17 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_keyPath_\0116\010:8"), !dbg !1386, !GNUObjCMessageSend !1378
tail call void @objc_msgSend(ptr noundef %2, ptr noundef nonnull @".objc_selector_setValue:forKeyPath:_v32\010:8\0116\0124", ptr noundef nonnull %14, ptr noundef %17), !dbg !1387, !GNUObjCMessageSend !1388
br label %18, !dbg !1389
18: ; preds = %16, %9, %6
ret void, !dbg !1389
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(none) uwtable
define internal noalias noundef ptr @_i_CAPropertyAnimation__calculatedAnimationValueAtTime_onLayer_(ptr nocapture readnone %0, ptr nocapture readnone %1, double %2, ptr nocapture readnone %3) #3 !dbg !1390 {
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1392, metadata !DIExpression()), !dbg !1396
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1393, metadata !DIExpression()), !dbg !1396
tail call void @llvm.dbg.value(metadata double poison, metadata !1394, metadata !DIExpression()), !dbg !1396
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1395, metadata !DIExpression()), !dbg !1396
ret ptr null, !dbg !1397
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal zeroext i8 @_i_CAPropertyAnimation__isAdditive(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !1398 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1400, metadata !DIExpression()), !dbg !1402
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1401, metadata !DIExpression()), !dbg !1402
%3 = load i32, ptr @__objc_ivar_offset_CAPropertyAnimation._additive.C, align 4, !dbg !1403
%4 = zext i32 %3 to i64, !dbg !1403
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !1403
%6 = load atomic i8, ptr %5 unordered, align 1, !dbg !1403
ret i8 %6, !dbg !1403
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CAPropertyAnimation__setAdditive_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, i8 noundef zeroext %2) #5 !dbg !1404 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1406, metadata !DIExpression()), !dbg !1409
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1407, metadata !DIExpression()), !dbg !1409
tail call void @llvm.dbg.value(metadata i8 %2, metadata !1408, metadata !DIExpression()), !dbg !1409
%4 = load i32, ptr @__objc_ivar_offset_CAPropertyAnimation._additive.C, align 4, !dbg !1410
%5 = zext i32 %4 to i64, !dbg !1410
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1410
store atomic i8 %2, ptr %6 unordered, align 1, !dbg !1410
ret void, !dbg !1411
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal zeroext i8 @_i_CAPropertyAnimation__isCumulative(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !1412 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1414, metadata !DIExpression()), !dbg !1416
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1415, metadata !DIExpression()), !dbg !1416
%3 = load i32, ptr @__objc_ivar_offset_CAPropertyAnimation._cumulative.C, align 4, !dbg !1417
%4 = zext i32 %3 to i64, !dbg !1417
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !1417
%6 = load atomic i8, ptr %5 unordered, align 1, !dbg !1417
ret i8 %6, !dbg !1417
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CAPropertyAnimation__setCumulative_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, i8 noundef zeroext %2) #5 !dbg !1418 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1420, metadata !DIExpression()), !dbg !1423
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1421, metadata !DIExpression()), !dbg !1423
tail call void @llvm.dbg.value(metadata i8 %2, metadata !1422, metadata !DIExpression()), !dbg !1423
%4 = load i32, ptr @__objc_ivar_offset_CAPropertyAnimation._cumulative.C, align 4, !dbg !1424
%5 = zext i32 %4 to i64, !dbg !1424
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1424
store atomic i8 %2, ptr %6 unordered, align 1, !dbg !1424
ret void, !dbg !1425
}
; Function Attrs: uwtable
define internal ptr @_i_CAPropertyAnimation__keyPath(ptr noundef %0, ptr noundef %1) #0 !dbg !1426 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1428, metadata !DIExpression()), !dbg !1430
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1429, metadata !DIExpression()), !dbg !1430
%3 = load i32, ptr @"__objc_ivar_offset_CAPropertyAnimation._keyPath.\01", align 4, !dbg !1431
%4 = zext i32 %3 to i64, !dbg !1431
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !1431
ret ptr %5, !dbg !1431
}
; Function Attrs: uwtable
define internal void @_i_CAPropertyAnimation__setKeyPath_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !1432 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1434, metadata !DIExpression()), !dbg !1437
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1435, metadata !DIExpression()), !dbg !1437
tail call void @llvm.dbg.value(metadata ptr %2, metadata !1436, metadata !DIExpression()), !dbg !1437
%4 = load i32, ptr @"__objc_ivar_offset_CAPropertyAnimation._keyPath.\01", align 4, !dbg !1438
%5 = zext i32 %4 to i64, !dbg !1438
tail call void @objc_setProperty_atomic(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !1438
ret void, !dbg !1439
}
; Function Attrs: uwtable
define internal ptr @_i_CAPropertyAnimation__valueFunction(ptr noundef %0, ptr noundef %1) #0 !dbg !1440 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1442, metadata !DIExpression()), !dbg !1444
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1443, metadata !DIExpression()), !dbg !1444
%3 = load i32, ptr @"__objc_ivar_offset_CAPropertyAnimation._valueFunction.\01", align 4, !dbg !1445
%4 = zext i32 %3 to i64, !dbg !1445
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !1445
ret ptr %5, !dbg !1445
}
; Function Attrs: uwtable
define internal void @_i_CAPropertyAnimation__setValueFunction_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !1446 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1448, metadata !DIExpression()), !dbg !1451
tail call void @llvm.dbg.value(metadata ptr %1, metadata !1449, metadata !DIExpression()), !dbg !1451
tail call void @llvm.dbg.value(metadata ptr %2, metadata !1450, metadata !DIExpression()), !dbg !1451
%4 = load i32, ptr @"__objc_ivar_offset_CAPropertyAnimation._valueFunction.\01", align 4, !dbg !1452
%5 = zext i32 %4 to i64, !dbg !1452
tail call void @objc_setProperty_atomic(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !1452
ret void, !dbg !1453
}
; Function Attrs: uwtable
define internal void @_i_CABasicAnimation__dealloc(ptr noundef %0, ptr nocapture readnone %1) #0 !dbg !1454 {
%3 = alloca { ptr, ptr }, align 8
tail call void @llvm.dbg.value(metadata ptr %0, metadata !1456, metadata !DIExpression()), !dbg !1458
tail call void @llvm.dbg.value(metadata ptr poison, metadata !1457, metadata !DIExpression()), !dbg !1458
%4 = load i32, ptr @"__objc_ivar_offset_CABasicAnimation._fromValue.\01", align 4, !dbg !1459
%5 = zext i32 %4 to i64, !dbg !1459
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !1459
%7 = load ptr, ptr %6, align 8, !dbg !1459
tail call void @objc_msgSend(ptr noundef %7, ptr noundef nonnull @".objc_selector_release_Vv16\010:8"), !dbg !1460, !GNUObjCMessageSend !1011
%8 = load i32, ptr @"__objc_ivar_offset_CABasicAnimation._byValue.\01", align 4, !dbg !1461
%9 = zext i32 %8 to i64, !dbg !1461
%10 = getelementptr inbounds i8, ptr %0, i64 %9, !dbg !1461
%11 = load ptr, ptr %10, align 8, !dbg !1461
tail call void @objc_msgSend(ptr noundef %11, ptr noundef nonnull @".objc_selector_release_Vv16\010:8"), !dbg !1462, !GNUObjCMessageSend !1011
%12 = load i32, ptr @"__objc_ivar_offset_CABasicAnimation._toValue.\01", align 4, !dbg !1463
%13 = zext i32 %12 to i64, !dbg !1463
%14 = getelementptr inbounds i8, ptr %0, i64 %13, !dbg !1463
%15 = load ptr, ptr %14, align 8, !dbg !1463
tail call void @objc_msgSend(ptr noundef %15, ptr noundef nonnull @".objc_selector_release_Vv16\010:8"), !dbg !1464, !GNUObjCMessageSend !1011
%16 = load ptr, ptr @._OBJC_REF_CLASS_CAPropertyAnimation, align 8, !dbg !1465
store ptr %0, ptr %3, align 8, !dbg !1465
%17 = getelementptr inbounds { ptr, ptr }, ptr %3, i64 0, i32 1, !dbg !1465
store ptr %16, ptr %17, align 8, !dbg !1465
%18 = call ptr @objc_msg_lookup_super(ptr nonnull %3, ptr nonnull @.objc_selector_dealloc_) #15, !dbg !1465
call void %18(ptr noundef %0, ptr noundef nonnull @.objc_selector_dealloc_), !dbg !1465, !GNUObjCMessageSend !1466
ret void, !dbg !1467
}
; Function Attrs: uwtable
define internal ptr @_i_CABasicAnimation__calculatedAnimationValueAtTime_onLayer_(ptr noundef %0, ptr nocapture readnone %1, double noundef %2, ptr noundef %3) #0 !dbg !632 {
%5 = alloca %struct._NSPoint, align 8, !DIAssignID !1468
call void @llvm.dbg.assign(metadata i1 undef, metadata !656, metadata !DIExpression(), metadata !1468, metadata ptr %5, metadata !DIExpression()), !dbg !1469
%6 = alloca %struct._NSPoint, align 8, !DIAssignID !1470
call void @llvm.dbg.assign(metadata i1 undef, metadata !659, metadata !DIExpression(), metadata !1470, metadata ptr %6, metadata !DIExpression()), !dbg !1469
%7 = alloca %struct._NSPoint, align 16, !DIAssignID !1471
call void @llvm.dbg.assign(metadata i1 undef, metadata !665, metadata !DIExpression(), metadata !1471, metadata ptr %7, metadata !DIExpression()), !dbg !1472
%8 = alloca %struct._NSPoint, align 16, !DIAssignID !1473
call void @llvm.dbg.assign(metadata i1 undef, metadata !668, metadata !DIExpression(), metadata !1473, metadata ptr %8, metadata !DIExpression()), !dbg !1472
%9 = alloca %struct._NSPoint, align 16, !DIAssignID !1474
call void @llvm.dbg.assign(metadata i1 undef, metadata !669, metadata !DIExpression(), metadata !1474, metadata ptr %9, metadata !DIExpression()), !dbg !1472
%10 = alloca %struct._NSSize, align 8, !DIAssignID !1475
call void @llvm.dbg.assign(metadata i1 undef, metadata !670, metadata !DIExpression(), metadata !1475, metadata ptr %10, metadata !DIExpression()), !dbg !1476
%11 = alloca %struct._NSSize, align 8, !DIAssignID !1477
call void @llvm.dbg.assign(metadata i1 undef, metadata !673, metadata !DIExpression(), metadata !1477, metadata ptr %11, metadata !DIExpression()), !dbg !1476
%12 = alloca %struct._NSSize, align 16, !DIAssignID !1478
call void @llvm.dbg.assign(metadata i1 undef, metadata !679, metadata !DIExpression(), metadata !1478, metadata ptr %12, metadata !DIExpression()), !dbg !1479
%13 = alloca %struct._NSSize, align 16, !DIAssignID !1480
call void @llvm.dbg.assign(metadata i1 undef, metadata !682, metadata !DIExpression(), metadata !1480, metadata ptr %13, metadata !DIExpression()), !dbg !1479
%14 = alloca %struct._NSSize, align 16, !DIAssignID !1481
call void @llvm.dbg.assign(metadata i1 undef, metadata !683, metadata !DIExpression(), metadata !1481, metadata ptr %14, metadata !DIExpression()), !dbg !1479
%15 = alloca %struct._NSRect, align 8, !DIAssignID !1482
call void @llvm.dbg.assign(metadata i1 undef, metadata !684, metadata !DIExpression(), metadata !1482, metadata ptr %15, metadata !DIExpression()), !dbg !1483
%16 = alloca %struct._NSRect, align 8
%17 = alloca %struct._NSRect, align 8
%18 = alloca %struct._NSRect, align 8
%19 = alloca %struct._NSRect, align 8
%20 = alloca %struct._NSRect, align 8, !DIAssignID !1484
call void @llvm.dbg.assign(metadata i1 undef, metadata !687, metadata !DIExpression(), metadata !1484, metadata ptr %20, metadata !DIExpression()), !dbg !1483
%21 = alloca %struct._NSRect, align 8
%22 = alloca %struct._NSRect, align 8
%23 = alloca %struct._NSRect, align 8
%24 = alloca %struct._NSRect, align 8
%25 = alloca %struct._NSRect, align 16, !DIAssignID !1485
call void @llvm.dbg.assign(metadata i1 undef, metadata !688, metadata !DIExpression(), metadata !1485, metadata ptr %25, metadata !DIExpression()), !dbg !1486
%26 = alloca %struct._NSRect, align 16, !DIAssignID !1487
call void @llvm.dbg.assign(metadata i1 undef, metadata !691, metadata !DIExpression(), metadata !1487, metadata ptr %26, metadata !DIExpression()), !dbg !1486
%27 = alloca %struct._NSRect, align 16, !DIAssignID !1488
call void @llvm.dbg.assign(metadata i1 undef, metadata !692, metadata !DIExpression(), metadata !1488, metadata ptr %27, metadata !DIExpression()), !dbg !1486
%28 = alloca %struct._NSRect, align 16, !DIAssignID !1489
call void @llvm.dbg.assign(metadata i1 undef, metadata !693, metadata !DIExpression(), metadata !1489, metadata ptr %28, metadata !DIExpression()), !dbg !1490
%29 = alloca %struct._NSRect, align 16, !DIAssignID !1491
call void @llvm.dbg.assign(metadata i1 undef, metadata !696, metadata !DIExpression(), metadata !1491, metadata ptr %29, metadata !DIExpression()), !dbg !1490
%30 = alloca %struct._NSRect, align 16, !DIAssignID !1492
call void @llvm.dbg.assign(metadata i1 undef, metadata !697, metadata !DIExpression(), metadata !1492, metadata ptr %30, metadata !DIExpression()), !dbg !1490
%31 = alloca %struct.CATransform3D, align 16, !DIAssignID !1493
call void @llvm.dbg.assign(metadata i1 undef, metadata !698, metadata !DIExpression(), metadata !1493, metadata ptr %31, metadata !DIExpression()), !dbg !1494
%32 = alloca %struct.CATransform3D, align 16, !DIAssignID !1495
call void @llvm.dbg.assign(metadata i1 undef, metadata !701, metadata !DIExpression(), metadata !1495, metadata ptr %32, metadata !DIExpression()), !dbg !1494
%33 = alloca %struct.CATransform3D, align 16, !DIAssignID !1496
call void @llvm.dbg.assign(metadata i1 undef, metadata !702, metadata !DIExpression(), metadata !1496, metadata ptr %33, metadata !DIExpression()), !dbg !1494
%34 = alloca %struct.CATransform3D, align 16, !DIAssignID !1497
call void @llvm.dbg.assign(metadata i1 undef, metadata !721, metadata !DIExpression(), metadata !1497, metadata ptr %34, metadata !DIExpression()), !dbg !1494
%35 = alloca %struct.CATransform3D, align 16, !DIAssignID !1498
call void @llvm.dbg.assign(metadata i1 undef, metadata !722, metadata !DIExpression(), metadata !1498, metadata ptr %35, metadata !DIExpression()), !dbg !1494
%36 = alloca %struct._GSQuartzCoreQuaternion, align 16, !DIAssignID !1499
call void @llvm.dbg.assign(metadata i1 undef, metadata !723, metadata !DIExpression(), metadata !1499, metadata ptr %36, metadata !DIExpression()), !dbg !1494
%37 = alloca %struct._GSQuartzCoreQuaternion, align 16, !DIAssignID !1500
call void @llvm.dbg.assign(metadata i1 undef, metadata !731, metadata !DIExpression(), metadata !1500, metadata ptr %37, metadata !DIExpression()), !dbg !1494
%38 = alloca %struct._GSQuartzCoreQuaternion, align 8, !DIAssignID !1501
call void @llvm.dbg.assign(metadata i1 undef, metadata !734, metadata !DIExpression(), metadata !1501, metadata ptr %38, metadata !DIExpression()), !dbg !1494
%39 = alloca [4 x double], align 16, !DIAssignID !1502
%40 = ptrtoint ptr %39 to i64, !dbg !1503
call void @llvm.dbg.assign(metadata i1 undef, metadata !746, metadata !DIExpression(), metadata !1502, metadata ptr %39, metadata !DIExpression()), !dbg !1504
tail call void @llvm.dbg.value(metadata ptr %0, metadata !634, metadata !DIExpression()), !dbg !1505
tail call void @llvm.dbg.value(metadata ptr poison, metadata !636, metadata !DIExpression()), !dbg !1505
tail call void @llvm.dbg.value(metadata double %2, metadata !637, metadata !DIExpression()), !dbg !1505
tail call void @llvm.dbg.value(metadata ptr %3, metadata !638, metadata !DIExpression()), !dbg !1505
%41 = load i32, ptr @__objc_ivar_offset_CAAnimation._duration.d, align 4, !dbg !1503
%42 = zext i32 %41 to i64, !dbg !1503
%43 = getelementptr inbounds i8, ptr %0, i64 %42, !dbg !1503
%44 = load double, ptr %43, align 8, !dbg !1503
%45 = fdiv double %2, %44, !dbg !1506
%46 = fptrunc double %45 to float, !dbg !1507
tail call void @llvm.dbg.value(metadata float %46, metadata !639, metadata !DIExpression()), !dbg !1505
%47 = tail call ptr @objc_msgSend(ptr noundef %0, ptr noundef nonnull @".objc_selector_timingFunction_\0116\010:8"), !dbg !1508, !GNUObjCMessageSend !1510
%48 = icmp eq ptr %47, null, !dbg !1508
br i1 %48, label %58, label %49, !dbg !1511
49: ; preds = %4
%50 = tail call ptr @objc_msgSend(ptr noundef nonnull %0, ptr noundef nonnull @".objc_selector_timingFunction_\0116\010:8"), !dbg !1512, !GNUObjCMessageSend !1510
%51 = icmp eq ptr %50, null, !dbg !1514
br i1 %51, label %55, label %52, !dbg !1514
52: ; preds = %49
%53 = fpext float %46 to double, !dbg !1515
%54 = tail call double @objc_msgSend(ptr noundef nonnull %50, ptr noundef nonnull @".objc_selector_evaluateYAtX:_d24\010:8d16", double noundef %53), !dbg !1514, !GNUObjCMessageSend !1516
br label %55, !dbg !1514
55: ; preds = %52, %49
%56 = phi double [ %54, %52 ], [ 0.000000e+00, %49 ], !dbg !1514
%57 = fptrunc double %56 to float, !dbg !1514
tail call void @llvm.dbg.value(metadata float %57, metadata !639, metadata !DIExpression()), !dbg !1505
br label %58, !dbg !1517
58: ; preds = %55, %4
%59 = phi float [ %57, %55 ], [ %46, %4 ], !dbg !1505
tail call void @llvm.dbg.value(metadata float %59, metadata !639, metadata !DIExpression()), !dbg !1505
%60 = load i32, ptr @"__objc_ivar_offset_CABasicAnimation._fromValue.\01", align 4, !dbg !1518
%61 = zext i32 %60 to i64, !dbg !1518
%62 = getelementptr inbounds i8, ptr %0, i64 %61, !dbg !1518
%63 = load ptr, ptr %62, align 8, !dbg !1518
tail call void @llvm.dbg.value(metadata ptr %63, metadata !640, metadata !DIExpression()), !dbg !1505
%64 = load i32, ptr @"__objc_ivar_offset_CABasicAnimation._toValue.\01", align 4, !dbg !1519
%65 = zext i32 %64 to i64, !dbg !1519
%66 = getelementptr inbounds i8, ptr %0, i64 %65, !dbg !1519
%67 = load ptr, ptr %66, align 8, !dbg !1519
tail call void @llvm.dbg.value(metadata ptr %67, metadata !641, metadata !DIExpression()), !dbg !1505
%68 = icmp eq ptr %67, null, !dbg !1520
br i1 %68, label %69, label %76, !dbg !1522
69: ; preds = %58
%70 = tail call ptr @objc_msgSend(ptr noundef %3, ptr noundef nonnull @".objc_selector_modelLayer_\0116\010:8"), !dbg !1523, !GNUObjCMessageSend !1370
%71 = load i32, ptr @"__objc_ivar_offset_CAPropertyAnimation._keyPath.\01", align 4, !dbg !1524
%72 = zext i32 %71 to i64, !dbg !1524
%73 = getelementptr inbounds i8, ptr %0, i64 %72, !dbg !1524
%74 = load ptr, ptr %73, align 8, !dbg !1524
%75 = tail call ptr @objc_msgSend(ptr noundef %70, ptr noundef nonnull @".objc_selector_valueForKeyPath:_\0124\010:8\0116", ptr noundef %74), !dbg !1525, !GNUObjCMessageSend !1380
tail call void @llvm.dbg.value(metadata ptr %75, metadata !641, metadata !DIExpression()), !dbg !1505
br label %76, !dbg !1526
76: ; preds = %69, %58
%77 = phi ptr [ %67, %58 ], [ %75, %69 ], !dbg !1505
tail call void @llvm.dbg.value(metadata ptr %77, metadata !641, metadata !DIExpression()), !dbg !1505
%78 = load ptr, ptr @._OBJC_REF_CLASS_NSNumber, align 8, !dbg !1527
%79 = tail call ptr @objc_msgSend(ptr noundef %78, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !1527, !GNUObjCMessageSend !1528
%80 = tail call zeroext i8 @objc_msgSend(ptr noundef %63, ptr noundef nonnull @".objc_selector_isKindOfClass:_C24\010:8#16", ptr noundef %79), !dbg !1529, !GNUObjCMessageSend !1530
%81 = icmp eq i8 %80, 0, !dbg !1529
br i1 %81, label %106, label %82, !dbg !1531
82: ; preds = %76
%83 = load ptr, ptr @._OBJC_REF_CLASS_NSNumber, align 8, !dbg !1532
%84 = tail call ptr @objc_msgSend(ptr noundef %83, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !1532, !GNUObjCMessageSend !1528
%85 = tail call zeroext i8 @objc_msgSend(ptr noundef %77, ptr noundef nonnull @".objc_selector_isKindOfClass:_C24\010:8#16", ptr noundef %84), !dbg !1533, !GNUObjCMessageSend !1530
%86 = icmp eq i8 %85, 0, !dbg !1533
br i1 %86, label %106, label %87, !dbg !1534
87: ; preds = %82
%88 = icmp eq ptr %63, null, !dbg !1535
br i1 %88, label %92, label %89, !dbg !1535
89: ; preds = %87
%90 = tail call float @objc_msgSend(ptr noundef nonnull %63, ptr noundef nonnull @".objc_selector_floatValue_f16\010:8"), !dbg !1535, !GNUObjCMessageSend !1536
%91 = fpext float %90 to double, !dbg !1537
br label %92, !dbg !1535
92: ; preds = %89, %87
%93 = phi double [ %91, %89 ], [ 0.000000e+00, %87 ], !dbg !1535
tail call void @llvm.dbg.value(metadata float poison, metadata !642, metadata !DIExpression()), !dbg !1538
%94 = icmp eq ptr %77, null, !dbg !1539
br i1 %94, label %98, label %95, !dbg !1539
95: ; preds = %92
%96 = tail call float @objc_msgSend(ptr noundef nonnull %77, ptr noundef nonnull @".objc_selector_floatValue_f16\010:8"), !dbg !1539, !GNUObjCMessageSend !1536
%97 = fpext float %96 to double, !dbg !1540
br label %98, !dbg !1539
98: ; preds = %95, %92
%99 = phi double [ %97, %95 ], [ 0.000000e+00, %92 ], !dbg !1539
tail call void @llvm.dbg.value(metadata float poison, metadata !645, metadata !DIExpression()), !dbg !1538
%100 = fpext float %59 to double, !dbg !1541
call void @llvm.dbg.value(metadata double %93, metadata !1542, metadata !DIExpression()), !dbg !1549
call void @llvm.dbg.value(metadata double %99, metadata !1547, metadata !DIExpression()), !dbg !1549
call void @llvm.dbg.value(metadata double %100, metadata !1548, metadata !DIExpression()), !dbg !1549
%101 = fsub double %99, %93, !dbg !1551
%102 = tail call noundef double @llvm.fmuladd.f64(double %101, double %100, double %93), !dbg !1552
%103 = fptrunc double %102 to float, !dbg !1553
tail call void @llvm.dbg.value(metadata float %103, metadata !646, metadata !DIExpression()), !dbg !1538
%104 = load ptr, ptr @._OBJC_REF_CLASS_NSNumber, align 8, !dbg !1554
%105 = tail call ptr @objc_msgSend(ptr noundef %104, ptr noundef nonnull @".objc_selector_numberWithFloat:_\0120\010:8f16", float noundef %103), !dbg !1554, !GNUObjCMessageSend !899
br label %708
106: ; preds = %82, %76
%107 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1555
%108 = tail call ptr @objc_msgSend(ptr noundef %107, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !1555, !GNUObjCMessageSend !1556
%109 = tail call zeroext i8 @objc_msgSend(ptr noundef %63, ptr noundef nonnull @".objc_selector_isKindOfClass:_C24\010:8#16", ptr noundef %108), !dbg !1557, !GNUObjCMessageSend !1530
%110 = icmp eq i8 %109, 0, !dbg !1557
br i1 %110, label %612, label %111, !dbg !1558
111: ; preds = %106
%112 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1559
%113 = tail call ptr @objc_msgSend(ptr noundef %112, ptr noundef nonnull @".objc_selector_class_#16\010:8"), !dbg !1559, !GNUObjCMessageSend !1556
%114 = tail call zeroext i8 @objc_msgSend(ptr noundef %77, ptr noundef nonnull @".objc_selector_isKindOfClass:_C24\010:8#16", ptr noundef %113), !dbg !1560, !GNUObjCMessageSend !1530
%115 = icmp eq i8 %114, 0, !dbg !1560
br i1 %115, label %612, label %116, !dbg !1561
116: ; preds = %111
%117 = tail call ptr @objc_msgSend(ptr noundef %63, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1562, !GNUObjCMessageSend !1563
%118 = tail call ptr @objc_msgSend(ptr noundef %77, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1564, !GNUObjCMessageSend !1563
%119 = tail call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %117, ptr noundef nonnull dereferenceable(1) %118) #17, !dbg !1565
%120 = icmp eq i32 %119, 0, !dbg !1565
br i1 %120, label %121, label %612, !dbg !1566
121: ; preds = %116
tail call void @llvm.dbg.value(metadata ptr %63, metadata !647, metadata !DIExpression()), !dbg !1567
tail call void @llvm.dbg.value(metadata ptr %77, metadata !655, metadata !DIExpression()), !dbg !1567
%122 = tail call ptr @objc_msgSend(ptr noundef %63, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1568, !GNUObjCMessageSend !1563
%123 = tail call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %122, ptr noundef nonnull dereferenceable(14) @.str) #17, !dbg !1569
%124 = icmp eq i32 %123, 0, !dbg !1569
br i1 %124, label %125, label %150, !dbg !1570
125: ; preds = %121
call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %5) #15, !dbg !1571
%126 = icmp eq ptr %63, null, !dbg !1572
br i1 %126, label %132, label %127, !dbg !1572
127: ; preds = %125
%128 = tail call { double, double } @objc_msgSend(ptr noundef nonnull %63, ptr noundef nonnull @".objc_selector_pointValue_{_NSPoint=dd}16\010:8"), !dbg !1572, !GNUObjCMessageSend !1573
%129 = extractvalue { double, double } %128, 0, !dbg !1572
%130 = tail call { double, double } @objc_msgSend(ptr noundef nonnull %63, ptr noundef nonnull @".objc_selector_pointValue_{_NSPoint=dd}16\010:8"), !dbg !1574, !GNUObjCMessageSend !1573
%131 = extractvalue { double, double } %130, 1, !dbg !1574
br label %132, !dbg !1574
132: ; preds = %125, %127
%133 = phi double [ %129, %127 ], [ 0.000000e+00, %125 ]
%134 = phi double [ %131, %127 ], [ 0.000000e+00, %125 ], !dbg !1574
store double %133, ptr %5, align 8, !dbg !1575, !DIAssignID !1576
call void @llvm.dbg.assign(metadata double %133, metadata !656, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1576, metadata ptr %5, metadata !DIExpression()), !dbg !1469
%135 = getelementptr inbounds { double, double }, ptr %5, i64 0, i32 1, !dbg !1575
store double %134, ptr %135, align 8, !dbg !1575, !DIAssignID !1577
call void @llvm.dbg.assign(metadata double %134, metadata !656, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1577, metadata ptr %135, metadata !DIExpression()), !dbg !1469
call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %6) #15, !dbg !1578
%136 = icmp eq ptr %77, null, !dbg !1579
br i1 %136, label %142, label %137, !dbg !1579
137: ; preds = %132
%138 = tail call { double, double } @objc_msgSend(ptr noundef nonnull %77, ptr noundef nonnull @".objc_selector_pointValue_{_NSPoint=dd}16\010:8"), !dbg !1579, !GNUObjCMessageSend !1573
%139 = extractvalue { double, double } %138, 0, !dbg !1579
%140 = tail call { double, double } @objc_msgSend(ptr noundef nonnull %77, ptr noundef nonnull @".objc_selector_pointValue_{_NSPoint=dd}16\010:8"), !dbg !1580, !GNUObjCMessageSend !1573
%141 = extractvalue { double, double } %140, 1, !dbg !1580
br label %142, !dbg !1580
142: ; preds = %132, %137
%143 = phi double [ %139, %137 ], [ 0.000000e+00, %132 ]
%144 = phi double [ %141, %137 ], [ 0.000000e+00, %132 ], !dbg !1580
store double %143, ptr %6, align 8, !dbg !1581, !DIAssignID !1582
call void @llvm.dbg.assign(metadata double %143, metadata !659, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1582, metadata ptr %6, metadata !DIExpression()), !dbg !1469
%145 = getelementptr inbounds { double, double }, ptr %6, i64 0, i32 1, !dbg !1581
store double %144, ptr %145, align 8, !dbg !1581, !DIAssignID !1583
call void @llvm.dbg.assign(metadata double %144, metadata !659, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1583, metadata ptr %145, metadata !DIExpression()), !dbg !1469
%146 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1584
%147 = call ptr @objc_msgSend(ptr noundef %146, ptr noundef nonnull @".objc_selector_valueWithBytes:objCType:_\0132\010:8r^v16r*24", ptr noundef nonnull %5, ptr noundef nonnull @.str), !dbg !1584, !GNUObjCMessageSend !1585
tail call void @llvm.dbg.value(metadata ptr %147, metadata !647, metadata !DIExpression()), !dbg !1567
%148 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1586
%149 = call ptr @objc_msgSend(ptr noundef %148, ptr noundef nonnull @".objc_selector_valueWithBytes:objCType:_\0132\010:8r^v16r*24", ptr noundef nonnull %6, ptr noundef nonnull @.str), !dbg !1586, !GNUObjCMessageSend !1585
tail call void @llvm.dbg.value(metadata ptr %149, metadata !655, metadata !DIExpression()), !dbg !1567
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %6) #15, !dbg !1587
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %5) #15, !dbg !1587
br label %150, !dbg !1588
150: ; preds = %142, %121
%151 = phi ptr [ %77, %121 ], [ %149, %142 ], !dbg !1567
%152 = phi ptr [ %63, %121 ], [ %147, %142 ], !dbg !1567
tail call void @llvm.dbg.value(metadata ptr %152, metadata !647, metadata !DIExpression()), !dbg !1567
tail call void @llvm.dbg.value(metadata ptr %151, metadata !655, metadata !DIExpression()), !dbg !1567
%153 = call ptr @objc_msgSend(ptr noundef %152, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1589, !GNUObjCMessageSend !1563
%154 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %153, ptr noundef nonnull dereferenceable(14) @.str) #17, !dbg !1590
%155 = icmp eq i32 %154, 0, !dbg !1590
br i1 %155, label %156, label %183, !dbg !1591
156: ; preds = %150
%157 = load i1, ptr @"calculatedAnimationValueAtTime:onLayer:.warned", align 1, !dbg !1592
br i1 %157, label %159, label %158, !dbg !1594
158: ; preds = %156
call void (ptr, ...) @NSLog(ptr noundef nonnull @.objc_string), !dbg !1595
br label %159, !dbg !1597
159: ; preds = %158, %156
store i1 true, ptr @"calculatedAnimationValueAtTime:onLayer:.warned", align 1, !dbg !1598
%160 = icmp eq ptr %152, null, !dbg !1599
br i1 %160, label %165, label %161, !dbg !1599
161: ; preds = %159
%162 = call { double, double } @objc_msgSend(ptr noundef nonnull %152, ptr noundef nonnull @".objc_selector_pointValue_{_NSPoint=dd}16\010:8"), !dbg !1599, !GNUObjCMessageSend !1573
%163 = extractvalue { double, double } %162, 0, !dbg !1599
tail call void @llvm.dbg.value(metadata double %163, metadata !660, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1600
%164 = extractvalue { double, double } %162, 1, !dbg !1599
tail call void @llvm.dbg.value(metadata double %164, metadata !660, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1600
br label %165, !dbg !1599
165: ; preds = %159, %161
%166 = phi double [ %164, %161 ], [ 0.000000e+00, %159 ], !dbg !1599
%167 = phi double [ %163, %161 ], [ 0.000000e+00, %159 ], !dbg !1599
tail call void @llvm.dbg.value(metadata double %167, metadata !660, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1600
tail call void @llvm.dbg.value(metadata double %166, metadata !660, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1600
%168 = icmp eq ptr %151, null, !dbg !1601
br i1 %168, label %173, label %169, !dbg !1601
169: ; preds = %165
%170 = call { double, double } @objc_msgSend(ptr noundef nonnull %151, ptr noundef nonnull @".objc_selector_pointValue_{_NSPoint=dd}16\010:8"), !dbg !1601, !GNUObjCMessageSend !1573
%171 = extractvalue { double, double } %170, 0, !dbg !1601
tail call void @llvm.dbg.value(metadata double %171, metadata !663, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1600
%172 = extractvalue { double, double } %170, 1, !dbg !1601
tail call void @llvm.dbg.value(metadata double %172, metadata !663, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1600
br label %173, !dbg !1601
173: ; preds = %165, %169
%174 = phi double [ %172, %169 ], [ 0.000000e+00, %165 ], !dbg !1601
%175 = phi double [ %171, %169 ], [ 0.000000e+00, %165 ], !dbg !1601
tail call void @llvm.dbg.value(metadata double %175, metadata !663, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1600
tail call void @llvm.dbg.value(metadata double %174, metadata !663, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1600
%176 = fpext float %59 to double, !dbg !1602
call void @llvm.dbg.value(metadata double %167, metadata !1542, metadata !DIExpression()), !dbg !1603
call void @llvm.dbg.value(metadata double %175, metadata !1547, metadata !DIExpression()), !dbg !1603
call void @llvm.dbg.value(metadata double %176, metadata !1548, metadata !DIExpression()), !dbg !1603
%177 = fsub double %175, %167, !dbg !1605
%178 = call noundef double @llvm.fmuladd.f64(double %177, double %176, double %167), !dbg !1606
call void @llvm.dbg.value(metadata double %166, metadata !1542, metadata !DIExpression()), !dbg !1607
call void @llvm.dbg.value(metadata double %174, metadata !1547, metadata !DIExpression()), !dbg !1607
call void @llvm.dbg.value(metadata double %176, metadata !1548, metadata !DIExpression()), !dbg !1607
%179 = fsub double %174, %166, !dbg !1609
%180 = call noundef double @llvm.fmuladd.f64(double %179, double %176, double %166), !dbg !1610
tail call void @llvm.dbg.value(metadata double %178, metadata !664, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1600
tail call void @llvm.dbg.value(metadata double %180, metadata !664, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1600
%181 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1611
%182 = call ptr @objc_msgSend(ptr noundef %181, ptr noundef nonnull @".objc_selector_valueWithPoint:_\0132\010:8{_NSPoint=dd}16", double %178, double %180), !dbg !1611, !GNUObjCMessageSend !1612
br label %708
183: ; preds = %150
%184 = call ptr @objc_msgSend(ptr noundef %152, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1613, !GNUObjCMessageSend !1563
%185 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %184, ptr noundef nonnull dereferenceable(14) @.str) #17, !dbg !1614
%186 = icmp eq i32 %185, 0, !dbg !1614
br i1 %186, label %187, label %197, !dbg !1615
187: ; preds = %183
call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #15, !dbg !1616
call void @llvm.memset.p0.i64(ptr noundef nonnull align 16 dereferenceable(16) %7, i8 0, i64 16, i1 false), !dbg !1617, !DIAssignID !1618
call void @llvm.dbg.assign(metadata i8 0, metadata !665, metadata !DIExpression(), metadata !1618, metadata ptr %7, metadata !DIExpression()), !dbg !1472
call void @objc_msgSend(ptr noundef %152, ptr noundef nonnull @".objc_selector_getValue:_v24\010:8^v16", ptr noundef nonnull %7), !dbg !1619, !GNUObjCMessageSend !1620
call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %8) #15, !dbg !1621
call void @llvm.memset.p0.i64(ptr noundef nonnull align 16 dereferenceable(16) %8, i8 0, i64 16, i1 false), !dbg !1622, !DIAssignID !1623
call void @llvm.dbg.assign(metadata i8 0, metadata !668, metadata !DIExpression(), metadata !1623, metadata ptr %8, metadata !DIExpression()), !dbg !1472
call void @objc_msgSend(ptr noundef %151, ptr noundef nonnull @".objc_selector_getValue:_v24\010:8^v16", ptr noundef nonnull %8), !dbg !1624, !GNUObjCMessageSend !1620
call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #15, !dbg !1625
%188 = fpext float %59 to double, !dbg !1626
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1627
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1627
call void @llvm.dbg.value(metadata double %188, metadata !1548, metadata !DIExpression()), !dbg !1627
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1629
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1629
call void @llvm.dbg.value(metadata double %188, metadata !1548, metadata !DIExpression()), !dbg !1629
call void @llvm.dbg.assign(metadata double undef, metadata !669, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1631, metadata ptr %9, metadata !DIExpression()), !dbg !1472
%189 = load <2 x double>, ptr %7, align 16, !dbg !1632
%190 = load <2 x double>, ptr %8, align 16, !dbg !1633
%191 = fsub <2 x double> %190, %189, !dbg !1634
%192 = insertelement <2 x double> poison, double %188, i64 0, !dbg !1635
%193 = shufflevector <2 x double> %192, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !1635
%194 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %191, <2 x double> %193, <2 x double> %189), !dbg !1635
store <2 x double> %194, ptr %9, align 16, !dbg !1636, !DIAssignID !1631
call void @llvm.dbg.assign(metadata double undef, metadata !669, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1631, metadata ptr %9, metadata !DIExpression(DW_OP_plus_uconst, 8)), !dbg !1472
%195 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1637
%196 = call ptr @objc_msgSend(ptr noundef %195, ptr noundef nonnull @".objc_selector_valueWithBytes:objCType:_\0132\010:8r^v16r*24", ptr noundef nonnull %9, ptr noundef nonnull @.str), !dbg !1637, !GNUObjCMessageSend !1585
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #15, !dbg !1638
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %8) #15, !dbg !1638
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #15, !dbg !1638
br label %708
197: ; preds = %183
%198 = call ptr @objc_msgSend(ptr noundef %152, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1639, !GNUObjCMessageSend !1563
%199 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %198, ptr noundef nonnull dereferenceable(13) @.str.29) #17, !dbg !1640
%200 = icmp eq i32 %199, 0, !dbg !1640
br i1 %200, label %201, label %226, !dbg !1641
201: ; preds = %197
call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %10) #15, !dbg !1642
%202 = icmp eq ptr %152, null, !dbg !1643
br i1 %202, label %208, label %203, !dbg !1643
203: ; preds = %201
%204 = call { double, double } @objc_msgSend(ptr noundef nonnull %152, ptr noundef nonnull @".objc_selector_sizeValue_{_NSSize=dd}16\010:8"), !dbg !1643, !GNUObjCMessageSend !1644
%205 = extractvalue { double, double } %204, 0, !dbg !1643
%206 = call { double, double } @objc_msgSend(ptr noundef nonnull %152, ptr noundef nonnull @".objc_selector_sizeValue_{_NSSize=dd}16\010:8"), !dbg !1645, !GNUObjCMessageSend !1644
%207 = extractvalue { double, double } %206, 1, !dbg !1645
br label %208, !dbg !1645
208: ; preds = %201, %203
%209 = phi double [ %205, %203 ], [ 0.000000e+00, %201 ]
%210 = phi double [ %207, %203 ], [ 0.000000e+00, %201 ], !dbg !1645
store double %209, ptr %10, align 8, !dbg !1646, !DIAssignID !1647
call void @llvm.dbg.assign(metadata double %209, metadata !670, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1647, metadata ptr %10, metadata !DIExpression()), !dbg !1476
%211 = getelementptr inbounds { double, double }, ptr %10, i64 0, i32 1, !dbg !1646
store double %210, ptr %211, align 8, !dbg !1646, !DIAssignID !1648
call void @llvm.dbg.assign(metadata double %210, metadata !670, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1648, metadata ptr %211, metadata !DIExpression()), !dbg !1476
call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #15, !dbg !1649
%212 = icmp eq ptr %151, null, !dbg !1650
br i1 %212, label %218, label %213, !dbg !1650
213: ; preds = %208
%214 = call { double, double } @objc_msgSend(ptr noundef nonnull %151, ptr noundef nonnull @".objc_selector_sizeValue_{_NSSize=dd}16\010:8"), !dbg !1650, !GNUObjCMessageSend !1644
%215 = extractvalue { double, double } %214, 0, !dbg !1650
%216 = call { double, double } @objc_msgSend(ptr noundef nonnull %151, ptr noundef nonnull @".objc_selector_sizeValue_{_NSSize=dd}16\010:8"), !dbg !1651, !GNUObjCMessageSend !1644
%217 = extractvalue { double, double } %216, 1, !dbg !1651
br label %218, !dbg !1651
218: ; preds = %208, %213
%219 = phi double [ %215, %213 ], [ 0.000000e+00, %208 ]
%220 = phi double [ %217, %213 ], [ 0.000000e+00, %208 ], !dbg !1651
store double %219, ptr %11, align 8, !dbg !1652, !DIAssignID !1653
call void @llvm.dbg.assign(metadata double %219, metadata !673, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1653, metadata ptr %11, metadata !DIExpression()), !dbg !1476
%221 = getelementptr inbounds { double, double }, ptr %11, i64 0, i32 1, !dbg !1652
store double %220, ptr %221, align 8, !dbg !1652, !DIAssignID !1654
call void @llvm.dbg.assign(metadata double %220, metadata !673, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1654, metadata ptr %221, metadata !DIExpression()), !dbg !1476
%222 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1655
%223 = call ptr @objc_msgSend(ptr noundef %222, ptr noundef nonnull @".objc_selector_valueWithBytes:objCType:_\0132\010:8r^v16r*24", ptr noundef nonnull %10, ptr noundef nonnull @.str.29), !dbg !1655, !GNUObjCMessageSend !1585
tail call void @llvm.dbg.value(metadata ptr %223, metadata !647, metadata !DIExpression()), !dbg !1567
%224 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1656
%225 = call ptr @objc_msgSend(ptr noundef %224, ptr noundef nonnull @".objc_selector_valueWithBytes:objCType:_\0132\010:8r^v16r*24", ptr noundef nonnull %11, ptr noundef nonnull @.str.29), !dbg !1656, !GNUObjCMessageSend !1585
tail call void @llvm.dbg.value(metadata ptr %225, metadata !655, metadata !DIExpression()), !dbg !1567
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #15, !dbg !1657
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %10) #15, !dbg !1657
br label %226, !dbg !1658
226: ; preds = %218, %197
%227 = phi ptr [ %151, %197 ], [ %225, %218 ], !dbg !1567
%228 = phi ptr [ %152, %197 ], [ %223, %218 ], !dbg !1567
tail call void @llvm.dbg.value(metadata ptr %228, metadata !647, metadata !DIExpression()), !dbg !1567
tail call void @llvm.dbg.value(metadata ptr %227, metadata !655, metadata !DIExpression()), !dbg !1567
%229 = call ptr @objc_msgSend(ptr noundef %228, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1659, !GNUObjCMessageSend !1563
%230 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %229, ptr noundef nonnull dereferenceable(13) @.str.29) #17, !dbg !1660
%231 = icmp eq i32 %230, 0, !dbg !1660
br i1 %231, label %232, label %253, !dbg !1661
232: ; preds = %226
%233 = load i1, ptr @"calculatedAnimationValueAtTime:onLayer:.warned.30", align 1, !dbg !1662
br i1 %233, label %235, label %234, !dbg !1664
234: ; preds = %232
call void (ptr, ...) @NSLog(ptr noundef nonnull @.objc_string.31), !dbg !1665
br label %235, !dbg !1667
235: ; preds = %234, %232
store i1 true, ptr @"calculatedAnimationValueAtTime:onLayer:.warned.30", align 1, !dbg !1668
%236 = icmp eq ptr %228, null, !dbg !1669
br i1 %236, label %240, label %237, !dbg !1669
237: ; preds = %235
%238 = call { double, double } @objc_msgSend(ptr noundef nonnull %228, ptr noundef nonnull @".objc_selector_sizeValue_{_NSSize=dd}16\010:8"), !dbg !1669, !GNUObjCMessageSend !1644
%239 = extractvalue { double, double } %238, 0, !dbg !1669
tail call void @llvm.dbg.value(metadata double %239, metadata !674, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1670
tail call void @llvm.dbg.value(metadata double poison, metadata !674, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1670
br label %240, !dbg !1669
240: ; preds = %235, %237
%241 = phi double [ %239, %237 ], [ 0.000000e+00, %235 ], !dbg !1669
tail call void @llvm.dbg.value(metadata double %241, metadata !674, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1670
%242 = icmp eq ptr %227, null, !dbg !1671
br i1 %242, label %246, label %243, !dbg !1671
243: ; preds = %240
%244 = call { double, double } @objc_msgSend(ptr noundef nonnull %227, ptr noundef nonnull @".objc_selector_sizeValue_{_NSSize=dd}16\010:8"), !dbg !1671, !GNUObjCMessageSend !1644
tail call void @llvm.dbg.value(metadata double poison, metadata !677, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1670
%245 = extractvalue { double, double } %244, 1, !dbg !1671
tail call void @llvm.dbg.value(metadata double %245, metadata !677, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1670
br label %246, !dbg !1671
246: ; preds = %240, %243
%247 = phi double [ %245, %243 ], [ 0.000000e+00, %240 ], !dbg !1671
tail call void @llvm.dbg.value(metadata double %247, metadata !677, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1670
%248 = fpext float %59 to double, !dbg !1672
call void @llvm.dbg.value(metadata double %241, metadata !1542, metadata !DIExpression()), !dbg !1673
call void @llvm.dbg.value(metadata double %247, metadata !1547, metadata !DIExpression()), !dbg !1673
call void @llvm.dbg.value(metadata double %248, metadata !1548, metadata !DIExpression()), !dbg !1673
%249 = fsub double %247, %241, !dbg !1675
%250 = call noundef double @llvm.fmuladd.f64(double %249, double %248, double %241), !dbg !1676
call void @llvm.dbg.value(metadata double %241, metadata !1542, metadata !DIExpression()), !dbg !1677
call void @llvm.dbg.value(metadata double %247, metadata !1547, metadata !DIExpression()), !dbg !1677
call void @llvm.dbg.value(metadata double %248, metadata !1548, metadata !DIExpression()), !dbg !1677
tail call void @llvm.dbg.value(metadata double %250, metadata !678, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1670
tail call void @llvm.dbg.value(metadata double %250, metadata !678, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1670
%251 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1679
%252 = call ptr @objc_msgSend(ptr noundef %251, ptr noundef nonnull @".objc_selector_valueWithSize:_\0132\010:8{_NSSize=dd}16", double %250, double %250), !dbg !1679, !GNUObjCMessageSend !1680
br label %708
253: ; preds = %226
%254 = call ptr @objc_msgSend(ptr noundef %228, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1681, !GNUObjCMessageSend !1563
%255 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %254, ptr noundef nonnull dereferenceable(13) @.str.29) #17, !dbg !1682
%256 = icmp eq i32 %255, 0, !dbg !1682
br i1 %256, label %257, label %267, !dbg !1683
257: ; preds = %253
call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %12) #15, !dbg !1684
call void @llvm.memset.p0.i64(ptr noundef nonnull align 16 dereferenceable(16) %12, i8 0, i64 16, i1 false), !dbg !1685, !DIAssignID !1686
call void @llvm.dbg.assign(metadata i8 0, metadata !679, metadata !DIExpression(), metadata !1686, metadata ptr %12, metadata !DIExpression()), !dbg !1479
call void @objc_msgSend(ptr noundef %228, ptr noundef nonnull @".objc_selector_getValue:_v24\010:8^v16", ptr noundef nonnull %12), !dbg !1687, !GNUObjCMessageSend !1620
call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #15, !dbg !1688
call void @llvm.memset.p0.i64(ptr noundef nonnull align 16 dereferenceable(16) %13, i8 0, i64 16, i1 false), !dbg !1689, !DIAssignID !1690
call void @llvm.dbg.assign(metadata i8 0, metadata !682, metadata !DIExpression(), metadata !1690, metadata ptr %13, metadata !DIExpression()), !dbg !1479
call void @objc_msgSend(ptr noundef %227, ptr noundef nonnull @".objc_selector_getValue:_v24\010:8^v16", ptr noundef nonnull %13), !dbg !1691, !GNUObjCMessageSend !1620
call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %14) #15, !dbg !1692
%258 = fpext float %59 to double, !dbg !1693
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1694
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1694
call void @llvm.dbg.value(metadata double %258, metadata !1548, metadata !DIExpression()), !dbg !1694
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1696
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1696
call void @llvm.dbg.value(metadata double %258, metadata !1548, metadata !DIExpression()), !dbg !1696
call void @llvm.dbg.assign(metadata double undef, metadata !683, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1698, metadata ptr %14, metadata !DIExpression()), !dbg !1479
%259 = load <2 x double>, ptr %12, align 16, !dbg !1699
%260 = load <2 x double>, ptr %13, align 16, !dbg !1700
%261 = fsub <2 x double> %260, %259, !dbg !1701
%262 = insertelement <2 x double> poison, double %258, i64 0, !dbg !1702
%263 = shufflevector <2 x double> %262, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !1702
%264 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %261, <2 x double> %263, <2 x double> %259), !dbg !1702
store <2 x double> %264, ptr %14, align 16, !dbg !1703, !DIAssignID !1698
call void @llvm.dbg.assign(metadata double undef, metadata !683, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1698, metadata ptr %14, metadata !DIExpression(DW_OP_plus_uconst, 8)), !dbg !1479
%265 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1704
%266 = call ptr @objc_msgSend(ptr noundef %265, ptr noundef nonnull @".objc_selector_valueWithBytes:objCType:_\0132\010:8r^v16r*24", ptr noundef nonnull %14, ptr noundef nonnull @.str.29), !dbg !1704, !GNUObjCMessageSend !1585
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %14) #15, !dbg !1705
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #15, !dbg !1705
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %12) #15, !dbg !1705
br label %708
267: ; preds = %253
%268 = call ptr @objc_msgSend(ptr noundef %228, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1706, !GNUObjCMessageSend !1563
%269 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %268, ptr noundef nonnull dereferenceable(36) @.str.32) #17, !dbg !1707
%270 = icmp eq i32 %269, 0, !dbg !1707
br i1 %270, label %271, label %312, !dbg !1708
271: ; preds = %267
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %15) #15, !dbg !1709
%272 = icmp eq ptr %228, null, !dbg !1710
br i1 %272, label %281, label %273, !dbg !1710
273: ; preds = %271
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct._NSRect) align 8 %16, ptr noundef nonnull %228, ptr noundef nonnull @".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8"), !dbg !1710, !GNUObjCMessageSend !1711
%274 = load double, ptr %16, align 8, !dbg !1712
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct._NSRect) align 8 %17, ptr noundef nonnull %228, ptr noundef nonnull @".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8"), !dbg !1713, !GNUObjCMessageSend !1711
%275 = getelementptr inbounds %struct._NSPoint, ptr %17, i64 0, i32 1, !dbg !1714
%276 = load double, ptr %275, align 8, !dbg !1714
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct._NSRect) align 8 %18, ptr noundef nonnull %228, ptr noundef nonnull @".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8"), !dbg !1715, !GNUObjCMessageSend !1711
%277 = getelementptr inbounds %struct._NSRect, ptr %18, i64 0, i32 1, !dbg !1716
%278 = load double, ptr %277, align 8, !dbg !1717
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct._NSRect) align 8 %19, ptr noundef nonnull %228, ptr noundef nonnull @".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8"), !dbg !1718, !GNUObjCMessageSend !1711
%279 = getelementptr inbounds %struct._NSRect, ptr %19, i64 0, i32 1, i32 1
%280 = load double, ptr %279, align 8, !dbg !1719
br label %282, !dbg !1718
281: ; preds = %271
call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %16, i8 0, i64 32, i1 false), !dbg !1710
call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %17, i8 0, i64 32, i1 false), !dbg !1713
call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %18, i8 0, i64 32, i1 false), !dbg !1715
call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %19, i8 0, i64 32, i1 false), !dbg !1718
br label %282, !dbg !1718
282: ; preds = %281, %273
%283 = phi double [ 0.000000e+00, %281 ], [ %280, %273 ], !dbg !1719
%284 = phi double [ 0.000000e+00, %281 ], [ %278, %273 ]
%285 = phi double [ 0.000000e+00, %281 ], [ %274, %273 ]
%286 = phi double [ 0.000000e+00, %281 ], [ %276, %273 ]
tail call void @llvm.dbg.value(metadata double %285, metadata !1720, metadata !DIExpression()), !dbg !1729
tail call void @llvm.dbg.value(metadata double %286, metadata !1725, metadata !DIExpression()), !dbg !1729
tail call void @llvm.dbg.value(metadata double %284, metadata !1726, metadata !DIExpression()), !dbg !1729
tail call void @llvm.dbg.value(metadata double %283, metadata !1727, metadata !DIExpression()), !dbg !1729
call void @llvm.dbg.declare(metadata ptr %15, metadata !1728, metadata !DIExpression()), !dbg !1731
store double %285, ptr %15, align 8, !dbg !1732, !alias.scope !1733, !DIAssignID !1736
call void @llvm.dbg.assign(metadata double %285, metadata !684, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1736, metadata ptr %15, metadata !DIExpression()), !dbg !1483
%287 = getelementptr inbounds %struct._NSPoint, ptr %15, i64 0, i32 1, !dbg !1737
store double %286, ptr %287, align 8, !dbg !1738, !alias.scope !1733, !DIAssignID !1739
call void @llvm.dbg.assign(metadata double %286, metadata !684, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1739, metadata ptr %287, metadata !DIExpression()), !dbg !1483
%288 = getelementptr inbounds %struct._NSRect, ptr %15, i64 0, i32 1, !dbg !1740
store double %284, ptr %288, align 8, !dbg !1741, !alias.scope !1733, !DIAssignID !1742
call void @llvm.dbg.assign(metadata double %284, metadata !684, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !1742, metadata ptr %288, metadata !DIExpression()), !dbg !1483
%289 = getelementptr inbounds %struct._NSRect, ptr %15, i64 0, i32 1, i32 1, !dbg !1743
store double %283, ptr %289, align 8, !dbg !1744, !alias.scope !1733, !DIAssignID !1745
call void @llvm.dbg.assign(metadata double %283, metadata !684, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !1745, metadata ptr %289, metadata !DIExpression()), !dbg !1483
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %20) #15, !dbg !1746
%290 = icmp eq ptr %227, null, !dbg !1747
br i1 %290, label %299, label %291, !dbg !1747
291: ; preds = %282
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct._NSRect) align 8 %21, ptr noundef nonnull %227, ptr noundef nonnull @".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8"), !dbg !1747, !GNUObjCMessageSend !1711
%292 = load double, ptr %21, align 8, !dbg !1748
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct._NSRect) align 8 %22, ptr noundef nonnull %227, ptr noundef nonnull @".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8"), !dbg !1749, !GNUObjCMessageSend !1711
%293 = getelementptr inbounds %struct._NSPoint, ptr %22, i64 0, i32 1, !dbg !1750
%294 = load double, ptr %293, align 8, !dbg !1750
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct._NSRect) align 8 %23, ptr noundef nonnull %227, ptr noundef nonnull @".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8"), !dbg !1751, !GNUObjCMessageSend !1711
%295 = getelementptr inbounds %struct._NSRect, ptr %23, i64 0, i32 1, !dbg !1752
%296 = load double, ptr %295, align 8, !dbg !1753
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct._NSRect) align 8 %24, ptr noundef nonnull %227, ptr noundef nonnull @".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8"), !dbg !1754, !GNUObjCMessageSend !1711
%297 = getelementptr inbounds %struct._NSRect, ptr %24, i64 0, i32 1, i32 1
%298 = load double, ptr %297, align 8, !dbg !1755
br label %300, !dbg !1754
299: ; preds = %282
call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %21, i8 0, i64 32, i1 false), !dbg !1747
call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %22, i8 0, i64 32, i1 false), !dbg !1749
call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %23, i8 0, i64 32, i1 false), !dbg !1751
call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %24, i8 0, i64 32, i1 false), !dbg !1754
br label %300, !dbg !1754
300: ; preds = %299, %291
%301 = phi double [ 0.000000e+00, %299 ], [ %298, %291 ], !dbg !1755
%302 = phi double [ 0.000000e+00, %299 ], [ %296, %291 ]
%303 = phi double [ 0.000000e+00, %299 ], [ %292, %291 ]
%304 = phi double [ 0.000000e+00, %299 ], [ %294, %291 ]
tail call void @llvm.dbg.value(metadata double %303, metadata !1720, metadata !DIExpression()), !dbg !1756
tail call void @llvm.dbg.value(metadata double %304, metadata !1725, metadata !DIExpression()), !dbg !1756
tail call void @llvm.dbg.value(metadata double %302, metadata !1726, metadata !DIExpression()), !dbg !1756
tail call void @llvm.dbg.value(metadata double %301, metadata !1727, metadata !DIExpression()), !dbg !1756
call void @llvm.dbg.declare(metadata ptr %20, metadata !1728, metadata !DIExpression()), !dbg !1758
store double %303, ptr %20, align 8, !dbg !1759, !alias.scope !1760, !DIAssignID !1763
call void @llvm.dbg.assign(metadata double %303, metadata !687, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1763, metadata ptr %20, metadata !DIExpression()), !dbg !1483
%305 = getelementptr inbounds %struct._NSPoint, ptr %20, i64 0, i32 1, !dbg !1764
store double %304, ptr %305, align 8, !dbg !1765, !alias.scope !1760, !DIAssignID !1766
call void @llvm.dbg.assign(metadata double %304, metadata !687, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1766, metadata ptr %305, metadata !DIExpression()), !dbg !1483
%306 = getelementptr inbounds %struct._NSRect, ptr %20, i64 0, i32 1, !dbg !1767
store double %302, ptr %306, align 8, !dbg !1768, !alias.scope !1760, !DIAssignID !1769
call void @llvm.dbg.assign(metadata double %302, metadata !687, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !1769, metadata ptr %306, metadata !DIExpression()), !dbg !1483
%307 = getelementptr inbounds %struct._NSRect, ptr %20, i64 0, i32 1, i32 1, !dbg !1770
store double %301, ptr %307, align 8, !dbg !1771, !alias.scope !1760, !DIAssignID !1772
call void @llvm.dbg.assign(metadata double %301, metadata !687, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !1772, metadata ptr %307, metadata !DIExpression()), !dbg !1483
%308 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1773
%309 = call ptr @objc_msgSend(ptr noundef %308, ptr noundef nonnull @".objc_selector_valueWithBytes:objCType:_\0132\010:8r^v16r*24", ptr noundef nonnull %15, ptr noundef nonnull @.str.32), !dbg !1773, !GNUObjCMessageSend !1585
tail call void @llvm.dbg.value(metadata ptr %309, metadata !647, metadata !DIExpression()), !dbg !1567
%310 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1774
%311 = call ptr @objc_msgSend(ptr noundef %310, ptr noundef nonnull @".objc_selector_valueWithBytes:objCType:_\0132\010:8r^v16r*24", ptr noundef nonnull %20, ptr noundef nonnull @.str.32), !dbg !1774, !GNUObjCMessageSend !1585
tail call void @llvm.dbg.value(metadata ptr %311, metadata !655, metadata !DIExpression()), !dbg !1567
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %20) #15, !dbg !1775
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %15) #15, !dbg !1775
br label %312, !dbg !1776
312: ; preds = %300, %267
%313 = phi ptr [ %227, %267 ], [ %311, %300 ], !dbg !1567
%314 = phi ptr [ %228, %267 ], [ %309, %300 ], !dbg !1567
tail call void @llvm.dbg.value(metadata ptr %314, metadata !647, metadata !DIExpression()), !dbg !1567
tail call void @llvm.dbg.value(metadata ptr %313, metadata !655, metadata !DIExpression()), !dbg !1567
%315 = call ptr @objc_msgSend(ptr noundef %314, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1777, !GNUObjCMessageSend !1563
%316 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %315, ptr noundef nonnull dereferenceable(36) @.str.32) #17, !dbg !1778
%317 = icmp eq i32 %316, 0, !dbg !1778
br i1 %317, label %318, label %348, !dbg !1779
318: ; preds = %312
%319 = load i1, ptr @"calculatedAnimationValueAtTime:onLayer:.warned.33", align 1, !dbg !1780
br i1 %319, label %321, label %320, !dbg !1782
320: ; preds = %318
call void (ptr, ...) @NSLog(ptr noundef nonnull @.objc_string.34), !dbg !1783
br label %321, !dbg !1785
321: ; preds = %320, %318
store i1 true, ptr @"calculatedAnimationValueAtTime:onLayer:.warned.33", align 1, !dbg !1786
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %25) #15, !dbg !1787
%322 = icmp eq ptr %314, null, !dbg !1788
br i1 %322, label %324, label %323, !dbg !1788
323: ; preds = %321
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct._NSRect) align 8 %25, ptr noundef nonnull %314, ptr noundef nonnull @".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8"), !dbg !1788, !GNUObjCMessageSend !1711
br label %325, !dbg !1788
324: ; preds = %321
call void @llvm.memset.p0.i64(ptr noundef nonnull align 16 dereferenceable(32) %25, i8 0, i64 32, i1 false), !dbg !1788, !DIAssignID !1789
call void @llvm.dbg.assign(metadata i8 0, metadata !688, metadata !DIExpression(), metadata !1789, metadata ptr %25, metadata !DIExpression()), !dbg !1486
br label %325, !dbg !1788
325: ; preds = %324, %323
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %26) #15, !dbg !1790
%326 = icmp eq ptr %313, null, !dbg !1791
br i1 %326, label %331, label %327, !dbg !1791
327: ; preds = %325
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct._NSRect) align 8 %26, ptr noundef nonnull %313, ptr noundef nonnull @".objc_selector_rectValue_{_NSRect={_NSPoint=dd}{_NSSize=dd}}16\010:8"), !dbg !1791, !GNUObjCMessageSend !1711
%328 = load <2 x double>, ptr %26, align 16, !dbg !1792
%329 = getelementptr inbounds %struct._NSRect, ptr %26, i64 0, i32 1
%330 = load <2 x double>, ptr %329, align 16, !dbg !1793
br label %332, !dbg !1791
331: ; preds = %325
call void @llvm.memset.p0.i64(ptr noundef nonnull align 16 dereferenceable(32) %26, i8 0, i64 32, i1 false), !dbg !1791, !DIAssignID !1794
call void @llvm.dbg.assign(metadata i8 0, metadata !691, metadata !DIExpression(), metadata !1794, metadata ptr %26, metadata !DIExpression()), !dbg !1486
br label %332, !dbg !1791
332: ; preds = %331, %327
%333 = phi <2 x double> [ zeroinitializer, %331 ], [ %328, %327 ], !dbg !1792
%334 = phi <2 x double> [ zeroinitializer, %331 ], [ %330, %327 ], !dbg !1793
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %27) #15, !dbg !1795
%335 = fpext float %59 to double, !dbg !1796
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1797
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1797
call void @llvm.dbg.value(metadata double %335, metadata !1548, metadata !DIExpression()), !dbg !1797
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1799
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1799
call void @llvm.dbg.value(metadata double %335, metadata !1548, metadata !DIExpression()), !dbg !1799
%336 = getelementptr inbounds %struct._NSRect, ptr %25, i64 0, i32 1, !dbg !1801
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1802
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1802
call void @llvm.dbg.value(metadata double %335, metadata !1548, metadata !DIExpression()), !dbg !1802
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1804
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1804
call void @llvm.dbg.value(metadata double %335, metadata !1548, metadata !DIExpression()), !dbg !1804
tail call void @llvm.dbg.value(metadata double undef, metadata !1806, metadata !DIExpression()), !dbg !1815
tail call void @llvm.dbg.value(metadata double undef, metadata !1811, metadata !DIExpression()), !dbg !1815
tail call void @llvm.dbg.value(metadata double undef, metadata !1812, metadata !DIExpression()), !dbg !1815
tail call void @llvm.dbg.value(metadata double undef, metadata !1813, metadata !DIExpression()), !dbg !1815
call void @llvm.dbg.declare(metadata ptr %27, metadata !1814, metadata !DIExpression()), !dbg !1817
call void @llvm.dbg.assign(metadata double undef, metadata !692, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1818, metadata ptr %27, metadata !DIExpression()), !dbg !1486
%337 = load <2 x double>, ptr %25, align 16, !dbg !1819
%338 = fsub <2 x double> %333, %337, !dbg !1820
%339 = insertelement <2 x double> poison, double %335, i64 0, !dbg !1821
%340 = shufflevector <2 x double> %339, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !1821
%341 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %338, <2 x double> %340, <2 x double> %337), !dbg !1821
store <2 x double> %341, ptr %27, align 16, !dbg !1822, !alias.scope !1823, !DIAssignID !1818
call void @llvm.dbg.assign(metadata double undef, metadata !692, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1818, metadata ptr %27, metadata !DIExpression(DW_OP_plus_uconst, 8)), !dbg !1486
%342 = getelementptr inbounds %struct._NSRect, ptr %27, i64 0, i32 1, !dbg !1826
call void @llvm.dbg.assign(metadata double undef, metadata !692, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !1827, metadata ptr %342, metadata !DIExpression()), !dbg !1486
%343 = load <2 x double>, ptr %336, align 16, !dbg !1828
%344 = fsub <2 x double> %334, %343, !dbg !1829
%345 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %344, <2 x double> %340, <2 x double> %343), !dbg !1830
store <2 x double> %345, ptr %342, align 16, !dbg !1831, !alias.scope !1823, !DIAssignID !1827
call void @llvm.dbg.assign(metadata double undef, metadata !692, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !1827, metadata ptr %27, metadata !DIExpression(DW_OP_plus_uconst, 24)), !dbg !1486
%346 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1832
%347 = call ptr @objc_msgSend(ptr noundef %346, ptr noundef nonnull @".objc_selector_valueWithRect:_\0148\010:8{_NSRect={_NSPoint=dd}{_NSSize=dd}}16", ptr noundef nonnull byval(%struct._NSRect) align 8 %27), !dbg !1832, !GNUObjCMessageSend !1833
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #15, !dbg !1834
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #15, !dbg !1834
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %25) #15, !dbg !1834
br label %708
348: ; preds = %312
%349 = call ptr @objc_msgSend(ptr noundef %314, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1835, !GNUObjCMessageSend !1563
%350 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %349, ptr noundef nonnull dereferenceable(36) @.str.32) #17, !dbg !1836
%351 = icmp eq i32 %350, 0, !dbg !1836
br i1 %351, label %352, label %369, !dbg !1837
352: ; preds = %348
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %28) #15, !dbg !1838
call void @objc_msgSend(ptr noundef %314, ptr noundef nonnull @".objc_selector_getValue:_v24\010:8^v16", ptr noundef nonnull %28), !dbg !1839, !GNUObjCMessageSend !1620
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %29) #15, !dbg !1840
call void @objc_msgSend(ptr noundef %313, ptr noundef nonnull @".objc_selector_getValue:_v24\010:8^v16", ptr noundef nonnull %29), !dbg !1841, !GNUObjCMessageSend !1620
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %30) #15, !dbg !1842
%353 = fpext float %59 to double, !dbg !1843
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1844
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1844
call void @llvm.dbg.value(metadata double %353, metadata !1548, metadata !DIExpression()), !dbg !1844
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1846
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1846
call void @llvm.dbg.value(metadata double %353, metadata !1548, metadata !DIExpression()), !dbg !1846
%354 = getelementptr inbounds %struct._NSRect, ptr %28, i64 0, i32 1, !dbg !1848
%355 = getelementptr inbounds %struct._NSRect, ptr %29, i64 0, i32 1, !dbg !1849
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1850
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1850
call void @llvm.dbg.value(metadata double %353, metadata !1548, metadata !DIExpression()), !dbg !1850
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1852
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1852
call void @llvm.dbg.value(metadata double %353, metadata !1548, metadata !DIExpression()), !dbg !1852
tail call void @llvm.dbg.value(metadata double undef, metadata !1720, metadata !DIExpression()), !dbg !1854
tail call void @llvm.dbg.value(metadata double undef, metadata !1725, metadata !DIExpression()), !dbg !1854
tail call void @llvm.dbg.value(metadata double undef, metadata !1726, metadata !DIExpression()), !dbg !1854
tail call void @llvm.dbg.value(metadata double undef, metadata !1727, metadata !DIExpression()), !dbg !1854
call void @llvm.dbg.declare(metadata ptr %30, metadata !1728, metadata !DIExpression()), !dbg !1856
call void @llvm.dbg.assign(metadata double undef, metadata !697, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1857, metadata ptr %30, metadata !DIExpression()), !dbg !1490
%356 = load <2 x double>, ptr %28, align 16, !dbg !1858
%357 = load <2 x double>, ptr %29, align 16, !dbg !1859
%358 = fsub <2 x double> %357, %356, !dbg !1860
%359 = insertelement <2 x double> poison, double %353, i64 0, !dbg !1861
%360 = shufflevector <2 x double> %359, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !1861
%361 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %358, <2 x double> %360, <2 x double> %356), !dbg !1861
store <2 x double> %361, ptr %30, align 16, !dbg !1862, !alias.scope !1863, !DIAssignID !1857
call void @llvm.dbg.assign(metadata double undef, metadata !697, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1857, metadata ptr %30, metadata !DIExpression(DW_OP_plus_uconst, 8)), !dbg !1490
%362 = getelementptr inbounds %struct._NSRect, ptr %30, i64 0, i32 1, !dbg !1866
call void @llvm.dbg.assign(metadata double undef, metadata !697, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !1867, metadata ptr %362, metadata !DIExpression()), !dbg !1490
%363 = load <2 x double>, ptr %354, align 16, !dbg !1868
%364 = load <2 x double>, ptr %355, align 16, !dbg !1869
%365 = fsub <2 x double> %364, %363, !dbg !1870
%366 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %365, <2 x double> %360, <2 x double> %363), !dbg !1871
store <2 x double> %366, ptr %362, align 16, !dbg !1872, !alias.scope !1863, !DIAssignID !1867
call void @llvm.dbg.assign(metadata double undef, metadata !697, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !1867, metadata ptr %30, metadata !DIExpression(DW_OP_plus_uconst, 24)), !dbg !1490
%367 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !1873
%368 = call ptr @objc_msgSend(ptr noundef %367, ptr noundef nonnull @".objc_selector_valueWithBytes:objCType:_\0132\010:8r^v16r*24", ptr noundef nonnull %30, ptr noundef nonnull @.str.32), !dbg !1873, !GNUObjCMessageSend !1585
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %30) #15, !dbg !1874
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %29) #15, !dbg !1874
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %28) #15, !dbg !1874
br label %708
369: ; preds = %348
%370 = call ptr @objc_msgSend(ptr noundef %314, ptr noundef nonnull @".objc_selector_objCType_r*16\010:8"), !dbg !1875, !GNUObjCMessageSend !1563
%371 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %370, ptr noundef nonnull dereferenceable(33) @.str.35) #17, !dbg !1876
%372 = icmp eq i32 %371, 0, !dbg !1876
br i1 %372, label %373, label %612, !dbg !1877
373: ; preds = %369
call void @llvm.lifetime.start.p0(i64 128, ptr nonnull %31) #15, !dbg !1878
%374 = icmp eq ptr %314, null, !dbg !1879
br i1 %374, label %376, label %375, !dbg !1879
375: ; preds = %373
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct.CATransform3D) align 8 %31, ptr noundef nonnull %314, ptr noundef nonnull @".objc_selector_CATransform3DValue_{CATransform3D=dddddddddddddddd}16\010:8"), !dbg !1879, !GNUObjCMessageSend !1880
br label %377, !dbg !1879
376: ; preds = %373
call void @llvm.memset.p0.i64(ptr noundef nonnull align 16 dereferenceable(128) %31, i8 0, i64 128, i1 false), !dbg !1879, !DIAssignID !1881
call void @llvm.dbg.assign(metadata i8 0, metadata !698, metadata !DIExpression(), metadata !1881, metadata ptr %31, metadata !DIExpression()), !dbg !1494
br label %377, !dbg !1879
377: ; preds = %376, %375
call void @llvm.lifetime.start.p0(i64 128, ptr nonnull %32) #15, !dbg !1882
%378 = icmp eq ptr %313, null, !dbg !1883
br i1 %378, label %400, label %379, !dbg !1883
379: ; preds = %377
call void @objc_msgSend_stret(ptr dead_on_unwind nonnull writable sret(%struct.CATransform3D) align 8 %32, ptr noundef nonnull %313, ptr noundef nonnull @".objc_selector_CATransform3DValue_{CATransform3D=dddddddddddddddd}16\010:8"), !dbg !1883, !GNUObjCMessageSend !1880
%380 = getelementptr inbounds i8, ptr %32, i64 8
%381 = load double, ptr %380, align 8, !dbg !1884
%382 = getelementptr inbounds i8, ptr %32, i64 16
%383 = load double, ptr %382, align 16, !dbg !1884
%384 = getelementptr inbounds i8, ptr %32, i64 24
%385 = load double, ptr %384, align 8, !dbg !1884
%386 = getelementptr inbounds i8, ptr %32, i64 32
%387 = load double, ptr %386, align 16, !dbg !1884
%388 = getelementptr inbounds i8, ptr %32, i64 48
%389 = load double, ptr %388, align 16, !dbg !1884
%390 = getelementptr inbounds i8, ptr %32, i64 56
%391 = load double, ptr %390, align 8, !dbg !1884
%392 = getelementptr inbounds i8, ptr %32, i64 64
%393 = load <2 x double>, ptr %392, align 16, !dbg !1884
%394 = getelementptr inbounds i8, ptr %32, i64 88
%395 = load double, ptr %394, align 8, !dbg !1884
%396 = getelementptr inbounds i8, ptr %32, i64 96
%397 = load <2 x double>, ptr %396, align 16, !dbg !1884
%398 = getelementptr inbounds i8, ptr %32, i64 112
%399 = load double, ptr %398, align 16, !dbg !1884
br label %401, !dbg !1883
400: ; preds = %377
call void @llvm.memset.p0.i64(ptr noundef nonnull align 16 dereferenceable(128) %32, i8 0, i64 128, i1 false), !dbg !1883, !DIAssignID !1901
call void @llvm.dbg.assign(metadata i8 0, metadata !701, metadata !DIExpression(), metadata !1901, metadata ptr %32, metadata !DIExpression()), !dbg !1494
br label %401, !dbg !1883
401: ; preds = %400, %379
%402 = phi double [ 0.000000e+00, %400 ], [ %399, %379 ], !dbg !1884
%403 = phi double [ 0.000000e+00, %400 ], [ %395, %379 ], !dbg !1884
%404 = phi double [ 0.000000e+00, %400 ], [ %391, %379 ], !dbg !1884
%405 = phi double [ 0.000000e+00, %400 ], [ %389, %379 ], !dbg !1884
%406 = phi double [ 0.000000e+00, %400 ], [ %387, %379 ], !dbg !1884
%407 = phi double [ 0.000000e+00, %400 ], [ %385, %379 ], !dbg !1884
%408 = phi double [ 0.000000e+00, %400 ], [ %383, %379 ], !dbg !1884
%409 = phi double [ 0.000000e+00, %400 ], [ %381, %379 ], !dbg !1884
%410 = phi <2 x double> [ zeroinitializer, %400 ], [ %393, %379 ], !dbg !1884
%411 = phi <2 x double> [ zeroinitializer, %400 ], [ %397, %379 ], !dbg !1884
call void @llvm.lifetime.start.p0(i64 128, ptr nonnull %33) #15, !dbg !1902
call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 16 dereferenceable(128) %33, ptr noundef nonnull align 8 dereferenceable(128) @CATransform3DIdentity, i64 128, i1 false), !dbg !1903, !DIAssignID !1904
call void @llvm.dbg.assign(metadata i1 undef, metadata !702, metadata !DIExpression(), metadata !1904, metadata ptr %33, metadata !DIExpression()), !dbg !1494
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1905
%412 = getelementptr inbounds i8, ptr %31, i64 8, !dbg !1907
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1905
%413 = getelementptr inbounds i8, ptr %31, i64 16, !dbg !1907
%414 = load double, ptr %413, align 16, !dbg !1907
tail call void @llvm.dbg.value(metadata double %414, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64)), !dbg !1905
%415 = getelementptr inbounds i8, ptr %31, i64 24, !dbg !1907
%416 = load double, ptr %415, align 8, !dbg !1907
tail call void @llvm.dbg.value(metadata double %416, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64)), !dbg !1905
%417 = getelementptr inbounds i8, ptr %31, i64 32, !dbg !1907
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double poison, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64)), !dbg !1905
%418 = getelementptr inbounds i8, ptr %31, i64 48, !dbg !1907
%419 = load double, ptr %418, align 16, !dbg !1907
tail call void @llvm.dbg.value(metadata double %419, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64)), !dbg !1905
%420 = getelementptr inbounds i8, ptr %31, i64 56, !dbg !1907
%421 = load double, ptr %420, align 8, !dbg !1907
tail call void @llvm.dbg.value(metadata double %421, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64)), !dbg !1905
%422 = getelementptr inbounds i8, ptr %31, i64 64, !dbg !1907
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64)), !dbg !1905
%423 = getelementptr inbounds i8, ptr %31, i64 72, !dbg !1907
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64)), !dbg !1905
%424 = getelementptr inbounds i8, ptr %31, i64 80, !dbg !1907
tail call void @llvm.dbg.value(metadata double poison, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64)), !dbg !1905
%425 = getelementptr inbounds i8, ptr %31, i64 88, !dbg !1907
%426 = load double, ptr %425, align 8, !dbg !1907
tail call void @llvm.dbg.value(metadata double %426, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64)), !dbg !1905
%427 = getelementptr inbounds i8, ptr %31, i64 96, !dbg !1907
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 768, 64)), !dbg !1905
%428 = getelementptr inbounds i8, ptr %31, i64 104, !dbg !1907
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 832, 64)), !dbg !1905
%429 = getelementptr inbounds i8, ptr %31, i64 112, !dbg !1907
%430 = load double, ptr %429, align 16, !dbg !1907
tail call void @llvm.dbg.value(metadata double %430, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 896, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double poison, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 960, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata ptr undef, metadata !1894, metadata !DIExpression()), !dbg !1905
tail call void @llvm.dbg.value(metadata ptr undef, metadata !1895, metadata !DIExpression()), !dbg !1905
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double %414, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double %416, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 768, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double poison, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double %419, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double %421, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 832, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double poison, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double %426, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 896, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata double %430, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata i64 15, metadata !1897, metadata !DIExpression(DW_OP_constu, 3, DW_OP_and, DW_OP_stack_value)), !dbg !1908
tail call void @llvm.dbg.value(metadata i32 3, metadata !1898, metadata !DIExpression()), !dbg !1908
tail call void @llvm.dbg.value(metadata i32 15, metadata !1899, metadata !DIExpression()), !dbg !1908
tail call void @llvm.dbg.value(metadata double poison, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 960, 64)), !dbg !1905
tail call void @llvm.dbg.value(metadata i64 16, metadata !1896, metadata !DIExpression()), !dbg !1909
store double %430, ptr %425, align 8, !dbg !1910, !DIAssignID !1911
store double %426, ptr %429, align 16, !dbg !1910, !DIAssignID !1912
call void @llvm.dbg.assign(metadata double undef, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1913, metadata ptr %31, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1914, metadata ptr %412, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !1915, metadata ptr %413, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !1916, metadata ptr %415, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64), metadata !1917, metadata ptr %417, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double poison, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64), metadata !1918, metadata ptr %31, metadata !DIExpression(DW_OP_plus_uconst, 40)), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64), metadata !1919, metadata ptr %418, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64), metadata !1920, metadata ptr %420, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %414, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64), metadata !1921, metadata ptr %422, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %419, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64), metadata !1922, metadata ptr %423, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double poison, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64), metadata !1923, metadata ptr %424, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %430, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64), metadata !1911, metadata ptr %425, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %416, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 768, 64), metadata !1924, metadata ptr %427, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %421, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 832, 64), metadata !1925, metadata ptr %428, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %426, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 896, 64), metadata !1912, metadata ptr %429, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double poison, metadata !698, metadata !DIExpression(DW_OP_LLVM_fragment, 960, 64), metadata !1926, metadata ptr %31, metadata !DIExpression(DW_OP_plus_uconst, 120)), !dbg !1494
tail call void @llvm.dbg.value(metadata double poison, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1927
%431 = getelementptr inbounds i8, ptr %32, i64 8, !dbg !1884
tail call void @llvm.dbg.value(metadata double %409, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1927
%432 = getelementptr inbounds i8, ptr %32, i64 16, !dbg !1884
tail call void @llvm.dbg.value(metadata double %408, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64)), !dbg !1927
%433 = getelementptr inbounds i8, ptr %32, i64 24, !dbg !1884
tail call void @llvm.dbg.value(metadata double %407, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64)), !dbg !1927
%434 = getelementptr inbounds i8, ptr %32, i64 32, !dbg !1884
tail call void @llvm.dbg.value(metadata double %406, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double poison, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64)), !dbg !1927
%435 = getelementptr inbounds i8, ptr %32, i64 48, !dbg !1884
tail call void @llvm.dbg.value(metadata double %405, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64)), !dbg !1927
%436 = getelementptr inbounds i8, ptr %32, i64 56, !dbg !1884
tail call void @llvm.dbg.value(metadata double %404, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64)), !dbg !1927
%437 = getelementptr inbounds i8, ptr %32, i64 64, !dbg !1884
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64)), !dbg !1927
%438 = getelementptr inbounds i8, ptr %32, i64 72, !dbg !1884
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64)), !dbg !1927
%439 = getelementptr inbounds i8, ptr %32, i64 80, !dbg !1884
tail call void @llvm.dbg.value(metadata double poison, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64)), !dbg !1927
%440 = getelementptr inbounds i8, ptr %32, i64 88, !dbg !1884
tail call void @llvm.dbg.value(metadata double %403, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64)), !dbg !1927
%441 = getelementptr inbounds i8, ptr %32, i64 96, !dbg !1884
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 768, 64)), !dbg !1927
%442 = getelementptr inbounds i8, ptr %32, i64 104, !dbg !1884
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 832, 64)), !dbg !1927
%443 = getelementptr inbounds i8, ptr %32, i64 112, !dbg !1884
tail call void @llvm.dbg.value(metadata double %402, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 896, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double poison, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 960, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata ptr undef, metadata !1894, metadata !DIExpression()), !dbg !1927
tail call void @llvm.dbg.value(metadata ptr undef, metadata !1895, metadata !DIExpression()), !dbg !1927
tail call void @llvm.dbg.value(metadata double poison, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double %409, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double %408, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double %407, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 768, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double %406, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double poison, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double %405, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double %404, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 832, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double poison, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double %403, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 896, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata double %402, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata i64 15, metadata !1897, metadata !DIExpression(DW_OP_constu, 3, DW_OP_and, DW_OP_stack_value)), !dbg !1928
tail call void @llvm.dbg.value(metadata i32 3, metadata !1898, metadata !DIExpression()), !dbg !1928
tail call void @llvm.dbg.value(metadata i32 15, metadata !1899, metadata !DIExpression()), !dbg !1928
tail call void @llvm.dbg.value(metadata double poison, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 960, 64)), !dbg !1927
tail call void @llvm.dbg.value(metadata i64 16, metadata !1896, metadata !DIExpression()), !dbg !1929
store double %406, ptr %431, align 8, !dbg !1930, !DIAssignID !1931
%444 = extractelement <2 x double> %410, i64 0, !dbg !1930
store double %444, ptr %432, align 16, !dbg !1930, !DIAssignID !1932
%445 = extractelement <2 x double> %411, i64 0, !dbg !1930
store double %445, ptr %433, align 8, !dbg !1930, !DIAssignID !1933
store double %409, ptr %434, align 16, !dbg !1930, !DIAssignID !1934
%446 = extractelement <2 x double> %410, i64 1, !dbg !1930
store double %446, ptr %435, align 16, !dbg !1930, !DIAssignID !1935
%447 = extractelement <2 x double> %411, i64 1, !dbg !1930
store double %447, ptr %436, align 8, !dbg !1930, !DIAssignID !1936
store double %408, ptr %437, align 16, !dbg !1930, !DIAssignID !1937
store double %405, ptr %438, align 8, !dbg !1930, !DIAssignID !1938
store double %402, ptr %440, align 8, !dbg !1930, !DIAssignID !1939
store double %407, ptr %441, align 16, !dbg !1930, !DIAssignID !1940
store double %404, ptr %442, align 8, !dbg !1930, !DIAssignID !1941
store double %403, ptr %443, align 16, !dbg !1930, !DIAssignID !1942
call void @llvm.dbg.assign(metadata double poison, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1943, metadata ptr %32, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %406, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1931, metadata ptr %431, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !1932, metadata ptr %432, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !1933, metadata ptr %433, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %409, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64), metadata !1934, metadata ptr %434, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double poison, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64), metadata !1944, metadata ptr %32, metadata !DIExpression(DW_OP_plus_uconst, 40)), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64), metadata !1935, metadata ptr %435, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64), metadata !1936, metadata ptr %436, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %408, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64), metadata !1937, metadata ptr %437, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %405, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64), metadata !1938, metadata ptr %438, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double poison, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64), metadata !1945, metadata ptr %439, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %402, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64), metadata !1939, metadata ptr %440, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %407, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 768, 64), metadata !1940, metadata ptr %441, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %404, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 832, 64), metadata !1941, metadata ptr %442, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %403, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 896, 64), metadata !1942, metadata ptr %443, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double poison, metadata !701, metadata !DIExpression(DW_OP_LLVM_fragment, 960, 64), metadata !1946, metadata ptr %32, metadata !DIExpression(DW_OP_plus_uconst, 120)), !dbg !1494
tail call void @llvm.dbg.value(metadata double undef, metadata !703, metadata !DIExpression()), !dbg !1494
tail call void @llvm.dbg.value(metadata double undef, metadata !704, metadata !DIExpression()), !dbg !1494
tail call void @llvm.dbg.value(metadata double %430, metadata !705, metadata !DIExpression()), !dbg !1494
tail call void @llvm.dbg.value(metadata double undef, metadata !706, metadata !DIExpression()), !dbg !1494
tail call void @llvm.dbg.value(metadata double undef, metadata !707, metadata !DIExpression()), !dbg !1494
tail call void @llvm.dbg.value(metadata double %402, metadata !708, metadata !DIExpression()), !dbg !1494
%448 = fpext float %59 to double, !dbg !1947
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1948
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1948
call void @llvm.dbg.value(metadata double %448, metadata !1548, metadata !DIExpression()), !dbg !1948
tail call void @llvm.dbg.value(metadata double undef, metadata !709, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1950
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1950
call void @llvm.dbg.value(metadata double %448, metadata !1548, metadata !DIExpression()), !dbg !1950
tail call void @llvm.dbg.value(metadata double undef, metadata !710, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.value(metadata double %430, metadata !1542, metadata !DIExpression()), !dbg !1952
call void @llvm.dbg.value(metadata double %402, metadata !1547, metadata !DIExpression()), !dbg !1952
call void @llvm.dbg.value(metadata double %448, metadata !1548, metadata !DIExpression()), !dbg !1952
%449 = fsub double %402, %430, !dbg !1954
%450 = call noundef double @llvm.fmuladd.f64(double %449, double %448, double %430), !dbg !1955
tail call void @llvm.dbg.value(metadata double %450, metadata !711, metadata !DIExpression()), !dbg !1494
tail call void @llvm.dbg.value(metadata double undef, metadata !712, metadata !DIExpression()), !dbg !1494
tail call void @llvm.dbg.value(metadata double undef, metadata !713, metadata !DIExpression()), !dbg !1494
%451 = fmul double %419, %419, !dbg !1956
%452 = call double @llvm.fmuladd.f64(double %414, double %414, double %451), !dbg !1957
%453 = load double, ptr %424, align 16, !dbg !1958
%454 = call double @llvm.fmuladd.f64(double %453, double %453, double %452), !dbg !1959
%455 = call double @llvm.sqrt.f64(double %454), !dbg !1960
tail call void @llvm.dbg.value(metadata double %455, metadata !714, metadata !DIExpression()), !dbg !1494
%456 = load <2 x double>, ptr %32, align 16, !dbg !1961
%457 = shufflevector <2 x double> %456, <2 x double> poison, <2 x i32> <i32 0, i32 poison>, !dbg !1961
tail call void @llvm.dbg.value(metadata double undef, metadata !715, metadata !DIExpression()), !dbg !1494
tail call void @llvm.dbg.value(metadata double undef, metadata !716, metadata !DIExpression()), !dbg !1494
%458 = fmul double %405, %405, !dbg !1962
%459 = call double @llvm.fmuladd.f64(double %408, double %408, double %458), !dbg !1963
%460 = load double, ptr %439, align 16, !dbg !1964
%461 = call double @llvm.fmuladd.f64(double %460, double %460, double %459), !dbg !1965
%462 = call double @llvm.sqrt.f64(double %461), !dbg !1966
tail call void @llvm.dbg.value(metadata double %462, metadata !717, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1967
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1967
call void @llvm.dbg.value(metadata double %448, metadata !1548, metadata !DIExpression()), !dbg !1967
tail call void @llvm.dbg.value(metadata double undef, metadata !718, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.value(metadata double undef, metadata !1542, metadata !DIExpression()), !dbg !1969
call void @llvm.dbg.value(metadata double undef, metadata !1547, metadata !DIExpression()), !dbg !1969
call void @llvm.dbg.value(metadata double %448, metadata !1548, metadata !DIExpression()), !dbg !1969
tail call void @llvm.dbg.value(metadata double undef, metadata !719, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.value(metadata double %455, metadata !1542, metadata !DIExpression()), !dbg !1971
call void @llvm.dbg.value(metadata double %462, metadata !1547, metadata !DIExpression()), !dbg !1971
call void @llvm.dbg.value(metadata double %448, metadata !1548, metadata !DIExpression()), !dbg !1971
%463 = fsub double %462, %455, !dbg !1973
%464 = call noundef double @llvm.fmuladd.f64(double %463, double %448, double %455), !dbg !1974
tail call void @llvm.dbg.value(metadata double %464, metadata !720, metadata !DIExpression()), !dbg !1494
call void @llvm.lifetime.start.p0(i64 128, ptr nonnull %34) #15, !dbg !1975
%465 = load <2 x double>, ptr %31, align 16, !dbg !1976
call void @llvm.dbg.assign(metadata double undef, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !1977, metadata ptr %34, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !1977, metadata ptr %34, metadata !DIExpression(DW_OP_plus_uconst, 8)), !dbg !1494
%466 = getelementptr inbounds %struct.CATransform3D, ptr %34, i64 0, i32 2, !dbg !1978
call void @llvm.dbg.assign(metadata double %530, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !1979, metadata ptr %466, metadata !DIExpression()), !dbg !1494
%467 = getelementptr inbounds %struct.CATransform3D, ptr %34, i64 0, i32 3, !dbg !1980
store double 0.000000e+00, ptr %467, align 8, !dbg !1981, !DIAssignID !1982
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !1982, metadata ptr %467, metadata !DIExpression()), !dbg !1494
%468 = getelementptr inbounds %struct.CATransform3D, ptr %34, i64 0, i32 4, !dbg !1983
call void @llvm.dbg.assign(metadata double undef, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64), metadata !1984, metadata ptr %468, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64), metadata !1984, metadata ptr %34, metadata !DIExpression(DW_OP_plus_uconst, 40)), !dbg !1494
%469 = getelementptr inbounds %struct.CATransform3D, ptr %34, i64 0, i32 6, !dbg !1985
call void @llvm.dbg.assign(metadata double %535, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64), metadata !1986, metadata ptr %469, metadata !DIExpression()), !dbg !1494
%470 = getelementptr inbounds %struct.CATransform3D, ptr %34, i64 0, i32 7, !dbg !1987
store double 0.000000e+00, ptr %470, align 8, !dbg !1988, !DIAssignID !1989
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64), metadata !1989, metadata ptr %470, metadata !DIExpression()), !dbg !1494
%471 = getelementptr inbounds %struct.CATransform3D, ptr %34, i64 0, i32 8, !dbg !1990
call void @llvm.dbg.assign(metadata double undef, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64), metadata !1991, metadata ptr %471, metadata !DIExpression()), !dbg !1494
%472 = insertelement <2 x double> poison, double %414, i64 0, !dbg !1992
%473 = insertelement <2 x double> %472, double %419, i64 1, !dbg !1992
%474 = insertelement <2 x double> poison, double %455, i64 0, !dbg !1992
%475 = shufflevector <2 x double> %474, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !1992
%476 = fdiv <2 x double> %473, %475, !dbg !1992
store <2 x double> %476, ptr %471, align 16, !dbg !1993, !DIAssignID !1991
call void @llvm.dbg.assign(metadata double undef, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64), metadata !1991, metadata ptr %34, metadata !DIExpression(DW_OP_plus_uconst, 72)), !dbg !1494
%477 = fdiv double %453, %455, !dbg !1994
%478 = getelementptr inbounds %struct.CATransform3D, ptr %34, i64 0, i32 10, !dbg !1995
store double %477, ptr %478, align 16, !dbg !1996, !DIAssignID !1997
call void @llvm.dbg.assign(metadata double %477, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64), metadata !1997, metadata ptr %478, metadata !DIExpression()), !dbg !1494
%479 = getelementptr inbounds %struct.CATransform3D, ptr %34, i64 0, i32 11, !dbg !1998
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64), metadata !1999, metadata ptr %479, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 768, 64), metadata !1999, metadata ptr %34, metadata !DIExpression(DW_OP_plus_uconst, 96)), !dbg !1494
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 832, 64), metadata !1999, metadata ptr %34, metadata !DIExpression(DW_OP_plus_uconst, 104)), !dbg !1494
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 896, 64), metadata !1999, metadata ptr %34, metadata !DIExpression(DW_OP_plus_uconst, 112)), !dbg !1494
%480 = getelementptr inbounds %struct.CATransform3D, ptr %34, i64 0, i32 15, !dbg !2000
call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %479, i8 0, i64 32, i1 false), !dbg !2001, !DIAssignID !1999
store double 1.000000e+00, ptr %480, align 8, !dbg !2002, !DIAssignID !2003
call void @llvm.dbg.assign(metadata double 1.000000e+00, metadata !721, metadata !DIExpression(DW_OP_LLVM_fragment, 960, 64), metadata !2003, metadata ptr %480, metadata !DIExpression()), !dbg !1494
call void @llvm.lifetime.start.p0(i64 128, ptr nonnull %35) #15, !dbg !2004
call void @llvm.dbg.assign(metadata double undef, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !2005, metadata ptr %35, metadata !DIExpression()), !dbg !1494
%481 = insertelement <2 x double> %457, double %406, i64 1, !dbg !2006
call void @llvm.dbg.assign(metadata double undef, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !2005, metadata ptr %35, metadata !DIExpression(DW_OP_plus_uconst, 8)), !dbg !1494
%482 = load double, ptr %432, align 16, !dbg !2007
%483 = getelementptr inbounds %struct.CATransform3D, ptr %35, i64 0, i32 2, !dbg !2008
call void @llvm.dbg.assign(metadata double %545, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !2009, metadata ptr %483, metadata !DIExpression()), !dbg !1494
%484 = getelementptr inbounds %struct.CATransform3D, ptr %35, i64 0, i32 3, !dbg !2010
store double 0.000000e+00, ptr %484, align 8, !dbg !2011, !DIAssignID !2012
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !2012, metadata ptr %484, metadata !DIExpression()), !dbg !1494
%485 = getelementptr inbounds %struct.CATransform3D, ptr %35, i64 0, i32 4, !dbg !2013
call void @llvm.dbg.assign(metadata double undef, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64), metadata !2014, metadata ptr %485, metadata !DIExpression()), !dbg !1494
%486 = load <2 x double>, ptr %434, align 16, !dbg !2015
call void @llvm.dbg.assign(metadata double undef, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64), metadata !2014, metadata ptr %35, metadata !DIExpression(DW_OP_plus_uconst, 40)), !dbg !1494
%487 = load double, ptr %435, align 16, !dbg !2016
%488 = getelementptr inbounds %struct.CATransform3D, ptr %35, i64 0, i32 6, !dbg !2017
call void @llvm.dbg.assign(metadata double %553, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64), metadata !2018, metadata ptr %488, metadata !DIExpression()), !dbg !1494
%489 = getelementptr inbounds %struct.CATransform3D, ptr %35, i64 0, i32 7, !dbg !2019
store double 0.000000e+00, ptr %489, align 8, !dbg !2020, !DIAssignID !2021
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64), metadata !2021, metadata ptr %489, metadata !DIExpression()), !dbg !1494
%490 = getelementptr inbounds %struct.CATransform3D, ptr %35, i64 0, i32 8, !dbg !2022
call void @llvm.dbg.assign(metadata double undef, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64), metadata !2023, metadata ptr %490, metadata !DIExpression()), !dbg !1494
%491 = load <2 x double>, ptr %437, align 16, !dbg !2024
%492 = insertelement <2 x double> poison, double %462, i64 0, !dbg !2025
%493 = shufflevector <2 x double> %492, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2025
%494 = fdiv <2 x double> %491, %493, !dbg !2025
store <2 x double> %494, ptr %490, align 16, !dbg !2026, !DIAssignID !2023
call void @llvm.dbg.assign(metadata double undef, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64), metadata !2023, metadata ptr %35, metadata !DIExpression(DW_OP_plus_uconst, 72)), !dbg !1494
%495 = fdiv double %460, %462, !dbg !2027
%496 = getelementptr inbounds %struct.CATransform3D, ptr %35, i64 0, i32 10, !dbg !2028
store double %495, ptr %496, align 16, !dbg !2029, !DIAssignID !2030
call void @llvm.dbg.assign(metadata double %495, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64), metadata !2030, metadata ptr %496, metadata !DIExpression()), !dbg !1494
%497 = getelementptr inbounds %struct.CATransform3D, ptr %35, i64 0, i32 11, !dbg !2031
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64), metadata !2032, metadata ptr %497, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 768, 64), metadata !2032, metadata ptr %35, metadata !DIExpression(DW_OP_plus_uconst, 96)), !dbg !1494
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 832, 64), metadata !2032, metadata ptr %35, metadata !DIExpression(DW_OP_plus_uconst, 104)), !dbg !1494
call void @llvm.dbg.assign(metadata double 0.000000e+00, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 896, 64), metadata !2032, metadata ptr %35, metadata !DIExpression(DW_OP_plus_uconst, 112)), !dbg !1494
%498 = getelementptr inbounds %struct.CATransform3D, ptr %35, i64 0, i32 15, !dbg !2033
call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %497, i8 0, i64 32, i1 false), !dbg !2034, !DIAssignID !2032
store double 1.000000e+00, ptr %498, align 8, !dbg !2035, !DIAssignID !2036
call void @llvm.dbg.assign(metadata double 1.000000e+00, metadata !722, metadata !DIExpression(DW_OP_LLVM_fragment, 960, 64), metadata !2036, metadata ptr %498, metadata !DIExpression()), !dbg !1494
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %36) #15, !dbg !2037
%499 = getelementptr inbounds %struct._GSQuartzCoreQuaternion, ptr %36, i64 0, i32 2, !dbg !2038
tail call void @llvm.dbg.value(metadata double %569, metadata !732, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !723, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !2039, metadata ptr %36, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !723, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !2039, metadata ptr %36, metadata !DIExpression(DW_OP_plus_uconst, 8)), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !723, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !2040, metadata ptr %499, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !723, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !2040, metadata ptr %36, metadata !DIExpression(DW_OP_plus_uconst, 24)), !dbg !1494
%500 = getelementptr inbounds %struct._GSQuartzCoreQuaternion, ptr %37, i64 0, i32 2, !dbg !2041
tail call void @llvm.dbg.value(metadata double %584, metadata !733, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !731, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !2042, metadata ptr %37, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !731, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !2042, metadata ptr %37, metadata !DIExpression(DW_OP_plus_uconst, 8)), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !731, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !2043, metadata ptr %500, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !731, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !2043, metadata ptr %37, metadata !DIExpression(DW_OP_plus_uconst, 24)), !dbg !1494
call void @llvm.dbg.assign(metadata i1 undef, metadata !734, metadata !DIExpression(), metadata !2044, metadata ptr %38, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata i1 undef, metadata !702, metadata !DIExpression(), metadata !2045, metadata ptr %33, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !2046, metadata ptr %33, metadata !DIExpression()), !dbg !1494
%501 = getelementptr inbounds %struct.CATransform3D, ptr %33, i64 0, i32 1, !dbg !2047
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !2048, metadata ptr %501, metadata !DIExpression()), !dbg !1494
%502 = getelementptr inbounds %struct.CATransform3D, ptr %33, i64 0, i32 2, !dbg !2049
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !2050, metadata ptr %502, metadata !DIExpression()), !dbg !1494
%503 = getelementptr inbounds %struct.CATransform3D, ptr %33, i64 0, i32 4, !dbg !2051
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64), metadata !2052, metadata ptr %503, metadata !DIExpression()), !dbg !1494
%504 = getelementptr inbounds %struct.CATransform3D, ptr %33, i64 0, i32 5, !dbg !2053
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64), metadata !2054, metadata ptr %504, metadata !DIExpression()), !dbg !1494
%505 = getelementptr inbounds %struct.CATransform3D, ptr %33, i64 0, i32 6, !dbg !2055
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64), metadata !2056, metadata ptr %505, metadata !DIExpression()), !dbg !1494
%506 = getelementptr inbounds %struct.CATransform3D, ptr %33, i64 0, i32 8, !dbg !2057
call void @llvm.dbg.assign(metadata double %598, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64), metadata !2058, metadata ptr %506, metadata !DIExpression()), !dbg !1494
%507 = getelementptr inbounds %struct.CATransform3D, ptr %33, i64 0, i32 9, !dbg !2059
call void @llvm.dbg.assign(metadata double %600, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64), metadata !2060, metadata ptr %507, metadata !DIExpression()), !dbg !1494
%508 = getelementptr inbounds %struct.CATransform3D, ptr %33, i64 0, i32 10, !dbg !2061
call void @llvm.dbg.assign(metadata double %602, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64), metadata !2062, metadata ptr %508, metadata !DIExpression()), !dbg !1494
%509 = getelementptr inbounds %struct.CATransform3D, ptr %33, i64 0, i32 3, !dbg !2063
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !2064, metadata ptr %509, metadata !DIExpression()), !dbg !1494
%510 = getelementptr inbounds %struct.CATransform3D, ptr %33, i64 0, i32 7, !dbg !2065
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64), metadata !2066, metadata ptr %510, metadata !DIExpression()), !dbg !1494
%511 = getelementptr inbounds %struct.CATransform3D, ptr %33, i64 0, i32 11, !dbg !2067
call void @llvm.dbg.assign(metadata double %450, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64), metadata !2068, metadata ptr %511, metadata !DIExpression()), !dbg !1494
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double %598, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double %600, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double %602, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double %450, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64)), !dbg !2069
%512 = getelementptr inbounds i8, ptr %33, i64 96, !dbg !2071
tail call void @llvm.dbg.value(metadata double %603, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 768, 64)), !dbg !2069
%513 = getelementptr inbounds i8, ptr %33, i64 104, !dbg !2071
tail call void @llvm.dbg.value(metadata double %604, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 832, 64)), !dbg !2069
%514 = getelementptr inbounds i8, ptr %33, i64 112, !dbg !2071
%515 = load <2 x double>, ptr %31, align 16, !dbg !1907
%516 = load <2 x double>, ptr %422, align 16, !dbg !1907
%517 = load <2 x double>, ptr %417, align 16, !dbg !1907
%518 = extractelement <2 x double> %517, i64 0, !dbg !1910
store double %518, ptr %412, align 8, !dbg !1910, !DIAssignID !1914
%519 = extractelement <2 x double> %516, i64 0, !dbg !2072
store double %519, ptr %413, align 16, !dbg !1910, !DIAssignID !1915
%520 = extractelement <2 x double> %515, i64 1, !dbg !1910
store double %520, ptr %417, align 16, !dbg !1910, !DIAssignID !1917
%521 = extractelement <2 x double> %516, i64 1, !dbg !2073
store double %521, ptr %418, align 16, !dbg !1910, !DIAssignID !1919
store double %414, ptr %422, align 16, !dbg !1910, !DIAssignID !1921
store double %419, ptr %423, align 8, !dbg !1910, !DIAssignID !1922
%522 = fmul <2 x double> %517, %517, !dbg !2074
%523 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %515, <2 x double> %515, <2 x double> %522), !dbg !2075
%524 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %516, <2 x double> %516, <2 x double> %523), !dbg !2076
%525 = call <2 x double> @llvm.sqrt.v2f64(<2 x double> %524), !dbg !2077
%526 = shufflevector <2 x double> %465, <2 x double> %517, <2 x i32> <i32 0, i32 2>, !dbg !2078
%527 = shufflevector <2 x double> %525, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2078
%528 = fdiv <2 x double> %526, %527, !dbg !2078
store <2 x double> %528, ptr %34, align 16, !dbg !2079, !DIAssignID !1977
%529 = extractelement <2 x double> %525, i64 0, !dbg !2072
%530 = fdiv double %519, %529, !dbg !2072
store double %530, ptr %466, align 16, !dbg !2080, !DIAssignID !1979
%531 = shufflevector <2 x double> %515, <2 x double> %517, <2 x i32> <i32 1, i32 3>, !dbg !2081
%532 = shufflevector <2 x double> %525, <2 x double> poison, <2 x i32> <i32 1, i32 1>, !dbg !2081
%533 = fdiv <2 x double> %531, %532, !dbg !2081
store <2 x double> %533, ptr %468, align 16, !dbg !2082, !DIAssignID !1984
%534 = extractelement <2 x double> %525, i64 1, !dbg !2073
%535 = fdiv double %521, %534, !dbg !2073
store double %535, ptr %469, align 16, !dbg !2083, !DIAssignID !1986
%536 = insertelement <2 x double> %486, double %406, i64 0, !dbg !2084
%537 = fmul <2 x double> %536, %536, !dbg !2084
%538 = insertelement <2 x double> %457, double %409, i64 1, !dbg !2085
%539 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %538, <2 x double> %538, <2 x double> %537), !dbg !2085
%540 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %410, <2 x double> %410, <2 x double> %539), !dbg !2086
%541 = call <2 x double> @llvm.sqrt.v2f64(<2 x double> %540), !dbg !2087
%542 = shufflevector <2 x double> %541, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2006
%543 = fdiv <2 x double> %481, %542, !dbg !2006
store <2 x double> %543, ptr %35, align 16, !dbg !2088, !DIAssignID !2005
%544 = extractelement <2 x double> %541, i64 0, !dbg !2089
%545 = fdiv double %482, %544, !dbg !2089
store double %545, ptr %483, align 16, !dbg !2090, !DIAssignID !2009
%546 = fsub <2 x double> %541, %525, !dbg !2091
%547 = insertelement <2 x double> poison, double %448, i64 0, !dbg !2092
%548 = shufflevector <2 x double> %547, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2092
%549 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %546, <2 x double> %548, <2 x double> %525), !dbg !2092
%550 = shufflevector <2 x double> %541, <2 x double> poison, <2 x i32> <i32 1, i32 1>, !dbg !2093
%551 = fdiv <2 x double> %486, %550, !dbg !2093
store <2 x double> %551, ptr %485, align 16, !dbg !2094, !DIAssignID !2014
%552 = extractelement <2 x double> %541, i64 1, !dbg !2095
%553 = fdiv double %487, %552, !dbg !2095
store double %553, ptr %488, align 16, !dbg !2096, !DIAssignID !2018
%554 = load <2 x double>, ptr %427, align 16, !dbg !1907
%555 = extractelement <2 x double> %554, i64 0, !dbg !1910
store double %555, ptr %415, align 8, !dbg !1910, !DIAssignID !1916
%556 = extractelement <2 x double> %554, i64 1, !dbg !1910
store double %556, ptr %420, align 8, !dbg !1910, !DIAssignID !1920
store double %416, ptr %427, align 16, !dbg !1910, !DIAssignID !1924
store double %421, ptr %428, align 8, !dbg !1910, !DIAssignID !1925
%557 = fsub <2 x double> %411, %554, !dbg !2097
%558 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %557, <2 x double> %548, <2 x double> %554), !dbg !2098
call fastcc void @matrixToQuaternion(ptr dead_on_unwind nonnull writable sret(%struct._GSQuartzCoreQuaternion) align 8 %36, ptr noundef nonnull byval(%struct.CATransform3D) align 8 %34), !dbg !2099
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %37) #15, !dbg !2100
call fastcc void @matrixToQuaternion(ptr dead_on_unwind nonnull writable sret(%struct._GSQuartzCoreQuaternion) align 8 %37, ptr noundef nonnull byval(%struct.CATransform3D) align 8 %35), !dbg !2101
%559 = load <2 x double>, ptr %36, align 16, !dbg !2102
%560 = fmul <2 x double> %559, %559, !dbg !2103
%561 = extractelement <2 x double> %560, i64 1, !dbg !2103
%562 = extractelement <2 x double> %559, i64 0, !dbg !2104
%563 = call double @llvm.fmuladd.f64(double %562, double %562, double %561), !dbg !2104
%564 = load <2 x double>, ptr %499, align 16, !dbg !2038
%565 = extractelement <2 x double> %564, i64 0, !dbg !2105
%566 = call double @llvm.fmuladd.f64(double %565, double %565, double %563), !dbg !2105
%567 = extractelement <2 x double> %564, i64 1, !dbg !2106
%568 = call double @llvm.fmuladd.f64(double %567, double %567, double %566), !dbg !2106
%569 = call double @llvm.sqrt.f64(double %568), !dbg !2107
%570 = insertelement <2 x double> poison, double %569, i64 0, !dbg !2108
%571 = shufflevector <2 x double> %570, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2108
%572 = fdiv <2 x double> %559, %571, !dbg !2108
store <2 x double> %572, ptr %36, align 16, !dbg !2108, !DIAssignID !2039
%573 = fdiv <2 x double> %564, %571, !dbg !2109
store <2 x double> %573, ptr %499, align 16, !dbg !2109, !DIAssignID !2040
%574 = load <2 x double>, ptr %37, align 16, !dbg !2110
%575 = fmul <2 x double> %574, %574, !dbg !2111
%576 = extractelement <2 x double> %575, i64 1, !dbg !2111
%577 = extractelement <2 x double> %574, i64 0, !dbg !2112
%578 = call double @llvm.fmuladd.f64(double %577, double %577, double %576), !dbg !2112
%579 = load <2 x double>, ptr %500, align 16, !dbg !2041
%580 = extractelement <2 x double> %579, i64 0, !dbg !2113
%581 = call double @llvm.fmuladd.f64(double %580, double %580, double %578), !dbg !2113
%582 = extractelement <2 x double> %579, i64 1, !dbg !2114
%583 = call double @llvm.fmuladd.f64(double %582, double %582, double %581), !dbg !2114
%584 = call double @llvm.sqrt.f64(double %583), !dbg !2115
%585 = insertelement <2 x double> poison, double %584, i64 0, !dbg !2116
%586 = shufflevector <2 x double> %585, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2116
%587 = fdiv <2 x double> %574, %586, !dbg !2116
store <2 x double> %587, ptr %37, align 16, !dbg !2116, !DIAssignID !2042
%588 = fdiv <2 x double> %579, %586, !dbg !2117
store <2 x double> %588, ptr %500, align 16, !dbg !2117, !DIAssignID !2043
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %38) #15, !dbg !2118
call fastcc void @linearInterpolationQuaternion(ptr dead_on_unwind nonnull writable sret(%struct._GSQuartzCoreQuaternion) align 8 %38, ptr noundef nonnull byval(%struct._GSQuartzCoreQuaternion) align 8 %36, ptr noundef nonnull byval(%struct._GSQuartzCoreQuaternion) align 8 %37, double noundef %448), !dbg !2119
call fastcc void @quaternionToMatrix(ptr dead_on_unwind nonnull writable sret(%struct.CATransform3D) align 8 %33, ptr noundef nonnull byval(%struct._GSQuartzCoreQuaternion) align 8 %38), !dbg !2120
%589 = load <2 x double>, ptr %33, align 16, !dbg !2121
%590 = load <2 x double>, ptr %501, align 8, !dbg !2122
%591 = load <2 x double>, ptr %502, align 16, !dbg !2123
%592 = load double, ptr %503, align 16, !dbg !2124
%593 = insertelement <2 x double> %589, double %592, i64 1, !dbg !2121
%594 = fmul <2 x double> %549, %593, !dbg !2121
%595 = load double, ptr %504, align 8, !dbg !2125
%596 = load double, ptr %505, align 16, !dbg !2126
%597 = load double, ptr %506, align 16, !dbg !2127
%598 = fmul double %464, %597, !dbg !2127
%599 = load double, ptr %507, align 8, !dbg !2128
%600 = fmul double %464, %599, !dbg !2128
%601 = load double, ptr %508, align 16, !dbg !2129
%602 = fmul double %464, %601, !dbg !2129
%603 = load double, ptr %512, align 16, !dbg !2071
%604 = load double, ptr %513, align 8, !dbg !2071
%605 = load double, ptr %514, align 16, !dbg !2071
tail call void @llvm.dbg.value(metadata double %605, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 896, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double poison, metadata !1892, metadata !DIExpression(DW_OP_LLVM_fragment, 960, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata ptr undef, metadata !1894, metadata !DIExpression()), !dbg !2069
tail call void @llvm.dbg.value(metadata ptr undef, metadata !1895, metadata !DIExpression()), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 768, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double undef, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 832, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double %598, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double %600, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double %602, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double %450, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 896, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double %603, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double %604, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata double %605, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata i64 15, metadata !1897, metadata !DIExpression(DW_OP_constu, 3, DW_OP_and, DW_OP_stack_value)), !dbg !2130
tail call void @llvm.dbg.value(metadata i32 3, metadata !1898, metadata !DIExpression()), !dbg !2130
tail call void @llvm.dbg.value(metadata i32 15, metadata !1899, metadata !DIExpression()), !dbg !2130
tail call void @llvm.dbg.value(metadata double poison, metadata !1893, metadata !DIExpression(DW_OP_LLVM_fragment, 960, 64)), !dbg !2069
tail call void @llvm.dbg.value(metadata i64 16, metadata !1896, metadata !DIExpression()), !dbg !2131
store <2 x double> %594, ptr %33, align 16, !dbg !2132, !DIAssignID !2133
store double %598, ptr %502, align 16, !dbg !2132, !DIAssignID !2134
store double %603, ptr %509, align 8, !dbg !2132, !DIAssignID !2135
%606 = insertelement <2 x double> %590, double %595, i64 1, !dbg !2122
%607 = fmul <2 x double> %549, %606, !dbg !2122
store <2 x double> %607, ptr %503, align 16, !dbg !2132, !DIAssignID !2136
store double %600, ptr %505, align 16, !dbg !2132, !DIAssignID !2137
store double %604, ptr %510, align 8, !dbg !2132, !DIAssignID !2138
%608 = insertelement <2 x double> %591, double %596, i64 1, !dbg !2123
%609 = fmul <2 x double> %549, %608, !dbg !2123
store <2 x double> %609, ptr %506, align 16, !dbg !2132, !DIAssignID !2139
store double %602, ptr %508, align 16, !dbg !2132, !DIAssignID !2140
store double %605, ptr %511, align 8, !dbg !2132, !DIAssignID !2141
store <2 x double> %558, ptr %512, align 16, !dbg !2132, !DIAssignID !2142
store double %450, ptr %514, align 16, !dbg !2132, !DIAssignID !2143
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64), metadata !2133, metadata ptr %33, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64), metadata !2133, metadata ptr %501, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %598, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64), metadata !2134, metadata ptr %502, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %603, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64), metadata !2135, metadata ptr %509, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 256, 64), metadata !2136, metadata ptr %503, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 320, 64), metadata !2136, metadata ptr %504, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %600, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 384, 64), metadata !2137, metadata ptr %505, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %604, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 448, 64), metadata !2138, metadata ptr %510, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 512, 64), metadata !2139, metadata ptr %506, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 576, 64), metadata !2139, metadata ptr %507, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %602, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 640, 64), metadata !2140, metadata ptr %508, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %605, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 704, 64), metadata !2141, metadata ptr %511, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 768, 64), metadata !2142, metadata ptr %512, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double undef, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 832, 64), metadata !2142, metadata ptr %513, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double %450, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 896, 64), metadata !2143, metadata ptr %514, metadata !DIExpression()), !dbg !1494
call void @llvm.dbg.assign(metadata double poison, metadata !702, metadata !DIExpression(DW_OP_LLVM_fragment, 960, 64), metadata !2144, metadata ptr %33, metadata !DIExpression(DW_OP_plus_uconst, 120)), !dbg !1494
%610 = load ptr, ptr @._OBJC_REF_CLASS_NSValue, align 8, !dbg !2145
%611 = call ptr @objc_msgSend(ptr noundef %610, ptr noundef nonnull @".objc_selector_valueWithCATransform3D:_\01144\010:8{CATransform3D=dddddddddddddddd}16", ptr noundef nonnull byval(%struct.CATransform3D) align 8 %33), !dbg !2145, !GNUObjCMessageSend !2146
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #15, !dbg !2147
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %37) #15, !dbg !2147
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #15, !dbg !2147
call void @llvm.lifetime.end.p0(i64 128, ptr nonnull %35) #15, !dbg !2147
call void @llvm.lifetime.end.p0(i64 128, ptr nonnull %34) #15, !dbg !2147
call void @llvm.lifetime.end.p0(i64 128, ptr nonnull %33) #15, !dbg !2147
call void @llvm.lifetime.end.p0(i64 128, ptr nonnull %32) #15, !dbg !2147
call void @llvm.lifetime.end.p0(i64 128, ptr nonnull %31) #15, !dbg !2147
br label %708
612: ; preds = %369, %116, %111, %106
%613 = call ptr @NSClassFromString(ptr noundef nonnull inttoptr (i64 -8710490554695614404 to ptr)), !dbg !2148
%614 = call zeroext i8 @objc_msgSend(ptr noundef %63, ptr noundef nonnull @".objc_selector_isKindOfClass:_C24\010:8#16", ptr noundef %613), !dbg !2149, !GNUObjCMessageSend !1530
%615 = icmp eq i8 %614, 0, !dbg !2149
br i1 %615, label %708, label %616, !dbg !2150
616: ; preds = %612
%617 = call ptr @NSClassFromString(ptr noundef nonnull inttoptr (i64 -8710490554695614404 to ptr)), !dbg !2151
%618 = call zeroext i8 @objc_msgSend(ptr noundef %77, ptr noundef nonnull @".objc_selector_isKindOfClass:_C24\010:8#16", ptr noundef %617), !dbg !2152, !GNUObjCMessageSend !1530
%619 = icmp eq i8 %618, 0, !dbg !2152
br i1 %619, label %708, label %620, !dbg !2153
620: ; preds = %616
tail call void @llvm.dbg.value(metadata ptr %63, metadata !735, metadata !DIExpression()), !dbg !2154
tail call void @llvm.dbg.value(metadata ptr %77, metadata !738, metadata !DIExpression()), !dbg !2154
%621 = call i64 @CGColorGetNumberOfComponents(ptr noundef %63), !dbg !2155
%622 = call i64 @CGColorGetNumberOfComponents(ptr noundef %77), !dbg !2156
%623 = icmp eq i64 %621, %622, !dbg !2157
br i1 %623, label %624, label %708, !dbg !2158
624: ; preds = %620
%625 = call ptr @CGColorGetColorSpace(ptr noundef %63), !dbg !2159
%626 = call ptr @CGColorGetColorSpace(ptr noundef %77), !dbg !2160
%627 = icmp eq ptr %625, %626, !dbg !2161
br i1 %627, label %628, label %708, !dbg !2162
628: ; preds = %624
%629 = call ptr @CGColorGetComponents(ptr noundef %63), !dbg !2163
%630 = ptrtoint ptr %629 to i64, !dbg !2164
tail call void @llvm.dbg.value(metadata ptr %629, metadata !739, metadata !DIExpression()), !dbg !1504
%631 = call ptr @CGColorGetComponents(ptr noundef %77), !dbg !2164
%632 = ptrtoint ptr %631 to i64, !dbg !2165
tail call void @llvm.dbg.value(metadata ptr %631, metadata !744, metadata !DIExpression()), !dbg !1504
%633 = call i64 @CGColorGetNumberOfComponents(ptr noundef %63), !dbg !2165
tail call void @llvm.dbg.value(metadata i64 %633, metadata !745, metadata !DIExpression()), !dbg !1504
call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %39) #15, !dbg !2166
call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 16 dereferenceable(32) %39, ptr noundef nonnull align 16 dereferenceable(32) @"__const.calculatedAnimationValueAtTime:onLayer:.valueComponents", i64 32, i1 false), !dbg !2167, !DIAssignID !2168
call void @llvm.dbg.assign(metadata i1 undef, metadata !746, metadata !DIExpression(), metadata !2168, metadata ptr %39, metadata !DIExpression()), !dbg !1504
tail call void @llvm.dbg.value(metadata i32 0, metadata !747, metadata !DIExpression()), !dbg !2169
%634 = icmp eq i64 %633, 0, !dbg !2170
br i1 %634, label %704, label %635, !dbg !2172
635: ; preds = %628
%636 = fpext float %59 to double
%637 = icmp ult i64 %633, 6, !dbg !2172
br i1 %637, label %668, label %638, !dbg !2172
638: ; preds = %635
%639 = sub i64 %40, %630, !dbg !2172
%640 = icmp ult i64 %639, 32, !dbg !2172
%641 = sub i64 %40, %632, !dbg !2172
%642 = icmp ult i64 %641, 32, !dbg !2172
%643 = or i1 %640, %642, !dbg !2172
br i1 %643, label %668, label %644, !dbg !2172
644: ; preds = %638
%645 = and i64 %633, -4, !dbg !2172
%646 = insertelement <2 x double> poison, double %636, i64 0, !dbg !2172
%647 = shufflevector <2 x double> %646, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2172
br label %648, !dbg !2172
648: ; preds = %648, %644
%649 = phi i64 [ 0, %644 ], [ %664, %648 ], !dbg !2173
%650 = getelementptr inbounds double, ptr %629, i64 %649, !dbg !2174
%651 = getelementptr inbounds double, ptr %650, i64 2, !dbg !2174
%652 = load <2 x double>, ptr %650, align 8, !dbg !2174
%653 = load <2 x double>, ptr %651, align 8, !dbg !2174
%654 = getelementptr inbounds double, ptr %631, i64 %649, !dbg !2176
%655 = getelementptr inbounds double, ptr %654, i64 2, !dbg !2176
%656 = load <2 x double>, ptr %654, align 8, !dbg !2176
%657 = load <2 x double>, ptr %655, align 8, !dbg !2176
%658 = fsub <2 x double> %656, %652, !dbg !2177
%659 = fsub <2 x double> %657, %653, !dbg !2177
%660 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %658, <2 x double> %647, <2 x double> %652), !dbg !2179
%661 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %659, <2 x double> %647, <2 x double> %653), !dbg !2179
%662 = getelementptr inbounds [4 x double], ptr %39, i64 0, i64 %649, !dbg !2180
%663 = getelementptr inbounds double, ptr %662, i64 2, !dbg !2181
store <2 x double> %660, ptr %662, align 16, !dbg !2181
store <2 x double> %661, ptr %663, align 16, !dbg !2181
%664 = add nuw i64 %649, 4, !dbg !2173
%665 = icmp eq i64 %664, %645, !dbg !2173
br i1 %665, label %666, label %648, !dbg !2173, !llvm.loop !2182
666: ; preds = %648
%667 = icmp eq i64 %633, %645, !dbg !2172
br i1 %667, label %704, label %668, !dbg !2172
668: ; preds = %638, %635, %666
%669 = phi i64 [ 0, %638 ], [ 0, %635 ], [ %645, %666 ]
%670 = or disjoint i64 %669, 1, !dbg !2172
%671 = and i64 %633, 1, !dbg !2172
%672 = icmp eq i64 %671, 0, !dbg !2172
br i1 %672, label %682, label %673, !dbg !2172
673: ; preds = %668
tail call void @llvm.dbg.value(metadata i64 poison, metadata !747, metadata !DIExpression()), !dbg !2169
%674 = getelementptr inbounds double, ptr %629, i64 %669, !dbg !2174
%675 = load double, ptr %674, align 8, !dbg !2174
%676 = getelementptr inbounds double, ptr %631, i64 %669, !dbg !2176
%677 = load double, ptr %676, align 8, !dbg !2176
call void @llvm.dbg.value(metadata double %675, metadata !1542, metadata !DIExpression()), !dbg !2186
call void @llvm.dbg.value(metadata double %677, metadata !1547, metadata !DIExpression()), !dbg !2186
call void @llvm.dbg.value(metadata double %636, metadata !1548, metadata !DIExpression()), !dbg !2186
%678 = fsub double %677, %675, !dbg !2177
%679 = call noundef double @llvm.fmuladd.f64(double %678, double %636, double %675), !dbg !2179
%680 = getelementptr inbounds [4 x double], ptr %39, i64 0, i64 %669, !dbg !2180
store double %679, ptr %680, align 16, !dbg !2181
%681 = or disjoint i64 %669, 1, !dbg !2173
tail call void @llvm.dbg.value(metadata i64 %681, metadata !747, metadata !DIExpression()), !dbg !2169
br label %682, !dbg !2172
682: ; preds = %673, %668
%683 = phi i64 [ %669, %668 ], [ %681, %673 ]
%684 = icmp eq i64 %633, %670, !dbg !2172
br i1 %684, label %704, label %685, !dbg !2172
685: ; preds = %682, %685
%686 = phi i64 [ %702, %685 ], [ %683, %682 ]
tail call void @llvm.dbg.value(metadata i64 %686, metadata !747, metadata !DIExpression()), !dbg !2169
%687 = getelementptr inbounds double, ptr %629, i64 %686, !dbg !2174
%688 = load double, ptr %687, align 8, !dbg !2174
%689 = getelementptr inbounds double, ptr %631, i64 %686, !dbg !2176
%690 = load double, ptr %689, align 8, !dbg !2176
call void @llvm.dbg.value(metadata double %688, metadata !1542, metadata !DIExpression()), !dbg !2186
call void @llvm.dbg.value(metadata double %690, metadata !1547, metadata !DIExpression()), !dbg !2186
call void @llvm.dbg.value(metadata double %636, metadata !1548, metadata !DIExpression()), !dbg !2186
%691 = fsub double %690, %688, !dbg !2177
%692 = call noundef double @llvm.fmuladd.f64(double %691, double %636, double %688), !dbg !2179
%693 = getelementptr inbounds [4 x double], ptr %39, i64 0, i64 %686, !dbg !2180
store double %692, ptr %693, align 8, !dbg !2181
%694 = add nuw nsw i64 %686, 1, !dbg !2173
tail call void @llvm.dbg.value(metadata i64 %694, metadata !747, metadata !DIExpression()), !dbg !2169
tail call void @llvm.dbg.value(metadata i64 %694, metadata !747, metadata !DIExpression()), !dbg !2169
%695 = getelementptr inbounds double, ptr %629, i64 %694, !dbg !2174
%696 = load double, ptr %695, align 8, !dbg !2174
%697 = getelementptr inbounds double, ptr %631, i64 %694, !dbg !2176
%698 = load double, ptr %697, align 8, !dbg !2176
call void @llvm.dbg.value(metadata double %696, metadata !1542, metadata !DIExpression()), !dbg !2186
call void @llvm.dbg.value(metadata double %698, metadata !1547, metadata !DIExpression()), !dbg !2186
call void @llvm.dbg.value(metadata double %636, metadata !1548, metadata !DIExpression()), !dbg !2186
%699 = fsub double %698, %696, !dbg !2177
%700 = call noundef double @llvm.fmuladd.f64(double %699, double %636, double %696), !dbg !2179
%701 = getelementptr inbounds [4 x double], ptr %39, i64 0, i64 %694, !dbg !2180
store double %700, ptr %701, align 8, !dbg !2181
%702 = add nuw nsw i64 %686, 2, !dbg !2173
tail call void @llvm.dbg.value(metadata i64 %702, metadata !747, metadata !DIExpression()), !dbg !2169
%703 = icmp eq i64 %702, %633, !dbg !2170
br i1 %703, label %704, label %685, !dbg !2172, !llvm.loop !2187
704: ; preds = %682, %685, %666, %628
%705 = call ptr @CGColorGetColorSpace(ptr noundef %63), !dbg !2188
%706 = call ptr @CGColorCreate(ptr noundef %705, ptr noundef nonnull %39), !dbg !2189
%707 = call ptr @objc_msgSend(ptr noundef %706, ptr noundef nonnull @".objc_selector_autorelease_\0116\010:8"), !dbg !2190, !GNUObjCMessageSend !872
call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #15, !dbg !2191
br label %708
708: ; preds = %620, %624, %173, %187, %246, %257, %332, %352, %401, %612, %616, %704, %98
%709 = phi ptr [ %105, %98 ], [ %707, %704 ], [ null, %616 ], [ null, %612 ], [ %182, %173 ], [ %196, %187 ], [ %252, %246 ], [ %266, %257 ], [ %347, %332 ], [ %368, %352 ], [ %611, %401 ], [ null, %624 ], [ null, %620 ]
ret ptr %709, !dbg !2192
}
; Function Attrs: mustprogress nofree nounwind willreturn memory(argmem: read)
declare !dbg !2193 i32 @strcmp(ptr nocapture noundef, ptr nocapture noundef) local_unnamed_addr #6
; Function Attrs: mustprogress nocallback nofree nounwind willreturn memory(argmem: write)
declare void @llvm.memset.p0.i64(ptr nocapture writeonly, i8, i64, i1 immarg) #7
declare !dbg !2200 void @NSLog(ptr noundef, ...) local_unnamed_addr #8
declare ptr @objc_msgSend_stret(ptr, ...) local_unnamed_addr
; Function Attrs: mustprogress nocallback nofree nounwind willreturn memory(argmem: readwrite)
declare void @llvm.memcpy.p0.p0.i64(ptr noalias nocapture writeonly, ptr noalias nocapture readonly, i64, i1 immarg) #9
; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare !dbg !2203 double @sqrt(double noundef) local_unnamed_addr #10
; Function Attrs: mustprogress nofree nounwind willreturn memory(write, argmem: readwrite) uwtable
define internal fastcc void @matrixToQuaternion(ptr dead_on_unwind noalias nocapture writable writeonly sret(%struct._GSQuartzCoreQuaternion) align 8 %0, ptr nocapture noundef readonly byval(%struct.CATransform3D) align 8 %1) unnamed_addr #11 !dbg !2207 {
call void @llvm.dbg.declare(metadata ptr %1, metadata !2211, metadata !DIExpression()), !dbg !2228
call void @llvm.dbg.declare(metadata ptr %0, metadata !2212, metadata !DIExpression()), !dbg !2229
%3 = load double, ptr %1, align 8, !dbg !2230
%4 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 5, !dbg !2231
%5 = load double, ptr %4, align 8, !dbg !2231
%6 = fadd double %3, %5, !dbg !2232
%7 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 10, !dbg !2233
%8 = load double, ptr %7, align 8, !dbg !2233
%9 = fadd double %6, %8, !dbg !2234
%10 = fcmp ogt double %9, 0.000000e+00, !dbg !2235
br i1 %10, label %11, label %38, !dbg !2236
11: ; preds = %2
%12 = fadd double %9, 1.000000e+00, !dbg !2237
tail call void @llvm.dbg.value(metadata double %12, metadata !2213, metadata !DIExpression()), !dbg !2238
%13 = tail call double @sqrt(double noundef %12) #15, !dbg !2239
%14 = fdiv double 5.000000e-01, %13, !dbg !2240
tail call void @llvm.dbg.value(metadata double %14, metadata !2216, metadata !DIExpression()), !dbg !2238
%15 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 1, !dbg !2241
%16 = load double, ptr %15, align 8, !dbg !2241
%17 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 4, !dbg !2242
%18 = load double, ptr %17, align 8, !dbg !2242
%19 = fsub double %16, %18, !dbg !2243
%20 = getelementptr inbounds %struct._GSQuartzCoreQuaternion, ptr %0, i64 0, i32 2, !dbg !2244
%21 = insertelement <2 x double> poison, double %14, i64 0, !dbg !2245
%22 = shufflevector <2 x double> %21, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2245
%23 = insertelement <2 x double> poison, double %19, i64 0, !dbg !2245
%24 = insertelement <2 x double> %23, double %12, i64 1, !dbg !2245
%25 = fmul <2 x double> %22, %24, !dbg !2245
store <2 x double> %25, ptr %20, align 8, !dbg !2246
%26 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 8, !dbg !2247
%27 = load double, ptr %26, align 8, !dbg !2247
%28 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 2, !dbg !2248
%29 = load double, ptr %28, align 8, !dbg !2248
%30 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 6, !dbg !2249
%31 = load <2 x double>, ptr %30, align 8, !dbg !2249
%32 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 9, !dbg !2250
%33 = load <2 x double>, ptr %32, align 8, !dbg !2250
%34 = insertelement <2 x double> %31, double %27, i64 1, !dbg !2251
%35 = insertelement <2 x double> %33, double %29, i64 1, !dbg !2251
%36 = fsub <2 x double> %34, %35, !dbg !2251
%37 = fmul <2 x double> %22, %36, !dbg !2252
store <2 x double> %37, ptr %0, align 8, !dbg !2253
br label %132, !dbg !2254
38: ; preds = %2
%39 = fcmp ogt double %3, %5, !dbg !2255
%40 = fcmp ogt double %3, %8
%41 = and i1 %39, %40, !dbg !2256
br i1 %41, label %42, label %72, !dbg !2256
42: ; preds = %38
%43 = fsub double %3, %5, !dbg !2257
%44 = fsub double %43, %8, !dbg !2258
tail call void @llvm.dbg.value(metadata double %47, metadata !2217, metadata !DIExpression()), !dbg !2259
tail call void @llvm.dbg.value(metadata double %49, metadata !2220, metadata !DIExpression()), !dbg !2259
%45 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 1, !dbg !2260
%46 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 4, !dbg !2261
%47 = fadd double %44, 1.000000e+00, !dbg !2262
%48 = tail call double @sqrt(double noundef %47) #15, !dbg !2263
%49 = fdiv double 5.000000e-01, %48, !dbg !2264
%50 = load double, ptr %45, align 8, !dbg !2260
%51 = load double, ptr %46, align 8, !dbg !2261
%52 = fadd double %50, %51, !dbg !2265
%53 = insertelement <2 x double> poison, double %47, i64 0, !dbg !2266
%54 = insertelement <2 x double> %53, double %52, i64 1, !dbg !2266
%55 = insertelement <2 x double> poison, double %49, i64 0, !dbg !2266
%56 = shufflevector <2 x double> %55, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2266
%57 = fmul <2 x double> %54, %56, !dbg !2266
store <2 x double> %57, ptr %0, align 8, !dbg !2267
%58 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 8, !dbg !2268
%59 = load double, ptr %58, align 8, !dbg !2268
%60 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 2, !dbg !2269
%61 = load double, ptr %60, align 8, !dbg !2269
%62 = fadd double %59, %61, !dbg !2270
%63 = fmul double %49, %62, !dbg !2271
%64 = getelementptr inbounds %struct._GSQuartzCoreQuaternion, ptr %0, i64 0, i32 2, !dbg !2272
store double %63, ptr %64, align 8, !dbg !2273
%65 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 6, !dbg !2274
%66 = load double, ptr %65, align 8, !dbg !2274
%67 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 9, !dbg !2275
%68 = load double, ptr %67, align 8, !dbg !2275
%69 = fsub double %66, %68, !dbg !2276
%70 = fmul double %49, %69, !dbg !2277
%71 = getelementptr inbounds %struct._GSQuartzCoreQuaternion, ptr %0, i64 0, i32 3, !dbg !2278
store double %70, ptr %71, align 8, !dbg !2279
br label %132, !dbg !2280
72: ; preds = %38
%73 = fcmp ogt double %5, %8, !dbg !2281
br i1 %73, label %74, label %102, !dbg !2282
74: ; preds = %72
%75 = fsub double %5, %3, !dbg !2283
%76 = fsub double %75, %8, !dbg !2284
tail call void @llvm.dbg.value(metadata double %79, metadata !2221, metadata !DIExpression()), !dbg !2285
tail call void @llvm.dbg.value(metadata double %81, metadata !2224, metadata !DIExpression()), !dbg !2285
%77 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 1, !dbg !2286
%78 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 4, !dbg !2287
%79 = fadd double %76, 1.000000e+00, !dbg !2288
%80 = tail call double @sqrt(double noundef %79) #15, !dbg !2289
%81 = fdiv double 5.000000e-01, %80, !dbg !2290
%82 = load double, ptr %77, align 8, !dbg !2286
%83 = load double, ptr %78, align 8, !dbg !2287
%84 = fadd double %82, %83, !dbg !2291
%85 = insertelement <2 x double> poison, double %81, i64 0, !dbg !2292
%86 = shufflevector <2 x double> %85, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2292
%87 = insertelement <2 x double> poison, double %84, i64 0, !dbg !2292
%88 = insertelement <2 x double> %87, double %79, i64 1, !dbg !2292
%89 = fmul <2 x double> %86, %88, !dbg !2292
store <2 x double> %89, ptr %0, align 8, !dbg !2293
%90 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 8, !dbg !2294
%91 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 2, !dbg !2295
%92 = load <2 x double>, ptr %91, align 8, !dbg !2295
%93 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 6, !dbg !2296
%94 = load double, ptr %93, align 8, !dbg !2296
%95 = getelementptr inbounds %struct._GSQuartzCoreQuaternion, ptr %0, i64 0, i32 2, !dbg !2297
%96 = load <2 x double>, ptr %90, align 8, !dbg !2294
%97 = insertelement <2 x double> %92, double %94, i64 1, !dbg !2298
%98 = fadd <2 x double> %96, %97, !dbg !2298
%99 = fsub <2 x double> %96, %97, !dbg !2298
%100 = shufflevector <2 x double> %98, <2 x double> %99, <2 x i32> <i32 1, i32 2>, !dbg !2298
%101 = fmul <2 x double> %86, %100, !dbg !2299
store <2 x double> %101, ptr %95, align 8, !dbg !2300
br label %132, !dbg !2301
102: ; preds = %72
%103 = fneg double %3, !dbg !2302
%104 = fsub double %103, %5, !dbg !2303
%105 = fadd double %104, %8, !dbg !2304
tail call void @llvm.dbg.value(metadata double %109, metadata !2225, metadata !DIExpression()), !dbg !2305
tail call void @llvm.dbg.value(metadata double %111, metadata !2227, metadata !DIExpression()), !dbg !2305
%106 = getelementptr inbounds %struct._GSQuartzCoreQuaternion, ptr %0, i64 0, i32 2, !dbg !2306
%107 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 1, !dbg !2307
%108 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 4, !dbg !2308
%109 = fadd double %105, 1.000000e+00, !dbg !2309
%110 = tail call double @sqrt(double noundef %109) #15, !dbg !2310
%111 = fdiv double 5.000000e-01, %110, !dbg !2311
%112 = load double, ptr %107, align 8, !dbg !2307
%113 = load double, ptr %108, align 8, !dbg !2308
%114 = fsub double %112, %113, !dbg !2312
%115 = insertelement <2 x double> poison, double %109, i64 0, !dbg !2313
%116 = insertelement <2 x double> %115, double %114, i64 1, !dbg !2313
%117 = insertelement <2 x double> poison, double %111, i64 0, !dbg !2313
%118 = shufflevector <2 x double> %117, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2313
%119 = fmul <2 x double> %116, %118, !dbg !2313
store <2 x double> %119, ptr %106, align 8, !dbg !2314
%120 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 8, !dbg !2315
%121 = load <2 x double>, ptr %120, align 8, !dbg !2315
%122 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 2, !dbg !2316
%123 = load <2 x double>, ptr %122, align 8, !dbg !2316
%124 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 6, !dbg !2317
%125 = load double, ptr %124, align 8, !dbg !2317
%126 = getelementptr inbounds %struct.CATransform3D, ptr %1, i64 0, i32 9, !dbg !2318
%127 = load double, ptr %126, align 8, !dbg !2318
%128 = insertelement <2 x double> %121, double %125, i64 1, !dbg !2319
%129 = insertelement <2 x double> %123, double %127, i64 1, !dbg !2319
%130 = fadd <2 x double> %128, %129, !dbg !2319
%131 = fmul <2 x double> %118, %130, !dbg !2320
store <2 x double> %131, ptr %0, align 8, !dbg !2321
br label %132
132: ; preds = %42, %102, %74, %11
ret void, !dbg !2322
}
; Function Attrs: mustprogress nofree nounwind willreturn memory(write, argmem: readwrite) uwtable
define internal fastcc void @linearInterpolationQuaternion(ptr dead_on_unwind noalias nocapture writable writeonly sret(%struct._GSQuartzCoreQuaternion) align 8 %0, ptr nocapture noundef readonly byval(%struct._GSQuartzCoreQuaternion) align 8 %1, ptr nocapture noundef readonly byval(%struct._GSQuartzCoreQuaternion) align 8 %2, double noundef %3) unnamed_addr #11 !dbg !2323 {
call void @llvm.dbg.declare(metadata ptr %1, metadata !2327, metadata !DIExpression()), !dbg !2339
call void @llvm.dbg.declare(metadata ptr %2, metadata !2328, metadata !DIExpression()), !dbg !2340
tail call void @llvm.dbg.value(metadata double %3, metadata !2329, metadata !DIExpression()), !dbg !2341
%5 = call i32 @bcmp(ptr noundef nonnull dereferenceable(32) %1, ptr noundef nonnull dereferenceable(32) %2, i64 32), !dbg !2342
%6 = icmp eq i32 %5, 0, !dbg !2342
br i1 %6, label %7, label %8, !dbg !2344
7: ; preds = %4
call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull align 8 dereferenceable(32) %1, i64 32, i1 false), !dbg !2345
br label %69, !dbg !2347
8: ; preds = %4
%9 = fcmp oeq double %3, 0.000000e+00, !dbg !2348
br i1 %9, label %10, label %11, !dbg !2350
10: ; preds = %8
call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull align 8 dereferenceable(32) %1, i64 32, i1 false), !dbg !2351
br label %69, !dbg !2353
11: ; preds = %8
%12 = fcmp oeq double %3, 1.000000e+00, !dbg !2354
br i1 %12, label %13, label %14, !dbg !2356
13: ; preds = %11
call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull align 8 dereferenceable(32) %2, i64 32, i1 false), !dbg !2357
br label %69, !dbg !2359
14: ; preds = %11
%15 = load <2 x double>, ptr %1, align 8, !dbg !2360
%16 = load <2 x double>, ptr %2, align 8, !dbg !2361
%17 = fmul <2 x double> %15, %16, !dbg !2362
%18 = extractelement <2 x double> %17, i64 1, !dbg !2362
%19 = extractelement <2 x double> %15, i64 0, !dbg !2363
%20 = extractelement <2 x double> %16, i64 0, !dbg !2363
%21 = tail call double @llvm.fmuladd.f64(double %19, double %20, double %18), !dbg !2363
%22 = getelementptr inbounds %struct._GSQuartzCoreQuaternion, ptr %1, i64 0, i32 2, !dbg !2364
%23 = getelementptr inbounds %struct._GSQuartzCoreQuaternion, ptr %2, i64 0, i32 2, !dbg !2365
%24 = load <2 x double>, ptr %22, align 8, !dbg !2364
%25 = load <2 x double>, ptr %23, align 8, !dbg !2365
%26 = extractelement <2 x double> %24, i64 0, !dbg !2366
%27 = extractelement <2 x double> %25, i64 0, !dbg !2366
%28 = tail call double @llvm.fmuladd.f64(double %26, double %27, double %21), !dbg !2366
%29 = extractelement <2 x double> %24, i64 1, !dbg !2367
%30 = extractelement <2 x double> %25, i64 1, !dbg !2367
%31 = tail call double @llvm.fmuladd.f64(double %29, double %30, double %28), !dbg !2367
tail call void @llvm.dbg.value(metadata double %31, metadata !2331, metadata !DIExpression()), !dbg !2341
%32 = tail call double @acos(double noundef %31) #15, !dbg !2368
tail call void @llvm.dbg.value(metadata double %32, metadata !2332, metadata !DIExpression()), !dbg !2341
%33 = fcmp oeq double %32, 0.000000e+00, !dbg !2369
br i1 %33, label %34, label %35, !dbg !2371
34: ; preds = %14
call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull align 8 dereferenceable(32) %1, i64 32, i1 false), !dbg !2372
br label %69, !dbg !2374
35: ; preds = %14
%36 = fcmp olt double %32, 0.000000e+00, !dbg !2375
%37 = fneg double %32, !dbg !2377
%38 = select i1 %36, double %37, double %32, !dbg !2377
tail call void @llvm.dbg.value(metadata double %38, metadata !2332, metadata !DIExpression()), !dbg !2341
%39 = tail call double @sin(double noundef %38) #15, !dbg !2378
tail call void @llvm.dbg.value(metadata double %39, metadata !2333, metadata !DIExpression()), !dbg !2341
%40 = fmul double %38, %3, !dbg !2379
%41 = tail call double @sin(double noundef %40) #15, !dbg !2380
tail call void @llvm.dbg.value(metadata double %41, metadata !2334, metadata !DIExpression()), !dbg !2341
%42 = fsub double 1.000000e+00, %3, !dbg !2381
%43 = fmul double %42, %38, !dbg !2382
%44 = tail call double @sin(double noundef %43) #15, !dbg !2383
tail call void @llvm.dbg.value(metadata double %44, metadata !2335, metadata !DIExpression()), !dbg !2341
%45 = fdiv double %44, %39, !dbg !2384
tail call void @llvm.dbg.value(metadata double %45, metadata !2336, metadata !DIExpression()), !dbg !2341
%46 = fdiv double %41, %39, !dbg !2385
tail call void @llvm.dbg.value(metadata double %46, metadata !2337, metadata !DIExpression()), !dbg !2341
tail call void @llvm.dbg.value(metadata double undef, metadata !2330, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !2341
tail call void @llvm.dbg.value(metadata double undef, metadata !2330, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !2341
tail call void @llvm.dbg.value(metadata double undef, metadata !2330, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64)), !dbg !2341
tail call void @llvm.dbg.value(metadata double undef, metadata !2330, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64)), !dbg !2341
tail call void @llvm.dbg.value(metadata double %64, metadata !2338, metadata !DIExpression()), !dbg !2341
tail call void @llvm.dbg.value(metadata double undef, metadata !2330, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 64)), !dbg !2341
tail call void @llvm.dbg.value(metadata double undef, metadata !2330, metadata !DIExpression(DW_OP_LLVM_fragment, 64, 64)), !dbg !2341
tail call void @llvm.dbg.value(metadata double undef, metadata !2330, metadata !DIExpression(DW_OP_LLVM_fragment, 128, 64)), !dbg !2341
tail call void @llvm.dbg.value(metadata double undef, metadata !2330, metadata !DIExpression(DW_OP_LLVM_fragment, 192, 64)), !dbg !2341
%47 = insertelement <2 x double> poison, double %46, i64 0, !dbg !2386
%48 = shufflevector <2 x double> %47, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2386
%49 = fmul <2 x double> %16, %48, !dbg !2386
%50 = insertelement <2 x double> poison, double %45, i64 0, !dbg !2387
%51 = shufflevector <2 x double> %50, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2387
%52 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %51, <2 x double> %15, <2 x double> %49), !dbg !2387
%53 = fmul <2 x double> %52, %52, !dbg !2388
%54 = extractelement <2 x double> %53, i64 1, !dbg !2388
%55 = extractelement <2 x double> %52, i64 0, !dbg !2389
%56 = tail call double @llvm.fmuladd.f64(double %55, double %55, double %54), !dbg !2389
%57 = getelementptr inbounds i8, ptr %0, i64 16, !dbg !2390
%58 = fmul <2 x double> %25, %48, !dbg !2391
%59 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %51, <2 x double> %24, <2 x double> %58), !dbg !2392
%60 = extractelement <2 x double> %59, i64 0, !dbg !2393
%61 = tail call double @llvm.fmuladd.f64(double %60, double %60, double %56), !dbg !2393
%62 = extractelement <2 x double> %59, i64 1, !dbg !2394
%63 = tail call double @llvm.fmuladd.f64(double %62, double %62, double %61), !dbg !2394
%64 = tail call double @llvm.sqrt.f64(double %63), !dbg !2395
%65 = insertelement <2 x double> poison, double %64, i64 0, !dbg !2396
%66 = shufflevector <2 x double> %65, <2 x double> poison, <2 x i32> zeroinitializer, !dbg !2396
%67 = fdiv <2 x double> %52, %66, !dbg !2396
%68 = fdiv <2 x double> %59, %66, !dbg !2397
store <2 x double> %67, ptr %0, align 8, !dbg !2390
store <2 x double> %68, ptr %57, align 8, !dbg !2390
br label %69
69: ; preds = %34, %35, %13, %10, %7
ret void, !dbg !2398
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(argmem: readwrite) uwtable
define internal fastcc void @quaternionToMatrix(ptr dead_on_unwind noalias nocapture writable writeonly sret(%struct.CATransform3D) align 8 %0, ptr nocapture noundef readonly byval(%struct._GSQuartzCoreQuaternion) align 8 %1) unnamed_addr #12 !dbg !2399 {
call void @llvm.dbg.declare(metadata ptr %1, metadata !2403, metadata !DIExpression()), !dbg !2409
call void @llvm.dbg.declare(metadata ptr %0, metadata !2404, metadata !DIExpression()), !dbg !2410
%3 = load double, ptr %1, align 8, !dbg !2411
tail call void @llvm.dbg.value(metadata double %3, metadata !2405, metadata !DIExpression()), !dbg !2412
%4 = getelementptr inbounds %struct._GSQuartzCoreQuaternion, ptr %1, i64 0, i32 1, !dbg !2413
tail call void @llvm.dbg.value(metadata double undef, metadata !2406, metadata !DIExpression()), !dbg !2412
tail call void @llvm.dbg.value(metadata double undef, metadata !2407, metadata !DIExpression()), !dbg !2412
%5 = getelementptr inbounds %struct._GSQuartzCoreQuaternion, ptr %1, i64 0, i32 3, !dbg !2414
%6 = load double, ptr %5, align 8, !dbg !2414
tail call void @llvm.dbg.value(metadata double %6, metadata !2408, metadata !DIExpression()), !dbg !2412
%7 = fmul double %6, 2.000000e+00, !dbg !2415
%8 = load <2 x double>, ptr %4, align 8, !dbg !2413
%9 = extractelement <2 x double> %8, i64 0, !dbg !2416
%10 = fmul double %9, 2.000000e+00, !dbg !2417
%11 = fneg double %10, !dbg !2418
%12 = tail call double @llvm.fmuladd.f64(double %11, double %9, double 1.000000e+00), !dbg !2418
%13 = insertelement <2 x double> %8, double %3, i64 0, !dbg !2419
%14 = fmul <2 x double> %13, <double 2.000000e+00, double -2.000000e+00>, !dbg !2419
%15 = extractelement <2 x double> %8, i64 1, !dbg !2420
%16 = fmul double %15, %7, !dbg !2421
%17 = insertelement <2 x double> poison, double %16, i64 0, !dbg !2419
%18 = insertelement <2 x double> %17, double %12, i64 1, !dbg !2419
%19 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %14, <2 x double> %8, <2 x double> %18), !dbg !2419
%20 = shufflevector <2 x double> %19, <2 x double> poison, <2 x i32> <i32 1, i32 0>, !dbg !2422
store <2 x double> %20, ptr %0, align 8, !dbg !2422
%21 = fmul double %9, %7, !dbg !2423
%22 = fneg double %21, !dbg !2424
%23 = extractelement <2 x double> %14, i64 0, !dbg !2424
%24 = tail call double @llvm.fmuladd.f64(double %23, double %15, double %22), !dbg !2424
%25 = getelementptr inbounds %struct.CATransform3D, ptr %0, i64 0, i32 2, !dbg !2425
store double %24, ptr %25, align 8, !dbg !2426
%26 = getelementptr inbounds %struct.CATransform3D, ptr %0, i64 0, i32 3, !dbg !2427
store double 0.000000e+00, ptr %26, align 8, !dbg !2428
%27 = fneg double %16, !dbg !2429
%28 = getelementptr inbounds %struct.CATransform3D, ptr %0, i64 0, i32 4, !dbg !2430
%29 = fneg double %23, !dbg !2431
%30 = tail call double @llvm.fmuladd.f64(double %29, double %3, double 1.000000e+00), !dbg !2431
%31 = insertelement <2 x double> poison, double %27, i64 0, !dbg !2429
%32 = insertelement <2 x double> %31, double %30, i64 1, !dbg !2429
%33 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %14, <2 x double> %8, <2 x double> %32), !dbg !2429
store <2 x double> %33, ptr %28, align 8, !dbg !2432
%34 = fmul double %3, %7, !dbg !2433
%35 = tail call double @llvm.fmuladd.f64(double %10, double %15, double %34), !dbg !2434
%36 = getelementptr inbounds %struct.CATransform3D, ptr %0, i64 0, i32 6, !dbg !2435
store double %35, ptr %36, align 8, !dbg !2436
%37 = getelementptr inbounds %struct.CATransform3D, ptr %0, i64 0, i32 7, !dbg !2437
store double 0.000000e+00, ptr %37, align 8, !dbg !2438
%38 = getelementptr inbounds %struct.CATransform3D, ptr %0, i64 0, i32 8, !dbg !2439
%39 = fneg double %34, !dbg !2420
%40 = insertelement <2 x double> %14, double %10, i64 1, !dbg !2440
%41 = shufflevector <2 x double> %8, <2 x double> poison, <2 x i32> <i32 1, i32 1>, !dbg !2440
%42 = insertelement <2 x double> poison, double %21, i64 0, !dbg !2440
%43 = insertelement <2 x double> %42, double %39, i64 1, !dbg !2440
%44 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %40, <2 x double> %41, <2 x double> %43), !dbg !2440
store <2 x double> %44, ptr %38, align 8, !dbg !2441
%45 = tail call double @llvm.fmuladd.f64(double %11, double %9, double %30), !dbg !2416
%46 = getelementptr inbounds %struct.CATransform3D, ptr %0, i64 0, i32 10, !dbg !2442
store double %45, ptr %46, align 8, !dbg !2443
%47 = getelementptr inbounds %struct.CATransform3D, ptr %0, i64 0, i32 11, !dbg !2444
%48 = getelementptr inbounds %struct.CATransform3D, ptr %0, i64 0, i32 15, !dbg !2445
tail call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(32) %47, i8 0, i64 32, i1 false), !dbg !2446
store double 1.000000e+00, ptr %48, align 8, !dbg !2447
ret void, !dbg !2448
}
declare !dbg !2449 ptr @NSClassFromString(ptr noundef) local_unnamed_addr #8
declare !dbg !2452 i64 @CGColorGetNumberOfComponents(ptr noundef) local_unnamed_addr #8
declare !dbg !2455 ptr @CGColorGetColorSpace(ptr noundef) local_unnamed_addr #8
declare !dbg !2462 ptr @CGColorGetComponents(ptr noundef) local_unnamed_addr #8
declare !dbg !2465 ptr @CGColorCreate(ptr noundef, ptr noundef) local_unnamed_addr #8
; Function Attrs: uwtable
define internal ptr @_i_CABasicAnimation__fromValue(ptr noundef %0, ptr noundef %1) #0 !dbg !2468 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2470, metadata !DIExpression()), !dbg !2472
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2471, metadata !DIExpression()), !dbg !2472
%3 = load i32, ptr @"__objc_ivar_offset_CABasicAnimation._fromValue.\01", align 4, !dbg !2473
%4 = zext i32 %3 to i64, !dbg !2473
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !2473
ret ptr %5, !dbg !2473
}
; Function Attrs: uwtable
define internal void @_i_CABasicAnimation__setFromValue_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !2474 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2476, metadata !DIExpression()), !dbg !2479
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2477, metadata !DIExpression()), !dbg !2479
tail call void @llvm.dbg.value(metadata ptr %2, metadata !2478, metadata !DIExpression()), !dbg !2479
%4 = load i32, ptr @"__objc_ivar_offset_CABasicAnimation._fromValue.\01", align 4, !dbg !2480
%5 = zext i32 %4 to i64, !dbg !2480
tail call void @objc_setProperty_atomic(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !2480
ret void, !dbg !2481
}
; Function Attrs: uwtable
define internal ptr @_i_CABasicAnimation__byValue(ptr noundef %0, ptr noundef %1) #0 !dbg !2482 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2484, metadata !DIExpression()), !dbg !2486
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2485, metadata !DIExpression()), !dbg !2486
%3 = load i32, ptr @"__objc_ivar_offset_CABasicAnimation._byValue.\01", align 4, !dbg !2487
%4 = zext i32 %3 to i64, !dbg !2487
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !2487
ret ptr %5, !dbg !2487
}
; Function Attrs: uwtable
define internal void @_i_CABasicAnimation__setByValue_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !2488 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2490, metadata !DIExpression()), !dbg !2493
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2491, metadata !DIExpression()), !dbg !2493
tail call void @llvm.dbg.value(metadata ptr %2, metadata !2492, metadata !DIExpression()), !dbg !2493
%4 = load i32, ptr @"__objc_ivar_offset_CABasicAnimation._byValue.\01", align 4, !dbg !2494
%5 = zext i32 %4 to i64, !dbg !2494
tail call void @objc_setProperty_atomic(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !2494
ret void, !dbg !2495
}
; Function Attrs: uwtable
define internal ptr @_i_CABasicAnimation__toValue(ptr noundef %0, ptr noundef %1) #0 !dbg !2496 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2498, metadata !DIExpression()), !dbg !2500
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2499, metadata !DIExpression()), !dbg !2500
%3 = load i32, ptr @"__objc_ivar_offset_CABasicAnimation._toValue.\01", align 4, !dbg !2501
%4 = zext i32 %3 to i64, !dbg !2501
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !2501
ret ptr %5, !dbg !2501
}
; Function Attrs: uwtable
define internal void @_i_CABasicAnimation__setToValue_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !2502 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2504, metadata !DIExpression()), !dbg !2507
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2505, metadata !DIExpression()), !dbg !2507
tail call void @llvm.dbg.value(metadata ptr %2, metadata !2506, metadata !DIExpression()), !dbg !2507
%4 = load i32, ptr @"__objc_ivar_offset_CABasicAnimation._toValue.\01", align 4, !dbg !2508
%5 = zext i32 %4 to i64, !dbg !2508
tail call void @objc_setProperty_atomic(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !2508
ret void, !dbg !2509
}
; Function Attrs: uwtable
define internal ptr @_i_CAKeyframeAnimation__calculationMode(ptr noundef %0, ptr noundef %1) #0 !dbg !2510 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2512, metadata !DIExpression()), !dbg !2515
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2514, metadata !DIExpression()), !dbg !2515
%3 = load i32, ptr @"__objc_ivar_offset_CAKeyframeAnimation._calculationMode.\01", align 4, !dbg !2516
%4 = zext i32 %3 to i64, !dbg !2516
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !2516
ret ptr %5, !dbg !2516
}
; Function Attrs: uwtable
define internal void @_i_CAKeyframeAnimation__setCalculationMode_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !2517 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2519, metadata !DIExpression()), !dbg !2522
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2520, metadata !DIExpression()), !dbg !2522
tail call void @llvm.dbg.value(metadata ptr %2, metadata !2521, metadata !DIExpression()), !dbg !2522
%4 = load i32, ptr @"__objc_ivar_offset_CAKeyframeAnimation._calculationMode.\01", align 4, !dbg !2523
%5 = zext i32 %4 to i64, !dbg !2523
tail call void @objc_setProperty_atomic_copy(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !2523
ret void, !dbg !2524
}
; Function Attrs: uwtable
define internal ptr @_i_CAKeyframeAnimation__values(ptr noundef %0, ptr noundef %1) #0 !dbg !2525 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2527, metadata !DIExpression()), !dbg !2529
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2528, metadata !DIExpression()), !dbg !2529
%3 = load i32, ptr @"__objc_ivar_offset_CAKeyframeAnimation._values.\01", align 4, !dbg !2530
%4 = zext i32 %3 to i64, !dbg !2530
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !2530
ret ptr %5, !dbg !2530
}
; Function Attrs: uwtable
define internal void @_i_CAKeyframeAnimation__setValues_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !2531 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2533, metadata !DIExpression()), !dbg !2536
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2534, metadata !DIExpression()), !dbg !2536
tail call void @llvm.dbg.value(metadata ptr %2, metadata !2535, metadata !DIExpression()), !dbg !2536
%4 = load i32, ptr @"__objc_ivar_offset_CAKeyframeAnimation._values.\01", align 4, !dbg !2537
%5 = zext i32 %4 to i64, !dbg !2537
tail call void @objc_setProperty_atomic_copy(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !2537
ret void, !dbg !2538
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal double @_i_CASpringAnimation__mass(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !2539 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2541, metadata !DIExpression()), !dbg !2544
tail call void @llvm.dbg.value(metadata ptr poison, metadata !2543, metadata !DIExpression()), !dbg !2544
%3 = load i32, ptr @__objc_ivar_offset_CASpringAnimation._mass.d, align 4, !dbg !2545
%4 = zext i32 %3 to i64, !dbg !2545
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !2545
%6 = load atomic double, ptr %5 unordered, align 8, !dbg !2545
ret double %6, !dbg !2546
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CASpringAnimation__setMass_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, double noundef %2) #5 !dbg !2547 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2549, metadata !DIExpression()), !dbg !2552
tail call void @llvm.dbg.value(metadata ptr poison, metadata !2550, metadata !DIExpression()), !dbg !2552
tail call void @llvm.dbg.value(metadata double %2, metadata !2551, metadata !DIExpression()), !dbg !2552
%4 = load i32, ptr @__objc_ivar_offset_CASpringAnimation._mass.d, align 4, !dbg !2553
%5 = zext i32 %4 to i64, !dbg !2553
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !2553
store atomic double %2, ptr %6 unordered, align 8, !dbg !2553
ret void, !dbg !2554
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal double @_i_CASpringAnimation__stiffness(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !2555 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2557, metadata !DIExpression()), !dbg !2559
tail call void @llvm.dbg.value(metadata ptr poison, metadata !2558, metadata !DIExpression()), !dbg !2559
%3 = load i32, ptr @__objc_ivar_offset_CASpringAnimation._stiffness.d, align 4, !dbg !2560
%4 = zext i32 %3 to i64, !dbg !2560
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !2560
%6 = load atomic double, ptr %5 unordered, align 8, !dbg !2560
ret double %6, !dbg !2561
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CASpringAnimation__setStiffness_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, double noundef %2) #5 !dbg !2562 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2564, metadata !DIExpression()), !dbg !2567
tail call void @llvm.dbg.value(metadata ptr poison, metadata !2565, metadata !DIExpression()), !dbg !2567
tail call void @llvm.dbg.value(metadata double %2, metadata !2566, metadata !DIExpression()), !dbg !2567
%4 = load i32, ptr @__objc_ivar_offset_CASpringAnimation._stiffness.d, align 4, !dbg !2568
%5 = zext i32 %4 to i64, !dbg !2568
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !2568
store atomic double %2, ptr %6 unordered, align 8, !dbg !2568
ret void, !dbg !2569
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal double @_i_CASpringAnimation__damping(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !2570 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2572, metadata !DIExpression()), !dbg !2574
tail call void @llvm.dbg.value(metadata ptr poison, metadata !2573, metadata !DIExpression()), !dbg !2574
%3 = load i32, ptr @__objc_ivar_offset_CASpringAnimation._damping.d, align 4, !dbg !2575
%4 = zext i32 %3 to i64, !dbg !2575
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !2575
%6 = load atomic double, ptr %5 unordered, align 8, !dbg !2575
ret double %6, !dbg !2576
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CASpringAnimation__setDamping_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, double noundef %2) #5 !dbg !2577 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2579, metadata !DIExpression()), !dbg !2582
tail call void @llvm.dbg.value(metadata ptr poison, metadata !2580, metadata !DIExpression()), !dbg !2582
tail call void @llvm.dbg.value(metadata double %2, metadata !2581, metadata !DIExpression()), !dbg !2582
%4 = load i32, ptr @__objc_ivar_offset_CASpringAnimation._damping.d, align 4, !dbg !2583
%5 = zext i32 %4 to i64, !dbg !2583
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !2583
store atomic double %2, ptr %6 unordered, align 8, !dbg !2583
ret void, !dbg !2584
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal double @_i_CASpringAnimation__initialVelocity(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !2585 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2587, metadata !DIExpression()), !dbg !2589
tail call void @llvm.dbg.value(metadata ptr poison, metadata !2588, metadata !DIExpression()), !dbg !2589
%3 = load i32, ptr @__objc_ivar_offset_CASpringAnimation._initialVelocity.d, align 4, !dbg !2590
%4 = zext i32 %3 to i64, !dbg !2590
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !2590
%6 = load atomic double, ptr %5 unordered, align 8, !dbg !2590
ret double %6, !dbg !2591
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) uwtable
define internal void @_i_CASpringAnimation__setInitialVelocity_(ptr nocapture noundef writeonly %0, ptr nocapture readnone %1, double noundef %2) #5 !dbg !2592 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2594, metadata !DIExpression()), !dbg !2597
tail call void @llvm.dbg.value(metadata ptr poison, metadata !2595, metadata !DIExpression()), !dbg !2597
tail call void @llvm.dbg.value(metadata double %2, metadata !2596, metadata !DIExpression()), !dbg !2597
%4 = load i32, ptr @__objc_ivar_offset_CASpringAnimation._initialVelocity.d, align 4, !dbg !2598
%5 = zext i32 %4 to i64, !dbg !2598
%6 = getelementptr inbounds i8, ptr %0, i64 %5, !dbg !2598
store atomic double %2, ptr %6 unordered, align 8, !dbg !2598
ret void, !dbg !2599
}
; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) uwtable
define internal double @_i_CASpringAnimation__settlingDuration(ptr nocapture noundef readonly %0, ptr nocapture readnone %1) #4 !dbg !2600 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2602, metadata !DIExpression()), !dbg !2604
tail call void @llvm.dbg.value(metadata ptr poison, metadata !2603, metadata !DIExpression()), !dbg !2604
%3 = load i32, ptr @__objc_ivar_offset_CASpringAnimation._settlingDuration.d, align 4, !dbg !2605
%4 = zext i32 %3 to i64, !dbg !2605
%5 = getelementptr inbounds i8, ptr %0, i64 %4, !dbg !2605
%6 = load atomic double, ptr %5 unordered, align 8, !dbg !2605
ret double %6, !dbg !2606
}
; Function Attrs: uwtable
define internal ptr @_i_CATransition__type(ptr noundef %0, ptr noundef %1) #0 !dbg !2607 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2609, metadata !DIExpression()), !dbg !2612
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2611, metadata !DIExpression()), !dbg !2612
%3 = load i32, ptr @"__objc_ivar_offset_CATransition._type.\01", align 4, !dbg !2613
%4 = zext i32 %3 to i64, !dbg !2613
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !2613
ret ptr %5, !dbg !2613
}
; Function Attrs: uwtable
define internal void @_i_CATransition__setType_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !2614 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2616, metadata !DIExpression()), !dbg !2619
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2617, metadata !DIExpression()), !dbg !2619
tail call void @llvm.dbg.value(metadata ptr %2, metadata !2618, metadata !DIExpression()), !dbg !2619
%4 = load i32, ptr @"__objc_ivar_offset_CATransition._type.\01", align 4, !dbg !2620
%5 = zext i32 %4 to i64, !dbg !2620
tail call void @objc_setProperty_atomic_copy(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !2620
ret void, !dbg !2621
}
; Function Attrs: uwtable
define internal ptr @_i_CATransition__subtype(ptr noundef %0, ptr noundef %1) #0 !dbg !2622 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2624, metadata !DIExpression()), !dbg !2626
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2625, metadata !DIExpression()), !dbg !2626
%3 = load i32, ptr @"__objc_ivar_offset_CATransition._subtype.\01", align 4, !dbg !2627
%4 = zext i32 %3 to i64, !dbg !2627
%5 = tail call ptr @objc_getProperty(ptr noundef %0, ptr noundef %1, i64 noundef %4, i1 noundef zeroext true), !dbg !2627
ret ptr %5, !dbg !2627
}
; Function Attrs: uwtable
define internal void @_i_CATransition__setSubtype_(ptr noundef %0, ptr noundef %1, ptr noundef %2) #0 !dbg !2628 {
tail call void @llvm.dbg.value(metadata ptr %0, metadata !2630, metadata !DIExpression()), !dbg !2633
tail call void @llvm.dbg.value(metadata ptr %1, metadata !2631, metadata !DIExpression()), !dbg !2633
tail call void @llvm.dbg.value(metadata ptr %2, metadata !2632, metadata !DIExpression()), !dbg !2633
%4 = load i32, ptr @"__objc_ivar_offset_CATransition._subtype.\01", align 4, !dbg !2634
%5 = zext i32 %4 to i64, !dbg !2634
tail call void @objc_setProperty_atomic_copy(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %5), !dbg !2634
ret void, !dbg !2635
}
; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare !dbg !2636 double @acos(double noundef) local_unnamed_addr #10
; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare !dbg !2637 double @sin(double noundef) local_unnamed_addr #10
define linkonce_odr hidden void @.objcv2_load_function() comdat {
tail call void @__objc_load(ptr nonnull @.objc_init)
ret void
}
declare void @__objc_load(ptr) local_unnamed_addr
; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare void @llvm.dbg.assign(metadata, metadata, metadata, metadata, metadata, metadata) #1
; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare void @llvm.dbg.value(metadata, metadata, metadata) #13
; Function Attrs: nofree nounwind willreturn memory(argmem: read)
declare i32 @bcmp(ptr nocapture, ptr nocapture, i64) local_unnamed_addr #14
; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.sqrt.f64(double) #13
; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare <2 x double> @llvm.fmuladd.v2f64(<2 x double>, <2 x double>, <2 x double>) #13
; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare <2 x double> @llvm.sqrt.v2f64(<2 x double>) #13
attributes #0 = { 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 nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #2 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #3 = { mustprogress nofree norecurse nosync nounwind willreturn memory(none) 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 = { mustprogress nofree norecurse nosync nounwind willreturn memory(read, inaccessiblemem: none) 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 #5 = { mustprogress nofree norecurse nosync nounwind willreturn memory(read, argmem: write, inaccessiblemem: none) 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 #6 = { mustprogress nofree nounwind willreturn memory(argmem: read) "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 #7 = { mustprogress nocallback nofree nounwind willreturn memory(argmem: write) }
attributes #8 = { "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 #9 = { mustprogress nocallback nofree nounwind willreturn memory(argmem: readwrite) }
attributes #10 = { mustprogress nofree nounwind willreturn memory(write) "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 #11 = { mustprogress nofree nounwind willreturn memory(write, argmem: readwrite) 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 #12 = { mustprogress nofree norecurse nosync nounwind willreturn memory(argmem: readwrite) 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 #13 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #14 = { nofree nounwind willreturn memory(argmem: read) }
attributes #15 = { nounwind }
attributes #16 = { memory(none) }
attributes #17 = { nounwind willreturn memory(read) }
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!757, !758, !759, !760, !761, !762}
!llvm.ident = !{!763}
!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "kCAAnimationDiscrete", scope: !2, file: !3, line: 39, type: !753, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_ObjC, file: !3, producer: "Ubuntu clang version 18.1.6 (++20240518023229+1118c2e05e67-1~exp1~20240518143321.130)", isOptimized: true, runtimeVersion: 2, emissionKind: FullDebug, retainedTypes: !4, globals: !531, splitDebugInlining: false, nameTableKind: None)
!3 = !DIFile(filename: "CAAnimation.m", directory: "/home/ethan/Projects/GNUstep/plaurent2/GNUstep-build-other/libs-quartzcore/Source", checksumkind: CSK_MD5, checksum: "b1455e114dabcca7258fdfa69e25c9f5")
!4 = !{!5, !109, !89, !18, !190, !191, !385, !440, !466, !486, !515}
!5 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !6, size: 64)
!6 = !DICompositeType(tag: DW_TAG_structure_type, name: "CALayer", scope: !3, file: !7, line: 65, size: 5504, elements: !8, runtimeLang: DW_LANG_ObjC)
!7 = !DIFile(filename: "./derived_src/QuartzCore/CALayer.h", directory: "/home/ethan/Projects/GNUstep/plaurent2/GNUstep-build-other/libs-quartzcore/Source", checksumkind: CSK_MD5, checksum: "b9d44d987acb94114ad5b8bd5cec550d")
!8 = !{!9, !17, !23, !24, !25, !26, !33, !55, !56, !58, !59, !80, !81, !83, !87, !88, !93, !95, !96, !102, !103, !104, !105, !106, !107, !108, !114, !115, !116, !122, !123, !124, !125, !126, !127, !128, !129, !130, !133, !134, !135, !136, !137, !138, !139, !140, !141, !142, !143, !144, !145, !146, !147, !148, !149, !150, !151, !152, !153, !154, !159, !160, !161, !162, !163, !164, !165, !166, !167, !168, !171, !172, !173, !174, !175, !176, !177, !178, !179, !180, !181, !186, !187}
!9 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !6, baseType: !10, extraData: i32 0)
!10 = !DICompositeType(tag: DW_TAG_structure_type, name: "NSObject", scope: !3, file: !11, line: 306, size: 64, elements: !12, runtimeLang: DW_LANG_ObjC)
!11 = !DIFile(filename: "/usr/GNUstep/System/Library/Headers/Foundation/NSObject.h", directory: "", checksumkind: CSK_MD5, checksum: "6de3e51bfe1b029c16d42a79535d147a")
!12 = !{!13}
!13 = !DIDerivedType(tag: DW_TAG_member, name: "isa", scope: !11, file: !11, line: 313, baseType: !14, size: 64, flags: DIFlagProtected)
!14 = !DIDerivedType(tag: DW_TAG_typedef, name: "Class", file: !3, baseType: !15)
!15 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !16, size: 64)
!16 = !DICompositeType(tag: DW_TAG_structure_type, name: "objc_class", file: !3, flags: DIFlagFwdDecl)
!17 = !DIObjCProperty(name: "delegate", file: !7, line: 135, attributes: 2316, type: !18)
!18 = !DIDerivedType(tag: DW_TAG_typedef, name: "id", file: !3, baseType: !19)
!19 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !20, size: 64)
!20 = !DICompositeType(tag: DW_TAG_structure_type, name: "objc_object", file: !3, elements: !21)
!21 = !{!22}
!22 = !DIDerivedType(tag: DW_TAG_member, name: "isa", scope: !20, file: !3, baseType: !15, size: 64)
!23 = !DIObjCProperty(name: "contents", file: !7, line: 136, attributes: 280, type: !18)
!24 = !DIObjCProperty(name: "layoutManager", file: !7, line: 137, attributes: 280, type: !18)
!25 = !DIObjCProperty(name: "superlayer", file: !7, line: 138, attributes: 65, type: !5)
!26 = !DIObjCProperty(name: "sublayers", file: !7, line: 139, attributes: 104, type: !27)
!27 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !28, size: 64)
!28 = !DICompositeType(tag: DW_TAG_structure_type, name: "NSArray", scope: !30, file: !29, line: 61, size: 64, elements: !31, runtimeLang: DW_LANG_ObjC)
!29 = !DIFile(filename: "/usr/GNUstep/System/Library/Headers/Foundation/NSArray.h", directory: "", checksumkind: CSK_MD5, checksum: "5b9076d1058df16b72310ad099f9c805")
!30 = !DIFile(filename: "./derived_src/QuartzCore/CAAnimation.h", directory: "/home/ethan/Projects/GNUstep/plaurent2/GNUstep-build-other/libs-quartzcore/Source", checksumkind: CSK_MD5, checksum: "d361c068f6bf41bc4849409dbf600e26")
!31 = !{!32}
!32 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !28, baseType: !10, extraData: i32 0)
!33 = !DIObjCProperty(name: "frame", file: !7, line: 140, attributes: 2316, type: !34)
!34 = !DIDerivedType(tag: DW_TAG_typedef, name: "CGRect", file: !35, line: 38, baseType: !36)
!35 = !DIFile(filename: "/usr/GNUstep/Local/Library/Headers/CoreGraphics/CGGeometry.h", directory: "", checksumkind: CSK_MD5, checksum: "b4f2dfdfcc97d2ef24c1a115d8dbbaa0")
!36 = !DIDerivedType(tag: DW_TAG_typedef, name: "NSRect", file: !37, line: 100, baseType: !38)
!37 = !DIFile(filename: "/usr/GNUstep/System/Library/Headers/Foundation/NSGeometry.h", directory: "", checksumkind: CSK_MD5, checksum: "6584fc3ff04a1b3973a3cf8578a80e64")
!38 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "_NSRect", file: !37, line: 101, size: 256, elements: !39)
!39 = !{!40, !49}
!40 = !DIDerivedType(tag: DW_TAG_member, name: "origin", scope: !38, file: !37, line: 103, baseType: !41, size: 128)
!41 = !DIDerivedType(tag: DW_TAG_typedef, name: "NSPoint", file: !37, line: 59, baseType: !42)
!42 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "_NSPoint", file: !37, line: 60, size: 128, elements: !43)
!43 = !{!44, !48}
!44 = !DIDerivedType(tag: DW_TAG_member, name: "x", scope: !42, file: !37, line: 62, baseType: !45, size: 64)
!45 = !DIDerivedType(tag: DW_TAG_typedef, name: "CGFloat", file: !46, line: 107, baseType: !47)
!46 = !DIFile(filename: "/usr/GNUstep/System/Library/Headers/Foundation/NSObjCRuntime.h", directory: "", checksumkind: CSK_MD5, checksum: "ffcac359ef2ca539d1845483b5253abd")
!47 = !DIBasicType(name: "double", size: 64, encoding: DW_ATE_float)
!48 = !DIDerivedType(tag: DW_TAG_member, name: "y", scope: !42, file: !37, line: 63, baseType: !45, size: 64, offset: 64)
!49 = !DIDerivedType(tag: DW_TAG_member, name: "size", scope: !38, file: !37, line: 104, baseType: !50, size: 128, offset: 128)
!50 = !DIDerivedType(tag: DW_TAG_typedef, name: "NSSize", file: !37, line: 79, baseType: !51)
!51 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "_NSSize", file: !37, line: 80, size: 128, elements: !52)
!52 = !{!53, !54}
!53 = !DIDerivedType(tag: DW_TAG_member, name: "width", scope: !51, file: !37, line: 82, baseType: !45, size: 64)
!54 = !DIDerivedType(tag: DW_TAG_member, name: "height", scope: !51, file: !37, line: 83, baseType: !45, size: 64, offset: 64)
!55 = !DIObjCProperty(name: "bounds", file: !7, line: 141, attributes: 2124, type: !34)
!56 = !DIObjCProperty(name: "anchorPoint", file: !7, line: 142, attributes: 2124, type: !57)
!57 = !DIDerivedType(tag: DW_TAG_typedef, name: "CGPoint", file: !35, line: 36, baseType: !41)
!58 = !DIObjCProperty(name: "position", file: !7, line: 143, attributes: 2124, type: !57)
!59 = !DIObjCProperty(name: "transform", file: !7, line: 144, attributes: 2124, type: !60)
!60 = !DIDerivedType(tag: DW_TAG_typedef, name: "CATransform3D", file: !61, line: 45, baseType: !62)
!61 = !DIFile(filename: "./derived_src/QuartzCore/CATransform3D.h", directory: "/home/ethan/Projects/GNUstep/plaurent2/GNUstep-build-other/libs-quartzcore/Source", checksumkind: CSK_MD5, checksum: "4b8cc88b8d974ff514b1b9c7198bbf45")
!62 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "CATransform3D", file: !61, line: 39, size: 1024, elements: !63)
!63 = !{!64, !65, !66, !67, !68, !69, !70, !71, !72, !73, !74, !75, !76, !77, !78, !79}
!64 = !DIDerivedType(tag: DW_TAG_member, name: "m11", scope: !62, file: !61, line: 41, baseType: !45, size: 64)
!65 = !DIDerivedType(tag: DW_TAG_member, name: "m12", scope: !62, file: !61, line: 41, baseType: !45, size: 64, offset: 64)
!66 = !DIDerivedType(tag: DW_TAG_member, name: "m13", scope: !62, file: !61, line: 41, baseType: !45, size: 64, offset: 128)
!67 = !DIDerivedType(tag: DW_TAG_member, name: "m14", scope: !62, file: !61, line: 41, baseType: !45, size: 64, offset: 192)
!68 = !DIDerivedType(tag: DW_TAG_member, name: "m21", scope: !62, file: !61, line: 42, baseType: !45, size: 64, offset: 256)
!69 = !DIDerivedType(tag: DW_TAG_member, name: "m22", scope: !62, file: !61, line: 42, baseType: !45, size: 64, offset: 320)
!70 = !DIDerivedType(tag: DW_TAG_member, name: "m23", scope: !62, file: !61, line: 42, baseType: !45, size: 64, offset: 384)
!71 = !DIDerivedType(tag: DW_TAG_member, name: "m24", scope: !62, file: !61, line: 42, baseType: !45, size: 64, offset: 448)
!72 = !DIDerivedType(tag: DW_TAG_member, name: "m31", scope: !62, file: !61, line: 43, baseType: !45, size: 64, offset: 512)
!73 = !DIDerivedType(tag: DW_TAG_member, name: "m32", scope: !62, file: !61, line: 43, baseType: !45, size: 64, offset: 576)
!74 = !DIDerivedType(tag: DW_TAG_member, name: "m33", scope: !62, file: !61, line: 43, baseType: !45, size: 64, offset: 640)
!75 = !DIDerivedType(tag: DW_TAG_member, name: "m34", scope: !62, file: !61, line: 43, baseType: !45, size: 64, offset: 704)
!76 = !DIDerivedType(tag: DW_TAG_member, name: "m41", scope: !62, file: !61, line: 44, baseType: !45, size: 64, offset: 768)
!77 = !DIDerivedType(tag: DW_TAG_member, name: "m42", scope: !62, file: !61, line: 44, baseType: !45, size: 64, offset: 832)
!78 = !DIDerivedType(tag: DW_TAG_member, name: "m43", scope: !62, file: !61, line: 44, baseType: !45, size: 64, offset: 896)
!79 = !DIDerivedType(tag: DW_TAG_member, name: "m44", scope: !62, file: !61, line: 44, baseType: !45, size: 64, offset: 960)
!80 = !DIObjCProperty(name: "sublayerTransform", file: !7, line: 145, attributes: 2124, type: !60)
!81 = !DIObjCProperty(name: "opacity", file: !7, line: 146, attributes: 2316, type: !82)
!82 = !DIBasicType(name: "float", size: 32, encoding: DW_ATE_float)
!83 = !DIObjCProperty(name: "opaque", file: !7, line: 147, getter: "isOpaque", attributes: 2318, type: !84)
!84 = !DIDerivedType(tag: DW_TAG_typedef, name: "BOOL", file: !85, line: 137, baseType: !86)
!85 = !DIFile(filename: "/usr/GNUstep/Local/Library/Headers/objc/runtime.h", directory: "")
!86 = !DIBasicType(name: "unsigned char", size: 8, encoding: DW_ATE_unsigned_char)
!87 = !DIObjCProperty(name: "shouldRasterize", file: !7, line: 148, attributes: 2316, type: !84)
!88 = !DIObjCProperty(name: "shadowColor", file: !7, line: 150, attributes: 2124, type: !89)
!89 = !DIDerivedType(tag: DW_TAG_typedef, name: "CGColorRef", file: !90, line: 34, baseType: !91)
!90 = !DIFile(filename: "/usr/GNUstep/Local/Library/Headers/CoreGraphics/CGColor.h", directory: "", checksumkind: CSK_MD5, checksum: "e39c6f5223e8cafa2fd07c9254756a43")
!91 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !92, size: 64)
!92 = !DICompositeType(tag: DW_TAG_structure_type, name: "CGColor", file: !90, line: 34, flags: DIFlagFwdDecl)
!93 = !DIObjCProperty(name: "shadowOffset", file: !7, line: 151, attributes: 2124, type: !94)
!94 = !DIDerivedType(tag: DW_TAG_typedef, name: "CGSize", file: !35, line: 37, baseType: !50)
!95 = !DIObjCProperty(name: "shadowOpacity", file: !7, line: 152, attributes: 2316, type: !82)
!96 = !DIObjCProperty(name: "shadowPath", file: !7, line: 153, attributes: 2124, type: !97)
!97 = !DIDerivedType(tag: DW_TAG_typedef, name: "CGPathRef", file: !98, line: 53, baseType: !99)
!98 = !DIFile(filename: "/usr/GNUstep/Local/Library/Headers/CoreGraphics/CGPath.h", directory: "", checksumkind: CSK_MD5, checksum: "2335fde0add7d70d4860916552618651")
!99 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !100, size: 64)
!100 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !101)
!101 = !DICompositeType(tag: DW_TAG_structure_type, name: "CGPath", file: !98, line: 53, flags: DIFlagFwdDecl)
!102 = !DIObjCProperty(name: "shadowRadius", file: !7, line: 154, attributes: 2316, type: !45)
!103 = !DIObjCProperty(name: "geometryFlipped", file: !7, line: 156, getter: "isGeometryFlipped", attributes: 2318, type: !84)
!104 = !DIObjCProperty(name: "backgroundColor", file: !7, line: 157, attributes: 2124, type: !89)
!105 = !DIObjCProperty(name: "masksToBounds", file: !7, line: 158, attributes: 2316, type: !84)
!106 = !DIObjCProperty(name: "contentsRect", file: !7, line: 159, attributes: 2316, type: !34)
!107 = !DIObjCProperty(name: "hidden", file: !7, line: 160, getter: "isHidden", attributes: 2318, type: !84)
!108 = !DIObjCProperty(name: "contentsGravity", file: !7, line: 161, attributes: 296, type: !109)
!109 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !110, size: 64)
!110 = !DICompositeType(tag: DW_TAG_structure_type, name: "NSString", scope: !3, file: !111, line: 517, size: 64, elements: !112, runtimeLang: DW_LANG_ObjC)
!111 = !DIFile(filename: "/usr/GNUstep/System/Library/Headers/Foundation/NSString.h", directory: "", checksumkind: CSK_MD5, checksum: "ebb0c8b096409923cf3af4bc9e0fc4ea")
!112 = !{!113}
!113 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !110, baseType: !10, extraData: i32 0)
!114 = !DIObjCProperty(name: "needsDisplayOnBoundsChange", file: !7, line: 162, attributes: 2316, type: !84)
!115 = !DIObjCProperty(name: "zPosition", file: !7, line: 163, attributes: 2316, type: !45)
!116 = !DIObjCProperty(name: "actions", file: !7, line: 164, attributes: 296, type: !117)
!117 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !118, size: 64)
!118 = !DICompositeType(tag: DW_TAG_structure_type, name: "NSDictionary", scope: !3, file: !119, line: 41, size: 64, elements: !120, runtimeLang: DW_LANG_ObjC)
!119 = !DIFile(filename: "/usr/GNUstep/System/Library/Headers/Foundation/NSDictionary.h", directory: "", checksumkind: CSK_MD5, checksum: "2b3ea6142e45876b7b99b5c5f27918ab")
!120 = !{!121}
!121 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !118, baseType: !10, extraData: i32 0)
!122 = !DIObjCProperty(name: "style", file: !7, line: 166, attributes: 296, type: !117)
!123 = !DIObjCProperty(name: "animationKeys", file: !7, line: 168, attributes: 273, type: !27)
!124 = !DIObjCProperty(name: "borderColor", file: !7, line: 212, attributes: 2124, type: !89)
!125 = !DIObjCProperty(name: "contentsScale", file: !7, line: 213, attributes: 2124, type: !45)
!126 = !DIObjCProperty(name: "anchorPointZ", file: !7, line: 214, attributes: 2124, type: !45)
!127 = !DIDerivedType(tag: DW_TAG_member, name: "_delegate", scope: !7, file: !7, line: 68, baseType: !18, size: 64, flags: DIFlagProtected)
!128 = !DIDerivedType(tag: DW_TAG_member, name: "_contents", scope: !7, file: !7, line: 69, baseType: !18, size: 64, flags: DIFlagProtected)
!129 = !DIDerivedType(tag: DW_TAG_member, name: "_layoutManager", scope: !7, file: !7, line: 70, baseType: !18, size: 64, flags: DIFlagProtected)
!130 = !DIDerivedType(tag: DW_TAG_member, name: "_renderer", scope: !7, file: !7, line: 71, baseType: !131, size: 64, flags: DIFlagProtected)
!131 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !132, size: 64)
!132 = !DICompositeType(tag: DW_TAG_structure_type, name: "CARenderer", file: !7, line: 52, flags: DIFlagFwdDecl, runtimeLang: DW_LANG_ObjC)
!133 = !DIDerivedType(tag: DW_TAG_member, name: "_superlayer", scope: !7, file: !7, line: 72, baseType: !5, size: 64, flags: DIFlagProtected)
!134 = !DIDerivedType(tag: DW_TAG_member, name: "_sublayers", scope: !7, file: !7, line: 73, baseType: !27, size: 64, flags: DIFlagProtected)
!135 = !DIDerivedType(tag: DW_TAG_member, name: "_frame", scope: !7, file: !7, line: 74, baseType: !34, size: 256, flags: DIFlagProtected)
!136 = !DIDerivedType(tag: DW_TAG_member, name: "_bounds", scope: !7, file: !7, line: 75, baseType: !34, size: 256, flags: DIFlagProtected)
!137 = !DIDerivedType(tag: DW_TAG_member, name: "_anchorPoint", scope: !7, file: !7, line: 76, baseType: !57, size: 128, flags: DIFlagProtected)
!138 = !DIDerivedType(tag: DW_TAG_member, name: "_position", scope: !7, file: !7, line: 77, baseType: !57, size: 128, flags: DIFlagProtected)
!139 = !DIDerivedType(tag: DW_TAG_member, name: "_transform", scope: !7, file: !7, line: 78, baseType: !60, size: 1024, flags: DIFlagProtected)
!140 = !DIDerivedType(tag: DW_TAG_member, name: "_sublayerTransform", scope: !7, file: !7, line: 79, baseType: !60, size: 1024, flags: DIFlagProtected)
!141 = !DIDerivedType(tag: DW_TAG_member, name: "_opacity", scope: !7, file: !7, line: 80, baseType: !82, size: 32, flags: DIFlagProtected)
!142 = !DIDerivedType(tag: DW_TAG_member, name: "_shouldRasterize", scope: !7, file: !7, line: 81, baseType: !84, size: 8, flags: DIFlagProtected)
!143 = !DIDerivedType(tag: DW_TAG_member, name: "_opaque", scope: !7, file: !7, line: 82, baseType: !84, size: 8, flags: DIFlagProtected)
!144 = !DIDerivedType(tag: DW_TAG_member, name: "_geometryFlipped", scope: !7, file: !7, line: 83, baseType: !84, size: 8, flags: DIFlagProtected)
!145 = !DIDerivedType(tag: DW_TAG_member, name: "_backgroundColor", scope: !7, file: !7, line: 84, baseType: !89, size: 64, flags: DIFlagProtected)
!146 = !DIDerivedType(tag: DW_TAG_member, name: "_masksToBounds", scope: !7, file: !7, line: 85, baseType: !84, size: 8, flags: DIFlagProtected)
!147 = !DIDerivedType(tag: DW_TAG_member, name: "_contentsRect", scope: !7, file: !7, line: 86, baseType: !34, size: 256, flags: DIFlagProtected)
!148 = !DIDerivedType(tag: DW_TAG_member, name: "_hidden", scope: !7, file: !7, line: 87, baseType: !84, size: 8, flags: DIFlagProtected)
!149 = !DIDerivedType(tag: DW_TAG_member, name: "_contentsGravity", scope: !7, file: !7, line: 88, baseType: !109, size: 64, flags: DIFlagProtected)
!150 = !DIDerivedType(tag: DW_TAG_member, name: "_needsDisplayOnBoundsChange", scope: !7, file: !7, line: 89, baseType: !84, size: 8, flags: DIFlagProtected)
!151 = !DIDerivedType(tag: DW_TAG_member, name: "_zPosition", scope: !7, file: !7, line: 90, baseType: !45, size: 64, flags: DIFlagProtected)
!152 = !DIDerivedType(tag: DW_TAG_member, name: "_actions", scope: !7, file: !7, line: 91, baseType: !117, size: 64, flags: DIFlagProtected)
!153 = !DIDerivedType(tag: DW_TAG_member, name: "_style", scope: !7, file: !7, line: 92, baseType: !117, size: 64, flags: DIFlagProtected)
!154 = !DIDerivedType(tag: DW_TAG_member, name: "_dynamicPropertyValueDict", scope: !7, file: !7, line: 93, baseType: !155, size: 64, flags: DIFlagProtected)
!155 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !156, size: 64)
!156 = !DICompositeType(tag: DW_TAG_structure_type, name: "NSMutableDictionary", scope: !3, file: !119, line: 137, size: 64, elements: !157, runtimeLang: DW_LANG_ObjC)
!157 = !{!158}
!158 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !156, baseType: !118, extraData: i32 0)
!159 = !DIDerivedType(tag: DW_TAG_member, name: "_presentationLayer", scope: !7, file: !7, line: 94, baseType: !18, size: 64, flags: DIFlagProtected)
!160 = !DIDerivedType(tag: DW_TAG_member, name: "_modelLayer", scope: !7, file: !7, line: 95, baseType: !18, size: 64, flags: DIFlagProtected)
!161 = !DIDerivedType(tag: DW_TAG_member, name: "_borderColor", scope: !7, file: !7, line: 96, baseType: !89, size: 64, flags: DIFlagProtected)
!162 = !DIDerivedType(tag: DW_TAG_member, name: "_contentsScale", scope: !7, file: !7, line: 97, baseType: !45, size: 64, flags: DIFlagProtected)
!163 = !DIDerivedType(tag: DW_TAG_member, name: "_shadowColor", scope: !7, file: !7, line: 99, baseType: !89, size: 64, flags: DIFlagProtected)
!164 = !DIDerivedType(tag: DW_TAG_member, name: "_shadowOffset", scope: !7, file: !7, line: 100, baseType: !94, size: 128, flags: DIFlagProtected)
!165 = !DIDerivedType(tag: DW_TAG_member, name: "_shadowOpacity", scope: !7, file: !7, line: 101, baseType: !82, size: 32, flags: DIFlagProtected)
!166 = !DIDerivedType(tag: DW_TAG_member, name: "_shadowPath", scope: !7, file: !7, line: 102, baseType: !97, size: 64, flags: DIFlagProtected)
!167 = !DIDerivedType(tag: DW_TAG_member, name: "_shadowRadius", scope: !7, file: !7, line: 103, baseType: !45, size: 64, flags: DIFlagProtected)
!168 = !DIDerivedType(tag: DW_TAG_member, name: "_beginTime", scope: !7, file: !7, line: 106, baseType: !169, size: 64, flags: DIFlagProtected)
!169 = !DIDerivedType(tag: DW_TAG_typedef, name: "CFTimeInterval", file: !170, line: 18, baseType: !47)
!170 = !DIFile(filename: "/usr/GNUstep/Local/Library/Headers/CoreFoundation/CFDate.h", directory: "", checksumkind: CSK_MD5, checksum: "1865f1d96f512f495b7d427996605a87")
!171 = !DIDerivedType(tag: DW_TAG_member, name: "_timeOffset", scope: !7, file: !7, line: 107, baseType: !169, size: 64, flags: DIFlagProtected)
!172 = !DIDerivedType(tag: DW_TAG_member, name: "_repeatCount", scope: !7, file: !7, line: 108, baseType: !82, size: 32, flags: DIFlagProtected)
!173 = !DIDerivedType(tag: DW_TAG_member, name: "_repeatDuration", scope: !7, file: !7, line: 109, baseType: !82, size: 32, flags: DIFlagProtected)
!174 = !DIDerivedType(tag: DW_TAG_member, name: "_autoreverses", scope: !7, file: !7, line: 110, baseType: !84, size: 8, flags: DIFlagProtected)
!175 = !DIDerivedType(tag: DW_TAG_member, name: "_fillMode", scope: !7, file: !7, line: 111, baseType: !109, size: 64, flags: DIFlagProtected)
!176 = !DIDerivedType(tag: DW_TAG_member, name: "_duration", scope: !7, file: !7, line: 112, baseType: !169, size: 64, flags: DIFlagProtected)
!177 = !DIDerivedType(tag: DW_TAG_member, name: "_speed", scope: !7, file: !7, line: 113, baseType: !82, size: 32, flags: DIFlagProtected)
!178 = !DIDerivedType(tag: DW_TAG_member, name: "_needsDisplay", scope: !7, file: !7, line: 116, baseType: !84, size: 8, flags: DIFlagProtected)
!179 = !DIDerivedType(tag: DW_TAG_member, name: "_needsLayout", scope: !7, file: !7, line: 117, baseType: !84, size: 8, flags: DIFlagProtected)
!180 = !DIDerivedType(tag: DW_TAG_member, name: "_animations", scope: !7, file: !7, line: 118, baseType: !155, size: 64, flags: DIFlagProtected)
!181 = !DIDerivedType(tag: DW_TAG_member, name: "_animationKeys", scope: !7, file: !7, line: 119, baseType: !182, size: 64, flags: DIFlagProtected)
!182 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !183, size: 64)
!183 = !DICompositeType(tag: DW_TAG_structure_type, name: "NSMutableArray", scope: !3, file: !29, line: 306, size: 64, elements: !184, runtimeLang: DW_LANG_ObjC)
!184 = !{!185}
!185 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !183, baseType: !28, extraData: i32 0)
!186 = !DIDerivedType(tag: DW_TAG_member, name: "_observedKeyPaths", scope: !7, file: !7, line: 120, baseType: !182, size: 64, flags: DIFlagProtected)
!187 = !DIDerivedType(tag: DW_TAG_member, name: "_backingStore", scope: !7, file: !7, line: 121, baseType: !188, size: 64, flags: DIFlagProtected)
!188 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !189, size: 64)
!189 = !DICompositeType(tag: DW_TAG_structure_type, name: "CABackingStore", file: !7, line: 62, flags: DIFlagFwdDecl, runtimeLang: DW_LANG_ObjC)
!190 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !45, size: 64)
!191 = !DICompositeType(tag: DW_TAG_structure_type, name: "CAAnimation", scope: !3, file: !30, line: 40, size: 768, flags: DIFlagObjcClassComplete, elements: !192, runtimeLang: DW_LANG_ObjC)
!192 = !{!193, !194, !200, !201, !216, !217, !218, !219, !220, !223, !225, !227, !229, !231, !233, !235, !237, !238, !245, !248, !249, !252, !256, !259, !262, !265, !274, !277, !328, !329, !332, !335, !338, !339, !342, !345, !348, !351, !354, !357, !358, !359, !362, !365, !366, !367, !368, !369, !372, !375, !376, !377, !378, !379, !382}
!193 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !191, baseType: !10, extraData: i32 0)
!194 = !DIObjCProperty(name: "layers", file: !3, line: 42, attributes: 280, type: !195)
!195 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !196, size: 64)
!196 = !DICompositeType(tag: DW_TAG_structure_type, name: "NSPointerArray", scope: !3, file: !197, line: 46, size: 64, elements: !198, runtimeLang: DW_LANG_ObjC)
!197 = !DIFile(filename: "/usr/GNUstep/System/Library/Headers/Foundation/NSPointerArray.h", directory: "", checksumkind: CSK_MD5, checksum: "9e94d81455e8f6ccce67ede11c77e684")
!198 = !{!199}
!199 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !196, baseType: !10, extraData: i32 0)
!200 = !DIObjCProperty(name: "delegate", file: !30, line: 63, attributes: 280, type: !18)
!201 = !DIObjCProperty(name: "timingFunction", file: !30, line: 64, attributes: 280, type: !202)
!202 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !203, size: 64)
!203 = !DICompositeType(tag: DW_TAG_structure_type, name: "CAMediaTimingFunction", scope: !30, file: !204, line: 38, size: 704, elements: !205, runtimeLang: DW_LANG_ObjC)
!204 = !DIFile(filename: "./derived_src/QuartzCore/CAMediaTimingFunction.h", directory: "/home/ethan/Projects/GNUstep/plaurent2/GNUstep-build-other/libs-quartzcore/Source", checksumkind: CSK_MD5, checksum: "c1875aec52d235fd119fbce50788dc80")
!205 = !{!206, !207, !208, !209, !210, !211, !215}
!206 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !203, baseType: !10, extraData: i32 0)
!207 = !DIDerivedType(tag: DW_TAG_member, name: "_c1x", scope: !204, file: !204, line: 40, baseType: !82, size: 32, flags: DIFlagProtected)
!208 = !DIDerivedType(tag: DW_TAG_member, name: "_c1y", scope: !204, file: !204, line: 40, baseType: !82, size: 32, flags: DIFlagProtected)
!209 = !DIDerivedType(tag: DW_TAG_member, name: "_c2x", scope: !204, file: !204, line: 41, baseType: !82, size: 32, flags: DIFlagProtected)
!210 = !DIDerivedType(tag: DW_TAG_member, name: "_c2y", scope: !204, file: !204, line: 41, baseType: !82, size: 32, flags: DIFlagProtected)
!211 = !DIDerivedType(tag: DW_TAG_member, name: "_coefficientsX", scope: !204, file: !204, line: 43, baseType: !212, size: 256, flags: DIFlagProtected)
!212 = !DICompositeType(tag: DW_TAG_array_type, baseType: !45, size: 256, elements: !213)
!213 = !{!214}
!214 = !DISubrange(count: 4)
!215 = !DIDerivedType(tag: DW_TAG_member, name: "_coefficientsY", scope: !204, file: !204, line: 44, baseType: !212, size: 256, flags: DIFlagProtected)
!216 = !DIObjCProperty(name: "removedOnCompletion", file: !30, line: 65, attributes: 2316, type: !84)
!217 = !DIDerivedType(tag: DW_TAG_member, name: "_delegate", scope: !30, file: !30, line: 43, baseType: !18, size: 64, flags: DIFlagProtected, extraData: !200)
!218 = !DIDerivedType(tag: DW_TAG_member, name: "_timingFunction", scope: !30, file: !30, line: 44, baseType: !202, size: 64, flags: DIFlagProtected, extraData: !201)
!219 = !DIDerivedType(tag: DW_TAG_member, name: "_removedOnCompletion", scope: !30, file: !30, line: 45, baseType: !84, size: 8, flags: DIFlagProtected, extraData: !216)
!220 = !DIDerivedType(tag: DW_TAG_member, name: "_beginTime", scope: !30, file: !30, line: 48, baseType: !169, size: 64, flags: DIFlagProtected, extraData: !221)
!221 = !DIObjCProperty(name: "beginTime", file: !222, line: 33, attributes: 2316, type: !169)
!222 = !DIFile(filename: "./derived_src/QuartzCore/CAMediaTiming.h", directory: "/home/ethan/Projects/GNUstep/plaurent2/GNUstep-build-other/libs-quartzcore/Source", checksumkind: CSK_MD5, checksum: "f2aa8b2d674ce659d1418aa1dd04f78e")
!223 = !DIDerivedType(tag: DW_TAG_member, name: "_timeOffset", scope: !30, file: !30, line: 49, baseType: !169, size: 64, flags: DIFlagProtected, extraData: !224)
!224 = !DIObjCProperty(name: "timeOffset", file: !222, line: 34, attributes: 2316, type: !169)
!225 = !DIDerivedType(tag: DW_TAG_member, name: "_repeatCount", scope: !30, file: !30, line: 50, baseType: !82, size: 32, flags: DIFlagProtected, extraData: !226)
!226 = !DIObjCProperty(name: "repeatCount", file: !222, line: 35, attributes: 2316, type: !82)
!227 = !DIDerivedType(tag: DW_TAG_member, name: "_repeatDuration", scope: !30, file: !30, line: 51, baseType: !82, size: 32, flags: DIFlagProtected, extraData: !228)
!228 = !DIObjCProperty(name: "repeatDuration", file: !222, line: 36, attributes: 2316, type: !82)
!229 = !DIDerivedType(tag: DW_TAG_member, name: "_autoreverses", scope: !30, file: !30, line: 52, baseType: !84, size: 8, flags: DIFlagProtected, extraData: !230)
!230 = !DIObjCProperty(name: "autoreverses", file: !222, line: 37, attributes: 2316, type: !84)
!231 = !DIDerivedType(tag: DW_TAG_member, name: "_fillMode", scope: !30, file: !30, line: 53, baseType: !109, size: 64, flags: DIFlagProtected, extraData: !232)
!232 = !DIObjCProperty(name: "fillMode", file: !222, line: 38, attributes: 296, type: !109)
!233 = !DIDerivedType(tag: DW_TAG_member, name: "_duration", scope: !30, file: !30, line: 54, baseType: !169, size: 64, flags: DIFlagProtected, extraData: !234)
!234 = !DIObjCProperty(name: "duration", file: !222, line: 39, attributes: 2316, type: !169)
!235 = !DIDerivedType(tag: DW_TAG_member, name: "_speed", scope: !30, file: !30, line: 55, baseType: !82, size: 32, flags: DIFlagProtected, extraData: !236)
!236 = !DIObjCProperty(name: "speed", file: !222, line: 40, attributes: 2316, type: !82)
!237 = !DIDerivedType(tag: DW_TAG_member, name: "_layers", scope: !30, file: !30, line: 56, baseType: !195, size: 64, flags: DIFlagProtected, extraData: !194)
!238 = !DISubprogram(name: "-[CAAnimation setBeginTime:]", scope: !191, file: !30, line: 61, type: !239, scopeLine: 61, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!239 = !DISubroutineType(types: !240)
!240 = !{null, !241, !242, !169}
!241 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !191, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!242 = !DIDerivedType(tag: DW_TAG_typedef, name: "SEL", file: !3, baseType: !243, flags: DIFlagArtificial)
!243 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !244, size: 64)
!244 = !DICompositeType(tag: DW_TAG_structure_type, name: "objc_selector", file: !3, flags: DIFlagFwdDecl)
!245 = !DISubprogram(name: "-[CAAnimation handleAddedToLayer:]", scope: !191, file: !30, line: 67, type: !246, scopeLine: 67, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!246 = !DISubroutineType(types: !247)
!247 = !{null, !241, !242, !5}
!248 = !DISubprogram(name: "-[CAAnimation handleRemovedFromLayer:]", scope: !191, file: !30, line: 80, type: !246, scopeLine: 80, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!249 = !DISubprogram(name: "-[CAAnimation takeNoteThatNextFrameTimeChanged]", scope: !191, file: !30, line: 91, type: !250, scopeLine: 91, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!250 = !DISubroutineType(types: !251)
!251 = !{null, !241, !242}
!252 = !DISubprogram(name: "+[CAAnimation animation]", scope: !191, file: !30, line: 100, type: !253, scopeLine: 100, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!253 = !DISubroutineType(types: !254)
!254 = !{!18, !255, !242}
!255 = !DIDerivedType(tag: DW_TAG_typedef, name: "Class", file: !3, baseType: !15, flags: DIFlagArtificial | DIFlagObjectPointer)
!256 = !DISubprogram(name: "+[CAAnimation defaultValueForKey:]", scope: !191, file: !30, line: 105, type: !257, scopeLine: 105, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!257 = !DISubroutineType(types: !258)
!258 = !{!18, !255, !242, !109}
!259 = !DISubprogram(name: "+[CAAnimation shouldArchiveValueForKey:]", scope: !191, file: !30, line: 141, type: !260, scopeLine: 141, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!260 = !DISubroutineType(types: !261)
!261 = !{!84, !255, !242, !109}
!262 = !DISubprogram(name: "-[CAAnimation init]", scope: !191, file: !30, line: 147, type: !263, scopeLine: 147, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!263 = !DISubroutineType(types: !264)
!264 = !{!18, !241, !242}
!265 = !DISubprogram(name: "-[CAAnimation initWithCoder:]", scope: !191, file: !30, line: 172, type: !266, scopeLine: 172, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!266 = !DISubroutineType(types: !267)
!267 = !{!18, !241, !242, !268}
!268 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !269, size: 64)
!269 = !DICompositeType(tag: DW_TAG_structure_type, name: "NSCoder", scope: !3, file: !270, line: 52, size: 64, elements: !271, runtimeLang: DW_LANG_ObjC)
!270 = !DIFile(filename: "/usr/GNUstep/System/Library/Headers/Foundation/NSCoder.h", directory: "", checksumkind: CSK_MD5, checksum: "63b7df251b2dbebcb9f347d6abe7cf00")
!271 = !{!272, !273}
!272 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !269, baseType: !10, extraData: i32 0)
!273 = !DIObjCProperty(name: "requiresSecureCoding", file: !270, line: 375, attributes: 2124, type: !84)
!274 = !DISubprogram(name: "-[CAAnimation encodeWithCoder:]", scope: !191, file: !30, line: 193, type: !275, scopeLine: 193, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!275 = !DISubroutineType(types: !276)
!276 = !{null, !241, !242, !268}
!277 = !DISubprogram(name: "-[CAAnimation copyWithZone:]", scope: !191, file: !30, line: 207, type: !278, scopeLine: 207, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!278 = !DISubroutineType(types: !279)
!279 = !{!18, !241, !242, !280}
!280 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !281, size: 64)
!281 = !DIDerivedType(tag: DW_TAG_typedef, name: "NSZone", file: !282, line: 55, baseType: !283)
!282 = !DIFile(filename: "/usr/GNUstep/System/Library/Headers/Foundation/NSZone.h", directory: "", checksumkind: CSK_MD5, checksum: "c7c86238ca7895af100f638c93206bed")
!283 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "_NSZone", file: !282, line: 65, size: 640, elements: !284)
!284 = !{!285, !294, !298, !302, !306, !310, !314, !325, !326, !327}
!285 = !DIDerivedType(tag: DW_TAG_member, name: "malloc", scope: !283, file: !282, line: 68, baseType: !286, size: 64)
!286 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !287, size: 64)
!287 = !DISubroutineType(types: !288)
!288 = !{!289, !290, !291}
!289 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: null, size: 64)
!290 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !283, size: 64)
!291 = !DIDerivedType(tag: DW_TAG_typedef, name: "size_t", file: !292, line: 18, baseType: !293)
!292 = !DIFile(filename: "/usr/lib/llvm-18/lib/clang/18/include/__stddef_size_t.h", directory: "", checksumkind: CSK_MD5, checksum: "2c44e821a2b1951cde2eb0fb2e656867")
!293 = !DIBasicType(name: "unsigned long", size: 64, encoding: DW_ATE_unsigned)
!294 = !DIDerivedType(tag: DW_TAG_member, name: "realloc", scope: !283, file: !282, line: 69, baseType: !295, size: 64, offset: 64)
!295 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !296, size: 64)
!296 = !DISubroutineType(types: !297)
!297 = !{!289, !290, !289, !291}
!298 = !DIDerivedType(tag: DW_TAG_member, name: "free", scope: !283, file: !282, line: 70, baseType: !299, size: 64, offset: 128)
!299 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !300, size: 64)
!300 = !DISubroutineType(types: !301)
!301 = !{null, !290, !289}
!302 = !DIDerivedType(tag: DW_TAG_member, name: "recycle", scope: !283, file: !282, line: 71, baseType: !303, size: 64, offset: 192)
!303 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !304, size: 64)
!304 = !DISubroutineType(types: !305)
!305 = !{null, !290}
!306 = !DIDerivedType(tag: DW_TAG_member, name: "check", scope: !283, file: !282, line: 72, baseType: !307, size: 64, offset: 256)
!307 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !308, size: 64)
!308 = !DISubroutineType(types: !309)
!309 = !{!84, !290}
!310 = !DIDerivedType(tag: DW_TAG_member, name: "lookup", scope: !283, file: !282, line: 73, baseType: !311, size: 64, offset: 320)
!311 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !312, size: 64)
!312 = !DISubroutineType(types: !313)
!313 = !{!84, !290, !289}
!314 = !DIDerivedType(tag: DW_TAG_member, name: "stats", scope: !283, file: !282, line: 74, baseType: !315, size: 64, offset: 384)
!315 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !316, size: 64)
!316 = !DISubroutineType(types: !317)
!317 = !{!318, !290}
!318 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "NSZoneStats", file: !282, line: 210, size: 320, elements: !319)
!319 = !{!320, !321, !322, !323, !324}
!320 = !DIDerivedType(tag: DW_TAG_member, name: "bytes_total", scope: !318, file: !282, line: 212, baseType: !291, size: 64)
!321 = !DIDerivedType(tag: DW_TAG_member, name: "chunks_used", scope: !318, file: !282, line: 213, baseType: !291, size: 64, offset: 64)
!322 = !DIDerivedType(tag: DW_TAG_member, name: "bytes_used", scope: !318, file: !282, line: 214, baseType: !291, size: 64, offset: 128)
!323 = !DIDerivedType(tag: DW_TAG_member, name: "chunks_free", scope: !318, file: !282, line: 215, baseType: !291, size: 64, offset: 192)
!324 = !DIDerivedType(tag: DW_TAG_member, name: "bytes_free", scope: !318, file: !282, line: 216, baseType: !291, size: 64, offset: 256)
!325 = !DIDerivedType(tag: DW_TAG_member, name: "gran", scope: !283, file: !282, line: 76, baseType: !291, size: 64, offset: 448)
!326 = !DIDerivedType(tag: DW_TAG_member, name: "name", scope: !283, file: !282, line: 77, baseType: !109, size: 64, offset: 512)
!327 = !DIDerivedType(tag: DW_TAG_member, name: "next", scope: !283, file: !282, line: 78, baseType: !280, size: 64, offset: 576)
!328 = !DISubprogram(name: "-[CAAnimation dealloc]", scope: !191, file: !30, line: 229, type: !250, scopeLine: 229, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!329 = !DISubprogram(name: "-[CAAnimation activeTimeWithTimeAuthorityLocalTime:]", scope: !191, file: !30, line: 238, type: !330, scopeLine: 238, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!330 = !DISubroutineType(types: !331)
!331 = !{!169, !241, !242, !169}
!332 = !DISubprogram(name: "-[CAAnimation localTimeWithTimeAuthority:]", scope: !191, file: !30, line: 250, type: !333, scopeLine: 250, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!333 = !DISubroutineType(types: !334)
!334 = !{!169, !241, !242, !18}
!335 = !DISubprogram(name: "-[CAAnimation runActionForKey:object:arguments:]", scope: !191, file: !30, line: 268, type: !336, scopeLine: 268, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!336 = !DISubroutineType(types: !337)
!337 = !{null, !241, !242, !109, !18, !117}
!338 = !DISubprogram(name: "-[CAAnimation delegate]", scope: !191, file: !30, line: 47, type: !263, scopeLine: 47, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!339 = !DISubprogram(name: "-[CAAnimation setDelegate:]", scope: !191, file: !30, line: 47, type: !340, scopeLine: 47, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!340 = !DISubroutineType(types: !341)
!341 = !{null, !241, !242, !18}
!342 = !DISubprogram(name: "-[CAAnimation timingFunction]", scope: !191, file: !30, line: 48, type: !343, scopeLine: 48, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!343 = !DISubroutineType(types: !344)
!344 = !{!202, !241, !242}
!345 = !DISubprogram(name: "-[CAAnimation setTimingFunction:]", scope: !191, file: !30, line: 48, type: !346, scopeLine: 48, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!346 = !DISubroutineType(types: !347)
!347 = !{null, !241, !242, !202}
!348 = !DISubprogram(name: "-[CAAnimation removedOnCompletion]", scope: !191, file: !30, line: 49, type: !349, scopeLine: 49, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!349 = !DISubroutineType(types: !350)
!350 = !{!84, !241, !242}
!351 = !DISubprogram(name: "-[CAAnimation setRemovedOnCompletion:]", scope: !191, file: !30, line: 49, type: !352, scopeLine: 49, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!352 = !DISubroutineType(types: !353)
!353 = !{null, !241, !242, !84}
!354 = !DISubprogram(name: "-[CAAnimation beginTime]", scope: !191, file: !30, line: 51, type: !355, scopeLine: 51, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!355 = !DISubroutineType(types: !356)
!356 = !{!169, !241, !242}
!357 = !DISubprogram(name: "-[CAAnimation timeOffset]", scope: !191, file: !30, line: 52, type: !355, scopeLine: 52, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!358 = !DISubprogram(name: "-[CAAnimation setTimeOffset:]", scope: !191, file: !30, line: 52, type: !239, scopeLine: 52, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!359 = !DISubprogram(name: "-[CAAnimation repeatCount]", scope: !191, file: !30, line: 53, type: !360, scopeLine: 53, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!360 = !DISubroutineType(types: !361)
!361 = !{!82, !241, !242}
!362 = !DISubprogram(name: "-[CAAnimation setRepeatCount:]", scope: !191, file: !30, line: 53, type: !363, scopeLine: 53, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!363 = !DISubroutineType(types: !364)
!364 = !{null, !241, !242, !82}
!365 = !DISubprogram(name: "-[CAAnimation repeatDuration]", scope: !191, file: !30, line: 54, type: !360, scopeLine: 54, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!366 = !DISubprogram(name: "-[CAAnimation setRepeatDuration:]", scope: !191, file: !30, line: 54, type: !363, scopeLine: 54, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!367 = !DISubprogram(name: "-[CAAnimation autoreverses]", scope: !191, file: !30, line: 55, type: !349, scopeLine: 55, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!368 = !DISubprogram(name: "-[CAAnimation setAutoreverses:]", scope: !191, file: !30, line: 55, type: !352, scopeLine: 55, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!369 = !DISubprogram(name: "-[CAAnimation fillMode]", scope: !191, file: !30, line: 56, type: !370, scopeLine: 56, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!370 = !DISubroutineType(types: !371)
!371 = !{!109, !241, !242}
!372 = !DISubprogram(name: "-[CAAnimation setFillMode:]", scope: !191, file: !30, line: 56, type: !373, scopeLine: 56, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!373 = !DISubroutineType(types: !374)
!374 = !{null, !241, !242, !109}
!375 = !DISubprogram(name: "-[CAAnimation duration]", scope: !191, file: !30, line: 57, type: !355, scopeLine: 57, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!376 = !DISubprogram(name: "-[CAAnimation setDuration:]", scope: !191, file: !30, line: 57, type: !239, scopeLine: 57, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!377 = !DISubprogram(name: "-[CAAnimation speed]", scope: !191, file: !30, line: 58, type: !360, scopeLine: 58, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!378 = !DISubprogram(name: "-[CAAnimation setSpeed:]", scope: !191, file: !30, line: 58, type: !363, scopeLine: 58, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!379 = !DISubprogram(name: "-[CAAnimation layers]", scope: !191, file: !30, line: 59, type: !380, scopeLine: 59, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!380 = !DISubroutineType(types: !381)
!381 = !{!195, !241, !242}
!382 = !DISubprogram(name: "-[CAAnimation setLayers:]", scope: !191, file: !30, line: 59, type: !383, scopeLine: 59, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!383 = !DISubroutineType(types: !384)
!384 = !{null, !241, !242, !195}
!385 = !DICompositeType(tag: DW_TAG_structure_type, name: "CAPropertyAnimation", scope: !3, file: !30, line: 71, size: 960, flags: DIFlagObjcClassComplete, elements: !386, runtimeLang: DW_LANG_ObjC)
!386 = !{!387, !388, !389, !390, !391, !394, !395, !396, !397, !398, !402, !405, !408, !411, !414, !417, !420, !423, !426, !427, !428, !431, !434, !437}
!387 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !385, baseType: !191, extraData: i32 0)
!388 = !DIObjCProperty(name: "additive", file: !30, line: 81, getter: "isAdditive", attributes: 2318, type: !84)
!389 = !DIObjCProperty(name: "cumulative", file: !30, line: 82, getter: "isCumulative", attributes: 2318, type: !84)
!390 = !DIObjCProperty(name: "keyPath", file: !30, line: 83, attributes: 280, type: !109)
!391 = !DIObjCProperty(name: "valueFunction", file: !30, line: 84, attributes: 280, type: !392)
!392 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !393, size: 64)
!393 = !DICompositeType(tag: DW_TAG_structure_type, name: "CAValueFunction", file: !30, line: 35, flags: DIFlagFwdDecl, runtimeLang: DW_LANG_ObjC)
!394 = !DIDerivedType(tag: DW_TAG_member, name: "_additive", scope: !30, file: !30, line: 74, baseType: !84, size: 8, flags: DIFlagProtected, extraData: !388)
!395 = !DIDerivedType(tag: DW_TAG_member, name: "_cumulative", scope: !30, file: !30, line: 75, baseType: !84, size: 8, flags: DIFlagProtected, extraData: !389)
!396 = !DIDerivedType(tag: DW_TAG_member, name: "_keyPath", scope: !30, file: !30, line: 76, baseType: !109, size: 64, flags: DIFlagProtected, extraData: !390)
!397 = !DIDerivedType(tag: DW_TAG_member, name: "_valueFunction", scope: !30, file: !30, line: 77, baseType: !392, size: 64, flags: DIFlagProtected, extraData: !391)
!398 = !DISubprogram(name: "-[CAPropertyAnimation initWithKeyPath:]", scope: !385, file: !30, line: 318, type: !399, scopeLine: 318, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!399 = !DISubroutineType(types: !400)
!400 = !{!18, !401, !242, !109}
!401 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !385, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!402 = !DISubprogram(name: "-[CAPropertyAnimation initWithCoder:]", scope: !385, file: !30, line: 340, type: !403, scopeLine: 340, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!403 = !DISubroutineType(types: !404)
!404 = !{!18, !401, !242, !268}
!405 = !DISubprogram(name: "-[CAPropertyAnimation encodeWithCoder:]", scope: !385, file: !30, line: 359, type: !406, scopeLine: 359, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!406 = !DISubroutineType(types: !407)
!407 = !{null, !401, !242, !268}
!408 = !DISubprogram(name: "-[CAPropertyAnimation copyWithZone:]", scope: !385, file: !30, line: 371, type: !409, scopeLine: 371, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!409 = !DISubroutineType(types: !410)
!410 = !{!18, !401, !242, !280}
!411 = !DISubprogram(name: "-[CAPropertyAnimation dealloc]", scope: !385, file: !30, line: 391, type: !412, scopeLine: 391, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!412 = !DISubroutineType(types: !413)
!413 = !{null, !401, !242}
!414 = !DISubprogram(name: "-[CAPropertyAnimation applyToLayer:]", scope: !385, file: !30, line: 398, type: !415, scopeLine: 398, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!415 = !DISubroutineType(types: !416)
!416 = !{null, !401, !242, !5}
!417 = !DISubprogram(name: "-[CAPropertyAnimation calculatedAnimationValueAtTime:onLayer:]", scope: !385, file: !30, line: 422, type: !418, scopeLine: 422, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!418 = !DISubroutineType(types: !419)
!419 = !{!18, !401, !242, !169, !5}
!420 = !DISubprogram(name: "-[CAPropertyAnimation isAdditive]", scope: !385, file: !30, line: 285, type: !421, scopeLine: 285, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!421 = !DISubroutineType(types: !422)
!422 = !{!84, !401, !242}
!423 = !DISubprogram(name: "-[CAPropertyAnimation setAdditive:]", scope: !385, file: !30, line: 285, type: !424, scopeLine: 285, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!424 = !DISubroutineType(types: !425)
!425 = !{null, !401, !242, !84}
!426 = !DISubprogram(name: "-[CAPropertyAnimation isCumulative]", scope: !385, file: !30, line: 286, type: !421, scopeLine: 286, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!427 = !DISubprogram(name: "-[CAPropertyAnimation setCumulative:]", scope: !385, file: !30, line: 286, type: !424, scopeLine: 286, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!428 = !DISubprogram(name: "-[CAPropertyAnimation keyPath]", scope: !385, file: !30, line: 287, type: !429, scopeLine: 287, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!429 = !DISubroutineType(types: !430)
!430 = !{!109, !401, !242}
!431 = !DISubprogram(name: "-[CAPropertyAnimation setKeyPath:]", scope: !385, file: !30, line: 287, type: !432, scopeLine: 287, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!432 = !DISubroutineType(types: !433)
!433 = !{null, !401, !242, !109}
!434 = !DISubprogram(name: "-[CAPropertyAnimation valueFunction]", scope: !385, file: !30, line: 288, type: !435, scopeLine: 288, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!435 = !DISubroutineType(types: !436)
!436 = !{!392, !401, !242}
!437 = !DISubprogram(name: "-[CAPropertyAnimation setValueFunction:]", scope: !385, file: !30, line: 288, type: !438, scopeLine: 288, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!438 = !DISubroutineType(types: !439)
!439 = !{null, !401, !242, !392}
!440 = !DICompositeType(tag: DW_TAG_structure_type, name: "CABasicAnimation", scope: !3, file: !30, line: 90, size: 1152, flags: DIFlagObjcClassComplete, elements: !441, runtimeLang: DW_LANG_ObjC)
!441 = !{!442, !443, !444, !445, !446, !447, !448, !449, !453, !456, !459, !462, !463, !464, !465}
!442 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !440, baseType: !385, extraData: i32 0)
!443 = !DIObjCProperty(name: "fromValue", file: !30, line: 96, attributes: 280, type: !18)
!444 = !DIObjCProperty(name: "toValue", file: !30, line: 96, attributes: 280, type: !18)
!445 = !DIObjCProperty(name: "byValue", file: !30, line: 96, attributes: 280, type: !18)
!446 = !DIDerivedType(tag: DW_TAG_member, name: "_fromValue", scope: !30, file: !30, line: 93, baseType: !18, size: 64, flags: DIFlagProtected, extraData: !443)
!447 = !DIDerivedType(tag: DW_TAG_member, name: "_toValue", scope: !30, file: !30, line: 93, baseType: !18, size: 64, flags: DIFlagProtected, extraData: !444)
!448 = !DIDerivedType(tag: DW_TAG_member, name: "_byValue", scope: !30, file: !30, line: 93, baseType: !18, size: 64, flags: DIFlagProtected, extraData: !445)
!449 = !DISubprogram(name: "-[CABasicAnimation dealloc]", scope: !440, file: !30, line: 615, type: !450, scopeLine: 615, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!450 = !DISubroutineType(types: !451)
!451 = !{null, !452, !242}
!452 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !440, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!453 = !DISubprogram(name: "-[CABasicAnimation calculatedAnimationValueAtTime:onLayer:]", scope: !440, file: !30, line: 624, type: !454, scopeLine: 624, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!454 = !DISubroutineType(types: !455)
!455 = !{!18, !452, !242, !169, !5}
!456 = !DISubprogram(name: "-[CABasicAnimation fromValue]", scope: !440, file: !30, line: 611, type: !457, scopeLine: 611, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!457 = !DISubroutineType(types: !458)
!458 = !{!18, !452, !242}
!459 = !DISubprogram(name: "-[CABasicAnimation setFromValue:]", scope: !440, file: !30, line: 611, type: !460, scopeLine: 611, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!460 = !DISubroutineType(types: !461)
!461 = !{null, !452, !242, !18}
!462 = !DISubprogram(name: "-[CABasicAnimation byValue]", scope: !440, file: !30, line: 612, type: !457, scopeLine: 612, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!463 = !DISubprogram(name: "-[CABasicAnimation setByValue:]", scope: !440, file: !30, line: 612, type: !460, scopeLine: 612, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!464 = !DISubprogram(name: "-[CABasicAnimation toValue]", scope: !440, file: !30, line: 613, type: !457, scopeLine: 613, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!465 = !DISubprogram(name: "-[CABasicAnimation setToValue:]", scope: !440, file: !30, line: 613, type: !460, scopeLine: 613, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!466 = !DICompositeType(tag: DW_TAG_structure_type, name: "CAKeyframeAnimation", scope: !3, file: !30, line: 102, size: 1088, flags: DIFlagObjcClassComplete, elements: !467, runtimeLang: DW_LANG_ObjC)
!467 = !{!468, !469, !470, !471, !472, !473, !477, !480, !483}
!468 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !466, baseType: !385, extraData: i32 0)
!469 = !DIObjCProperty(name: "calculationMode", file: !30, line: 108, attributes: 296, type: !109)
!470 = !DIObjCProperty(name: "values", file: !30, line: 109, attributes: 296, type: !27)
!471 = !DIDerivedType(tag: DW_TAG_member, name: "_calculationMode", scope: !30, file: !30, line: 105, baseType: !109, size: 64, flags: DIFlagProtected, extraData: !469)
!472 = !DIDerivedType(tag: DW_TAG_member, name: "_values", scope: !30, file: !30, line: 106, baseType: !27, size: 64, flags: DIFlagProtected, extraData: !470)
!473 = !DISubprogram(name: "-[CAKeyframeAnimation calculationMode]", scope: !466, file: !30, line: 1007, type: !474, scopeLine: 1007, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!474 = !DISubroutineType(types: !475)
!475 = !{!109, !476, !242}
!476 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !466, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!477 = !DISubprogram(name: "-[CAKeyframeAnimation setCalculationMode:]", scope: !466, file: !30, line: 1007, type: !478, scopeLine: 1007, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!478 = !DISubroutineType(types: !479)
!479 = !{null, !476, !242, !109}
!480 = !DISubprogram(name: "-[CAKeyframeAnimation values]", scope: !466, file: !30, line: 1008, type: !481, scopeLine: 1008, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!481 = !DISubroutineType(types: !482)
!482 = !{!27, !476, !242}
!483 = !DISubprogram(name: "-[CAKeyframeAnimation setValues:]", scope: !466, file: !30, line: 1008, type: !484, scopeLine: 1008, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!484 = !DISubroutineType(types: !485)
!485 = !{null, !476, !242, !27}
!486 = !DICompositeType(tag: DW_TAG_structure_type, name: "CASpringAnimation", scope: !3, file: !30, line: 113, size: 1472, flags: DIFlagObjcClassComplete, elements: !487, runtimeLang: DW_LANG_ObjC)
!487 = !{!488, !489, !490, !491, !492, !493, !494, !495, !496, !497, !498, !499, !503, !506, !507, !508, !509, !510, !511, !512}
!488 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !486, baseType: !440, extraData: i32 0)
!489 = !DIObjCProperty(name: "mass", file: !30, line: 121, attributes: 2316, type: !45)
!490 = !DIObjCProperty(name: "stiffness", file: !30, line: 122, attributes: 2316, type: !45)
!491 = !DIObjCProperty(name: "damping", file: !30, line: 123, attributes: 2316, type: !45)
!492 = !DIObjCProperty(name: "initialVelocity", file: !30, line: 124, attributes: 2316, type: !45)
!493 = !DIObjCProperty(name: "settlingDuration", file: !30, line: 125, attributes: 257, type: !169)
!494 = !DIDerivedType(tag: DW_TAG_member, name: "_mass", scope: !30, file: !30, line: 115, baseType: !45, size: 64, flags: DIFlagProtected, extraData: !489)
!495 = !DIDerivedType(tag: DW_TAG_member, name: "_stiffness", scope: !30, file: !30, line: 116, baseType: !45, size: 64, flags: DIFlagProtected, extraData: !490)
!496 = !DIDerivedType(tag: DW_TAG_member, name: "_damping", scope: !30, file: !30, line: 117, baseType: !45, size: 64, flags: DIFlagProtected, extraData: !491)
!497 = !DIDerivedType(tag: DW_TAG_member, name: "_initialVelocity", scope: !30, file: !30, line: 118, baseType: !45, size: 64, flags: DIFlagProtected, extraData: !492)
!498 = !DIDerivedType(tag: DW_TAG_member, name: "_settlingDuration", scope: !30, file: !30, line: 119, baseType: !169, size: 64, flags: DIFlagProtected, extraData: !493)
!499 = !DISubprogram(name: "-[CASpringAnimation mass]", scope: !486, file: !30, line: 1013, type: !500, scopeLine: 1013, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!500 = !DISubroutineType(types: !501)
!501 = !{!45, !502, !242}
!502 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !486, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!503 = !DISubprogram(name: "-[CASpringAnimation setMass:]", scope: !486, file: !30, line: 1013, type: !504, scopeLine: 1013, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!504 = !DISubroutineType(types: !505)
!505 = !{null, !502, !242, !45}
!506 = !DISubprogram(name: "-[CASpringAnimation stiffness]", scope: !486, file: !30, line: 1014, type: !500, scopeLine: 1014, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!507 = !DISubprogram(name: "-[CASpringAnimation setStiffness:]", scope: !486, file: !30, line: 1014, type: !504, scopeLine: 1014, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!508 = !DISubprogram(name: "-[CASpringAnimation damping]", scope: !486, file: !30, line: 1015, type: !500, scopeLine: 1015, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!509 = !DISubprogram(name: "-[CASpringAnimation setDamping:]", scope: !486, file: !30, line: 1015, type: !504, scopeLine: 1015, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!510 = !DISubprogram(name: "-[CASpringAnimation initialVelocity]", scope: !486, file: !30, line: 1016, type: !500, scopeLine: 1016, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!511 = !DISubprogram(name: "-[CASpringAnimation setInitialVelocity:]", scope: !486, file: !30, line: 1016, type: !504, scopeLine: 1016, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!512 = !DISubprogram(name: "-[CASpringAnimation settlingDuration]", scope: !486, file: !30, line: 1017, type: !513, scopeLine: 1017, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!513 = !DISubroutineType(types: !514)
!514 = !{!169, !502, !242}
!515 = !DICompositeType(tag: DW_TAG_structure_type, name: "CATransition", scope: !3, file: !30, line: 133, size: 896, flags: DIFlagObjcClassComplete, elements: !516, runtimeLang: DW_LANG_ObjC)
!516 = !{!517, !518, !519, !520, !521, !522, !526, !529, !530}
!517 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !515, baseType: !191, extraData: i32 0)
!518 = !DIObjCProperty(name: "type", file: !30, line: 138, attributes: 296, type: !109)
!519 = !DIObjCProperty(name: "subtype", file: !30, line: 139, attributes: 296, type: !109)
!520 = !DIDerivedType(tag: DW_TAG_member, name: "_type", scope: !30, file: !30, line: 135, baseType: !109, size: 64, flags: DIFlagProtected, extraData: !518)
!521 = !DIDerivedType(tag: DW_TAG_member, name: "_subtype", scope: !30, file: !30, line: 136, baseType: !109, size: 64, flags: DIFlagProtected, extraData: !519)
!522 = !DISubprogram(name: "-[CATransition type]", scope: !515, file: !30, line: 1021, type: !523, scopeLine: 1021, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!523 = !DISubroutineType(types: !524)
!524 = !{!109, !525, !242}
!525 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !515, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!526 = !DISubprogram(name: "-[CATransition setType:]", scope: !515, file: !30, line: 1021, type: !527, scopeLine: 1021, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!527 = !DISubroutineType(types: !528)
!528 = !{null, !525, !242, !109}
!529 = !DISubprogram(name: "-[CATransition subtype]", scope: !515, file: !30, line: 1022, type: !523, scopeLine: 1022, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!530 = !DISubprogram(name: "-[CATransition setSubtype:]", scope: !515, file: !30, line: 1022, type: !527, scopeLine: 1022, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized)
!531 = !{!0, !532, !549, !561, !570, !583, !599, !608, !617, !630, !749, !751}
!532 = !DIGlobalVariableExpression(var: !533, expr: !DIExpression())
!533 = distinct !DIGlobalVariable(name: "keys", scope: !534, file: !3, line: 153, type: !546, isLocal: true, isDefinition: true)
!534 = distinct !DISubprogram(name: "-[CAAnimation init]", scope: !3, file: !3, line: 147, type: !263, scopeLine: 147, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !262, retainedNodes: !535)
!535 = !{!536, !538, !540, !543}
!536 = !DILocalVariable(name: "self", arg: 1, scope: !534, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!537 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !191, size: 64)
!538 = !DILocalVariable(name: "_cmd", arg: 2, scope: !534, type: !539, flags: DIFlagArtificial)
!539 = !DIDerivedType(tag: DW_TAG_typedef, name: "SEL", file: !3, baseType: !243)
!540 = !DILocalVariable(name: "i", scope: !541, file: !3, line: 157, type: !542)
!541 = distinct !DILexicalBlock(scope: !534, file: !3, line: 157, column: 3)
!542 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
!543 = !DILocalVariable(name: "defaultValue", scope: !544, file: !3, line: 159, type: !18)
!544 = distinct !DILexicalBlock(scope: !545, file: !3, line: 158, column: 5)
!545 = distinct !DILexicalBlock(scope: !541, file: !3, line: 157, column: 3)
!546 = !DICompositeType(tag: DW_TAG_array_type, baseType: !109, size: 384, elements: !547)
!547 = !{!548}
!548 = !DISubrange(count: 6)
!549 = !DIGlobalVariableExpression(var: !550, expr: !DIExpression())
!550 = distinct !DIGlobalVariable(name: "keys", scope: !551, file: !3, line: 178, type: !558, isLocal: true, isDefinition: true)
!551 = distinct !DISubprogram(name: "-[CAAnimation initWithCoder:]", scope: !3, file: !3, line: 172, type: !266, scopeLine: 172, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !265, retainedNodes: !552)
!552 = !{!553, !554, !555, !556}
!553 = !DILocalVariable(name: "self", arg: 1, scope: !551, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!554 = !DILocalVariable(name: "_cmd", arg: 2, scope: !551, type: !539, flags: DIFlagArtificial)
!555 = !DILocalVariable(name: "aDecoder", arg: 3, scope: !551, file: !3, line: 172, type: !268)
!556 = !DILocalVariable(name: "i", scope: !557, file: !3, line: 181, type: !542)
!557 = distinct !DILexicalBlock(scope: !551, file: !3, line: 181, column: 3)
!558 = !DICompositeType(tag: DW_TAG_array_type, baseType: !109, size: 448, elements: !559)
!559 = !{!560}
!560 = !DISubrange(count: 7)
!561 = !DIGlobalVariableExpression(var: !562, expr: !DIExpression())
!562 = distinct !DIGlobalVariable(name: "keys", scope: !563, file: !3, line: 195, type: !558, isLocal: true, isDefinition: true)
!563 = distinct !DISubprogram(name: "-[CAAnimation encodeWithCoder:]", scope: !3, file: !3, line: 193, type: !275, scopeLine: 193, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !274, retainedNodes: !564)
!564 = !{!565, !566, !567, !568}
!565 = !DILocalVariable(name: "self", arg: 1, scope: !563, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!566 = !DILocalVariable(name: "_cmd", arg: 2, scope: !563, type: !539, flags: DIFlagArtificial)
!567 = !DILocalVariable(name: "aCoder", arg: 3, scope: !563, file: !3, line: 193, type: !268)
!568 = !DILocalVariable(name: "i", scope: !569, file: !3, line: 198, type: !542)
!569 = distinct !DILexicalBlock(scope: !563, file: !3, line: 198, column: 3)
!570 = !DIGlobalVariableExpression(var: !571, expr: !DIExpression())
!571 = distinct !DIGlobalVariable(name: "keys", scope: !572, file: !3, line: 213, type: !558, isLocal: true, isDefinition: true)
!572 = distinct !DISubprogram(name: "-[CAAnimation copyWithZone:]", scope: !3, file: !3, line: 207, type: !278, scopeLine: 207, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !277, retainedNodes: !573)
!573 = !{!574, !575, !576, !577, !578, !580}
!574 = !DILocalVariable(name: "self", arg: 1, scope: !572, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!575 = !DILocalVariable(name: "_cmd", arg: 2, scope: !572, type: !539, flags: DIFlagArtificial)
!576 = !DILocalVariable(name: "zone", arg: 3, scope: !572, file: !3, line: 207, type: !280)
!577 = !DILocalVariable(name: "theCopy", scope: !572, file: !3, line: 209, type: !18)
!578 = !DILocalVariable(name: "i", scope: !579, file: !3, line: 216, type: !542)
!579 = distinct !DILexicalBlock(scope: !572, file: !3, line: 216, column: 3)
!580 = !DILocalVariable(name: "value", scope: !581, file: !3, line: 218, type: !18)
!581 = distinct !DILexicalBlock(scope: !582, file: !3, line: 217, column: 5)
!582 = distinct !DILexicalBlock(scope: !579, file: !3, line: 216, column: 3)
!583 = !DIGlobalVariableExpression(var: !584, expr: !DIExpression())
!584 = distinct !DIGlobalVariable(name: "keys", scope: !585, file: !3, line: 326, type: !596, isLocal: true, isDefinition: true)
!585 = distinct !DISubprogram(name: "-[CAPropertyAnimation initWithKeyPath:]", scope: !3, file: !3, line: 318, type: !399, scopeLine: 318, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !398, retainedNodes: !586)
!586 = !{!587, !589, !590, !591, !593}
!587 = !DILocalVariable(name: "self", arg: 1, scope: !585, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!588 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !385, size: 64)
!589 = !DILocalVariable(name: "_cmd", arg: 2, scope: !585, type: !539, flags: DIFlagArtificial)
!590 = !DILocalVariable(name: "keyPath", arg: 3, scope: !585, file: !3, line: 318, type: !109)
!591 = !DILocalVariable(name: "i", scope: !592, file: !3, line: 327, type: !542)
!592 = distinct !DILexicalBlock(scope: !585, file: !3, line: 327, column: 3)
!593 = !DILocalVariable(name: "defaultValue", scope: !594, file: !3, line: 329, type: !18)
!594 = distinct !DILexicalBlock(scope: !595, file: !3, line: 328, column: 5)
!595 = distinct !DILexicalBlock(scope: !592, file: !3, line: 327, column: 3)
!596 = !DICompositeType(tag: DW_TAG_array_type, baseType: !109, size: 192, elements: !597)
!597 = !{!598}
!598 = !DISubrange(count: 3)
!599 = !DIGlobalVariableExpression(var: !600, expr: !DIExpression())
!600 = distinct !DIGlobalVariable(name: "keys", scope: !601, file: !3, line: 346, type: !596, isLocal: true, isDefinition: true)
!601 = distinct !DISubprogram(name: "-[CAPropertyAnimation initWithCoder:]", scope: !3, file: !3, line: 340, type: !403, scopeLine: 340, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !402, retainedNodes: !602)
!602 = !{!603, !604, !605, !606}
!603 = !DILocalVariable(name: "self", arg: 1, scope: !601, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!604 = !DILocalVariable(name: "_cmd", arg: 2, scope: !601, type: !539, flags: DIFlagArtificial)
!605 = !DILocalVariable(name: "aDecoder", arg: 3, scope: !601, file: !3, line: 340, type: !268)
!606 = !DILocalVariable(name: "i", scope: !607, file: !3, line: 347, type: !542)
!607 = distinct !DILexicalBlock(scope: !601, file: !3, line: 347, column: 3)
!608 = !DIGlobalVariableExpression(var: !609, expr: !DIExpression())
!609 = distinct !DIGlobalVariable(name: "keys", scope: !610, file: !3, line: 361, type: !596, isLocal: true, isDefinition: true)
!610 = distinct !DISubprogram(name: "-[CAPropertyAnimation encodeWithCoder:]", scope: !3, file: !3, line: 359, type: !406, scopeLine: 359, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !405, retainedNodes: !611)
!611 = !{!612, !613, !614, !615}
!612 = !DILocalVariable(name: "self", arg: 1, scope: !610, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!613 = !DILocalVariable(name: "_cmd", arg: 2, scope: !610, type: !539, flags: DIFlagArtificial)
!614 = !DILocalVariable(name: "aCoder", arg: 3, scope: !610, file: !3, line: 359, type: !268)
!615 = !DILocalVariable(name: "i", scope: !616, file: !3, line: 362, type: !542)
!616 = distinct !DILexicalBlock(scope: !610, file: !3, line: 362, column: 3)
!617 = !DIGlobalVariableExpression(var: !618, expr: !DIExpression())
!618 = distinct !DIGlobalVariable(name: "keys", scope: !619, file: !3, line: 377, type: !596, isLocal: true, isDefinition: true)
!619 = distinct !DISubprogram(name: "-[CAPropertyAnimation copyWithZone:]", scope: !3, file: !3, line: 371, type: !409, scopeLine: 371, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !408, retainedNodes: !620)
!620 = !{!621, !622, !623, !624, !625, !627}
!621 = !DILocalVariable(name: "self", arg: 1, scope: !619, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!622 = !DILocalVariable(name: "_cmd", arg: 2, scope: !619, type: !539, flags: DIFlagArtificial)
!623 = !DILocalVariable(name: "zone", arg: 3, scope: !619, file: !3, line: 371, type: !280)
!624 = !DILocalVariable(name: "theCopy", scope: !619, file: !3, line: 373, type: !18)
!625 = !DILocalVariable(name: "i", scope: !626, file: !3, line: 378, type: !542)
!626 = distinct !DILexicalBlock(scope: !619, file: !3, line: 378, column: 3)
!627 = !DILocalVariable(name: "value", scope: !628, file: !3, line: 380, type: !18)
!628 = distinct !DILexicalBlock(scope: !629, file: !3, line: 379, column: 5)
!629 = distinct !DILexicalBlock(scope: !626, file: !3, line: 378, column: 3)
!630 = !DIGlobalVariableExpression(var: !631, expr: !DIExpression())
!631 = distinct !DIGlobalVariable(name: "warned", scope: !632, file: !3, line: 697, type: !84, isLocal: true, isDefinition: true)
!632 = distinct !DISubprogram(name: "-[CABasicAnimation calculatedAnimationValueAtTime:onLayer:]", scope: !3, file: !3, line: 624, type: !454, scopeLine: 624, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !453, retainedNodes: !633)
!633 = !{!634, !636, !637, !638, !639, !640, !641, !642, !645, !646, !647, !655, !656, !659, !660, !663, !664, !665, !668, !669, !670, !673, !674, !677, !678, !679, !682, !683, !684, !687, !688, !691, !692, !693, !696, !697, !698, !701, !702, !703, !704, !705, !706, !707, !708, !709, !710, !711, !712, !713, !714, !715, !716, !717, !718, !719, !720, !721, !722, !723, !731, !732, !733, !734, !735, !738, !739, !744, !745, !746, !747}
!634 = !DILocalVariable(name: "self", arg: 1, scope: !632, type: !635, flags: DIFlagArtificial | DIFlagObjectPointer)
!635 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !440, size: 64)
!636 = !DILocalVariable(name: "_cmd", arg: 2, scope: !632, type: !539, flags: DIFlagArtificial)
!637 = !DILocalVariable(name: "theTime", arg: 3, scope: !632, file: !3, line: 624, type: !169)
!638 = !DILocalVariable(name: "layer", arg: 4, scope: !632, file: !3, line: 625, type: !5)
!639 = !DILocalVariable(name: "fraction", scope: !632, file: !3, line: 648, type: !82)
!640 = !DILocalVariable(name: "fromValue", scope: !632, file: !3, line: 657, type: !18)
!641 = !DILocalVariable(name: "toValue", scope: !632, file: !3, line: 658, type: !18)
!642 = !DILocalVariable(name: "from", scope: !643, file: !3, line: 668, type: !82)
!643 = distinct !DILexicalBlock(scope: !644, file: !3, line: 665, column: 5)
!644 = distinct !DILexicalBlock(scope: !632, file: !3, line: 663, column: 7)
!645 = !DILocalVariable(name: "to", scope: !643, file: !3, line: 669, type: !82)
!646 = !DILocalVariable(name: "value", scope: !643, file: !3, line: 671, type: !82)
!647 = !DILocalVariable(name: "from", scope: !648, file: !3, line: 680, type: !650)
!648 = distinct !DILexicalBlock(scope: !649, file: !3, line: 679, column: 5)
!649 = distinct !DILexicalBlock(scope: !632, file: !3, line: 676, column: 7)
!650 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !651, size: 64)
!651 = !DICompositeType(tag: DW_TAG_structure_type, name: "NSValue", scope: !3, file: !652, line: 49, size: 64, elements: !653, runtimeLang: DW_LANG_ObjC)
!652 = !DIFile(filename: "/usr/GNUstep/System/Library/Headers/Foundation/NSValue.h", directory: "", checksumkind: CSK_MD5, checksum: "91e1f55044142cb095ae3b86b2b29269")
!653 = !{!654}
!654 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !651, baseType: !10, extraData: i32 0)
!655 = !DILocalVariable(name: "to", scope: !648, file: !3, line: 681, type: !650)
!656 = !DILocalVariable(name: "fromPt", scope: !657, file: !3, line: 688, type: !57)
!657 = distinct !DILexicalBlock(scope: !658, file: !3, line: 684, column: 9)
!658 = distinct !DILexicalBlock(scope: !648, file: !3, line: 683, column: 11)
!659 = !DILocalVariable(name: "toPt", scope: !657, file: !3, line: 689, type: !57)
!660 = !DILocalVariable(name: "fromPt", scope: !661, file: !3, line: 706, type: !41)
!661 = distinct !DILexicalBlock(scope: !662, file: !3, line: 696, column: 9)
!662 = distinct !DILexicalBlock(scope: !648, file: !3, line: 695, column: 11)
!663 = !DILocalVariable(name: "toPt", scope: !661, file: !3, line: 707, type: !41)
!664 = !DILocalVariable(name: "valuePt", scope: !661, file: !3, line: 708, type: !41)
!665 = !DILocalVariable(name: "fromPt", scope: !666, file: !3, line: 721, type: !57)
!666 = distinct !DILexicalBlock(scope: !667, file: !3, line: 714, column: 9)
!667 = distinct !DILexicalBlock(scope: !648, file: !3, line: 713, column: 11)
!668 = !DILocalVariable(name: "toPt", scope: !666, file: !3, line: 722, type: !57)
!669 = !DILocalVariable(name: "valuePt", scope: !666, file: !3, line: 724, type: !57)
!670 = !DILocalVariable(name: "fromSz", scope: !671, file: !3, line: 735, type: !94)
!671 = distinct !DILexicalBlock(scope: !672, file: !3, line: 731, column: 9)
!672 = distinct !DILexicalBlock(scope: !648, file: !3, line: 730, column: 11)
!673 = !DILocalVariable(name: "toSz", scope: !671, file: !3, line: 736, type: !94)
!674 = !DILocalVariable(name: "fromSz", scope: !675, file: !3, line: 754, type: !50)
!675 = distinct !DILexicalBlock(scope: !676, file: !3, line: 744, column: 9)
!676 = distinct !DILexicalBlock(scope: !648, file: !3, line: 743, column: 11)
!677 = !DILocalVariable(name: "toSz", scope: !675, file: !3, line: 755, type: !50)
!678 = !DILocalVariable(name: "valueSz", scope: !675, file: !3, line: 756, type: !50)
!679 = !DILocalVariable(name: "fromSz", scope: !680, file: !3, line: 769, type: !94)
!680 = distinct !DILexicalBlock(scope: !681, file: !3, line: 762, column: 9)
!681 = distinct !DILexicalBlock(scope: !648, file: !3, line: 761, column: 11)
!682 = !DILocalVariable(name: "toSz", scope: !680, file: !3, line: 770, type: !94)
!683 = !DILocalVariable(name: "valueSz", scope: !680, file: !3, line: 772, type: !94)
!684 = !DILocalVariable(name: "fromRect", scope: !685, file: !3, line: 783, type: !34)
!685 = distinct !DILexicalBlock(scope: !686, file: !3, line: 779, column: 9)
!686 = distinct !DILexicalBlock(scope: !648, file: !3, line: 778, column: 11)
!687 = !DILocalVariable(name: "toRect", scope: !685, file: !3, line: 785, type: !34)
!688 = !DILocalVariable(name: "fromRect", scope: !689, file: !3, line: 803, type: !36)
!689 = distinct !DILexicalBlock(scope: !690, file: !3, line: 793, column: 9)
!690 = distinct !DILexicalBlock(scope: !648, file: !3, line: 792, column: 11)
!691 = !DILocalVariable(name: "toRect", scope: !689, file: !3, line: 804, type: !36)
!692 = !DILocalVariable(name: "valueRect", scope: !689, file: !3, line: 805, type: !36)
!693 = !DILocalVariable(name: "fromRect", scope: !694, file: !3, line: 820, type: !34)
!694 = distinct !DILexicalBlock(scope: !695, file: !3, line: 814, column: 9)
!695 = distinct !DILexicalBlock(scope: !648, file: !3, line: 813, column: 11)
!696 = !DILocalVariable(name: "toRect", scope: !694, file: !3, line: 821, type: !34)
!697 = !DILocalVariable(name: "valueRect", scope: !694, file: !3, line: 823, type: !34)
!698 = !DILocalVariable(name: "fromTf", scope: !699, file: !3, line: 836, type: !60)
!699 = distinct !DILexicalBlock(scope: !700, file: !3, line: 835, column: 9)
!700 = distinct !DILexicalBlock(scope: !648, file: !3, line: 834, column: 11)
!701 = !DILocalVariable(name: "toTf", scope: !699, file: !3, line: 837, type: !60)
!702 = !DILocalVariable(name: "valueTf", scope: !699, file: !3, line: 838, type: !60)
!703 = !DILocalVariable(name: "fromTX", scope: !699, file: !3, line: 858, type: !45)
!704 = !DILocalVariable(name: "fromTY", scope: !699, file: !3, line: 858, type: !45)
!705 = !DILocalVariable(name: "fromTZ", scope: !699, file: !3, line: 858, type: !45)
!706 = !DILocalVariable(name: "toTX", scope: !699, file: !3, line: 859, type: !45)
!707 = !DILocalVariable(name: "toTY", scope: !699, file: !3, line: 859, type: !45)
!708 = !DILocalVariable(name: "toTZ", scope: !699, file: !3, line: 859, type: !45)
!709 = !DILocalVariable(name: "valueTX", scope: !699, file: !3, line: 861, type: !45)
!710 = !DILocalVariable(name: "valueTY", scope: !699, file: !3, line: 862, type: !45)
!711 = !DILocalVariable(name: "valueTZ", scope: !699, file: !3, line: 863, type: !45)
!712 = !DILocalVariable(name: "fromSX", scope: !699, file: !3, line: 867, type: !45)
!713 = !DILocalVariable(name: "fromSY", scope: !699, file: !3, line: 868, type: !45)
!714 = !DILocalVariable(name: "fromSZ", scope: !699, file: !3, line: 869, type: !45)
!715 = !DILocalVariable(name: "toSX", scope: !699, file: !3, line: 871, type: !45)
!716 = !DILocalVariable(name: "toSY", scope: !699, file: !3, line: 872, type: !45)
!717 = !DILocalVariable(name: "toSZ", scope: !699, file: !3, line: 873, type: !45)
!718 = !DILocalVariable(name: "valueSX", scope: !699, file: !3, line: 876, type: !45)
!719 = !DILocalVariable(name: "valueSY", scope: !699, file: !3, line: 877, type: !45)
!720 = !DILocalVariable(name: "valueSZ", scope: !699, file: !3, line: 878, type: !45)
!721 = !DILocalVariable(name: "fromRotation", scope: !699, file: !3, line: 882, type: !60)
!722 = !DILocalVariable(name: "toRotation", scope: !699, file: !3, line: 903, type: !60)
!723 = !DILocalVariable(name: "fromQuat", scope: !699, file: !3, line: 924, type: !724)
!724 = !DIDerivedType(tag: DW_TAG_typedef, name: "GSQuartzCoreQuaternion", file: !3, line: 439, baseType: !725)
!725 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "_GSQuartzCoreQuaternion", file: !3, line: 436, size: 256, elements: !726)
!726 = !{!727, !728, !729, !730}
!727 = !DIDerivedType(tag: DW_TAG_member, name: "x", scope: !725, file: !3, line: 438, baseType: !45, size: 64)
!728 = !DIDerivedType(tag: DW_TAG_member, name: "y", scope: !725, file: !3, line: 438, baseType: !45, size: 64, offset: 64)
!729 = !DIDerivedType(tag: DW_TAG_member, name: "z", scope: !725, file: !3, line: 438, baseType: !45, size: 64, offset: 128)
!730 = !DIDerivedType(tag: DW_TAG_member, name: "w", scope: !725, file: !3, line: 438, baseType: !45, size: 64, offset: 192)
!731 = !DILocalVariable(name: "toQuat", scope: !699, file: !3, line: 925, type: !724)
!732 = !DILocalVariable(name: "fromQuatLen", scope: !699, file: !3, line: 927, type: !45)
!733 = !DILocalVariable(name: "toQuatLen", scope: !699, file: !3, line: 932, type: !45)
!734 = !DILocalVariable(name: "valueQuat", scope: !699, file: !3, line: 938, type: !724)
!735 = !DILocalVariable(name: "from", scope: !736, file: !3, line: 981, type: !89)
!736 = distinct !DILexicalBlock(scope: !737, file: !3, line: 980, column: 5)
!737 = distinct !DILexicalBlock(scope: !632, file: !3, line: 977, column: 7)
!738 = !DILocalVariable(name: "to", scope: !736, file: !3, line: 982, type: !89)
!739 = !DILocalVariable(name: "fromComponents", scope: !740, file: !3, line: 987, type: !742)
!740 = distinct !DILexicalBlock(scope: !741, file: !3, line: 986, column: 9)
!741 = distinct !DILexicalBlock(scope: !736, file: !3, line: 984, column: 11)
!742 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !743, size: 64)
!743 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !45)
!744 = !DILocalVariable(name: "toComponents", scope: !740, file: !3, line: 988, type: !742)
!745 = !DILocalVariable(name: "numberOfComponents", scope: !740, file: !3, line: 990, type: !291)
!746 = !DILocalVariable(name: "valueComponents", scope: !740, file: !3, line: 992, type: !212)
!747 = !DILocalVariable(name: "i", scope: !748, file: !3, line: 993, type: !542)
!748 = distinct !DILexicalBlock(scope: !740, file: !3, line: 993, column: 11)
!749 = !DIGlobalVariableExpression(var: !750, expr: !DIExpression())
!750 = distinct !DIGlobalVariable(name: "warned", scope: !632, file: !3, line: 745, type: !84, isLocal: true, isDefinition: true)
!751 = !DIGlobalVariableExpression(var: !752, expr: !DIExpression())
!752 = distinct !DIGlobalVariable(name: "warned", scope: !632, file: !3, line: 794, type: !84, isLocal: true, isDefinition: true)
!753 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !109)
!754 = !DIGlobalVariableExpression(var: !631, expr: !DIExpression(DW_OP_deref_size, 1, DW_OP_constu, 1, DW_OP_mul, DW_OP_constu, 0, DW_OP_plus, DW_OP_stack_value))
!755 = !DIGlobalVariableExpression(var: !750, expr: !DIExpression(DW_OP_deref_size, 1, DW_OP_constu, 1, DW_OP_mul, DW_OP_constu, 0, DW_OP_plus, DW_OP_stack_value))
!756 = !DIGlobalVariableExpression(var: !752, expr: !DIExpression(DW_OP_deref_size, 1, DW_OP_constu, 1, DW_OP_mul, DW_OP_constu, 0, DW_OP_plus, DW_OP_stack_value))
!757 = !{i32 7, !"Dwarf Version", i32 5}
!758 = !{i32 2, !"Debug Info Version", i32 3}
!759 = !{i32 1, !"wchar_size", i32 4}
!760 = !{i32 8, !"PIC Level", i32 2}
!761 = !{i32 7, !"uwtable", i32 2}
!762 = !{i32 7, !"debug-info-assignment-tracking", i1 true}
!763 = !{!"Ubuntu clang version 18.1.6 (++20240518023229+1118c2e05e67-1~exp1~20240518143321.130)"}
!764 = distinct !DISubprogram(name: "-[CAAnimation setBeginTime:]", scope: !3, file: !3, line: 61, type: !239, scopeLine: 61, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !238, retainedNodes: !765)
!765 = !{!766, !767, !768}
!766 = !DILocalVariable(name: "self", arg: 1, scope: !764, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!767 = !DILocalVariable(name: "_cmd", arg: 2, scope: !764, type: !539, flags: DIFlagArtificial)
!768 = !DILocalVariable(name: "beginTime", arg: 3, scope: !764, file: !3, line: 61, type: !169)
!769 = !DILocation(line: 0, scope: !764)
!770 = !DILocation(line: 63, column: 3, scope: !764)
!771 = !DILocation(line: 63, column: 14, scope: !764)
!772 = !DILocation(line: 64, column: 3, scope: !764)
!773 = !{!"takeNoteThatNextFrameTimeChanged", !"", i1 false}
!774 = !DILocation(line: 65, column: 1, scope: !764)
!775 = distinct !DISubprogram(name: "-[CAAnimation handleAddedToLayer:]", scope: !3, file: !3, line: 67, type: !246, scopeLine: 67, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !245, retainedNodes: !776)
!776 = !{!777, !778, !779, !780, !782}
!777 = !DILocalVariable(name: "self", arg: 1, scope: !775, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!778 = !DILocalVariable(name: "_cmd", arg: 2, scope: !775, type: !539, flags: DIFlagArtificial)
!779 = !DILocalVariable(name: "layer", arg: 3, scope: !775, file: !3, line: 67, type: !5)
!780 = !DILocalVariable(name: "index", scope: !781, file: !3, line: 69, type: !542)
!781 = distinct !DILexicalBlock(scope: !775, file: !3, line: 69, column: 3)
!782 = !DILocalVariable(name: "len", scope: !781, file: !3, line: 69, type: !542)
!783 = !DILocation(line: 0, scope: !775)
!784 = !DILocation(line: 0, scope: !781)
!785 = !DILocation(line: 69, column: 30, scope: !781)
!786 = !DILocation(line: 69, column: 29, scope: !781)
!787 = !{!"count", !"", i1 false}
!788 = !DILocation(line: 69, column: 52, scope: !789)
!789 = distinct !DILexicalBlock(scope: !781, file: !3, line: 69, column: 3)
!790 = !DILocation(line: 69, column: 3, scope: !781)
!791 = !DILocation(line: 76, column: 4, scope: !775)
!792 = !DILocation(line: 76, column: 3, scope: !775)
!793 = !{!"addPointer:", !"", i1 false}
!794 = !DILocation(line: 77, column: 3, scope: !775)
!795 = !DILocation(line: 78, column: 1, scope: !775)
!796 = !DILocation(line: 71, column: 20, scope: !797)
!797 = distinct !DILexicalBlock(scope: !798, file: !3, line: 71, column: 10)
!798 = distinct !DILexicalBlock(scope: !789, file: !3, line: 70, column: 5)
!799 = !DILocation(line: 71, column: 19, scope: !797)
!800 = !{!"pointerAtIndex:", !"", i1 false}
!801 = !DILocation(line: 71, column: 16, scope: !797)
!802 = !DILocation(line: 71, column: 10, scope: !798)
!803 = !DILocation(line: 72, column: 9, scope: !797)
!804 = !{!"raise:format:", !"NSException", i1 true}
!805 = !DILocation(line: 69, column: 64, scope: !789)
!806 = distinct !{!806, !790, !807, !808}
!807 = !DILocation(line: 74, column: 5, scope: !781)
!808 = !{!"llvm.loop.mustprogress"}
!809 = distinct !DISubprogram(name: "-[CAAnimation handleRemovedFromLayer:]", scope: !3, file: !3, line: 80, type: !246, scopeLine: 80, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !248, retainedNodes: !810)
!810 = !{!811, !812, !813, !814, !816}
!811 = !DILocalVariable(name: "self", arg: 1, scope: !809, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!812 = !DILocalVariable(name: "_cmd", arg: 2, scope: !809, type: !539, flags: DIFlagArtificial)
!813 = !DILocalVariable(name: "layer", arg: 3, scope: !809, file: !3, line: 80, type: !5)
!814 = !DILocalVariable(name: "index", scope: !815, file: !3, line: 82, type: !542)
!815 = distinct !DILexicalBlock(scope: !809, file: !3, line: 82, column: 3)
!816 = !DILocalVariable(name: "len", scope: !815, file: !3, line: 82, type: !542)
!817 = !DILocation(line: 0, scope: !809)
!818 = !DILocation(line: 0, scope: !815)
!819 = !DILocation(line: 82, column: 30, scope: !815)
!820 = !DILocation(line: 82, column: 29, scope: !815)
!821 = !DILocation(line: 82, column: 52, scope: !822)
!822 = distinct !DILexicalBlock(scope: !815, file: !3, line: 82, column: 3)
!823 = !DILocation(line: 82, column: 3, scope: !815)
!824 = !DILocation(line: 88, column: 3, scope: !809)
!825 = !DILocation(line: 89, column: 1, scope: !809)
!826 = !DILocation(line: 84, column: 20, scope: !827)
!827 = distinct !DILexicalBlock(scope: !828, file: !3, line: 84, column: 10)
!828 = distinct !DILexicalBlock(scope: !822, file: !3, line: 83, column: 5)
!829 = !DILocation(line: 84, column: 19, scope: !827)
!830 = !DILocation(line: 84, column: 16, scope: !827)
!831 = !DILocation(line: 84, column: 10, scope: !828)
!832 = !DILocation(line: 85, column: 10, scope: !827)
!833 = !DILocation(line: 85, column: 9, scope: !827)
!834 = !{!"removePointerAtIndex:", !"", i1 false}
!835 = !DILocation(line: 82, column: 64, scope: !822)
!836 = distinct !{!836, !823, !837, !808}
!837 = !DILocation(line: 86, column: 5, scope: !815)
!838 = distinct !DISubprogram(name: "-[CAAnimation takeNoteThatNextFrameTimeChanged]", scope: !3, file: !3, line: 91, type: !250, scopeLine: 91, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !249, retainedNodes: !839)
!839 = !{!840, !841, !842, !844, !845}
!840 = !DILocalVariable(name: "self", arg: 1, scope: !838, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!841 = !DILocalVariable(name: "_cmd", arg: 2, scope: !838, type: !539, flags: DIFlagArtificial)
!842 = !DILocalVariable(name: "index", scope: !843, file: !3, line: 93, type: !542)
!843 = distinct !DILexicalBlock(scope: !838, file: !3, line: 93, column: 3)
!844 = !DILocalVariable(name: "len", scope: !843, file: !3, line: 93, type: !542)
!845 = !DILocalVariable(name: "layer", scope: !846, file: !3, line: 95, type: !5)
!846 = distinct !DILexicalBlock(scope: !847, file: !3, line: 94, column: 5)
!847 = distinct !DILexicalBlock(scope: !843, file: !3, line: 93, column: 3)
!848 = !DILocation(line: 0, scope: !838)
!849 = !DILocation(line: 0, scope: !843)
!850 = !DILocation(line: 93, column: 30, scope: !843)
!851 = !DILocation(line: 93, column: 29, scope: !843)
!852 = !DILocation(line: 93, column: 52, scope: !847)
!853 = !DILocation(line: 93, column: 3, scope: !843)
!854 = !DILocation(line: 98, column: 1, scope: !838)
!855 = !DILocation(line: 95, column: 25, scope: !846)
!856 = !DILocation(line: 95, column: 24, scope: !846)
!857 = !DILocation(line: 0, scope: !846)
!858 = !DILocation(line: 96, column: 7, scope: !846)
!859 = !DILocation(line: 93, column: 64, scope: !847)
!860 = distinct !{!860, !853, !861, !808}
!861 = !DILocation(line: 97, column: 5, scope: !843)
!862 = distinct !DISubprogram(name: "+[CAAnimation animation]", scope: !3, file: !3, line: 100, type: !253, scopeLine: 100, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !252, retainedNodes: !863)
!863 = !{!864, !865}
!864 = !DILocalVariable(name: "self", arg: 1, scope: !862, type: !14, flags: DIFlagArtificial | DIFlagObjectPointer)
!865 = !DILocalVariable(name: "_cmd", arg: 2, scope: !862, type: !539, flags: DIFlagArtificial)
!866 = !DILocation(line: 0, scope: !862)
!867 = !DILocation(line: 102, column: 12, scope: !862)
!868 = !{!"alloc", !"", i1 false}
!869 = !DILocation(line: 102, column: 11, scope: !862)
!870 = !{!"init", !"", i1 false}
!871 = !DILocation(line: 102, column: 10, scope: !862)
!872 = !{!"autorelease", !"", i1 false}
!873 = !DILocation(line: 102, column: 3, scope: !862)
!874 = distinct !DISubprogram(name: "+[CAAnimation defaultValueForKey:]", scope: !3, file: !3, line: 105, type: !257, scopeLine: 105, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !256, retainedNodes: !875)
!875 = !{!876, !877, !878}
!876 = !DILocalVariable(name: "self", arg: 1, scope: !874, type: !14, flags: DIFlagArtificial | DIFlagObjectPointer)
!877 = !DILocalVariable(name: "_cmd", arg: 2, scope: !874, type: !539, flags: DIFlagArtificial)
!878 = !DILocalVariable(name: "key", arg: 3, scope: !874, file: !3, line: 105, type: !109)
!879 = !DILocation(line: 0, scope: !874)
!880 = !DILocation(line: 107, column: 7, scope: !881)
!881 = distinct !DILexicalBlock(scope: !874, file: !3, line: 107, column: 7)
!882 = !{!"isEqualToString:", !"", i1 false}
!883 = !DILocation(line: 107, column: 7, scope: !874)
!884 = !DILocation(line: 111, column: 7, scope: !885)
!885 = distinct !DILexicalBlock(scope: !874, file: !3, line: 111, column: 7)
!886 = !DILocation(line: 111, column: 7, scope: !874)
!887 = !DILocation(line: 113, column: 14, scope: !888)
!888 = distinct !DILexicalBlock(scope: !885, file: !3, line: 112, column: 5)
!889 = !{!"numberWithBool:", !"NSNumber", i1 true}
!890 = !DILocation(line: 113, column: 7, scope: !888)
!891 = !DILocation(line: 115, column: 7, scope: !892)
!892 = distinct !DILexicalBlock(scope: !874, file: !3, line: 115, column: 7)
!893 = !DILocation(line: 115, column: 7, scope: !874)
!894 = !DILocation(line: 122, column: 7, scope: !895)
!895 = distinct !DILexicalBlock(scope: !874, file: !3, line: 122, column: 7)
!896 = !DILocation(line: 122, column: 7, scope: !874)
!897 = !DILocation(line: 124, column: 14, scope: !898)
!898 = distinct !DILexicalBlock(scope: !895, file: !3, line: 123, column: 5)
!899 = !{!"numberWithFloat:", !"NSNumber", i1 true}
!900 = !DILocation(line: 124, column: 7, scope: !898)
!901 = !DILocation(line: 126, column: 7, scope: !902)
!902 = distinct !DILexicalBlock(scope: !874, file: !3, line: 126, column: 7)
!903 = !DILocation(line: 126, column: 7, scope: !874)
!904 = !DILocation(line: 128, column: 14, scope: !905)
!905 = distinct !DILexicalBlock(scope: !902, file: !3, line: 127, column: 5)
!906 = !DILocation(line: 128, column: 7, scope: !905)
!907 = !DILocation(line: 130, column: 7, scope: !908)
!908 = distinct !DILexicalBlock(scope: !874, file: !3, line: 130, column: 7)
!909 = !DILocation(line: 130, column: 7, scope: !874)
!910 = !DILocation(line: 132, column: 14, scope: !911)
!911 = distinct !DILexicalBlock(scope: !908, file: !3, line: 131, column: 5)
!912 = !DILocation(line: 132, column: 7, scope: !911)
!913 = !DILocation(line: 134, column: 7, scope: !914)
!914 = distinct !DILexicalBlock(scope: !874, file: !3, line: 134, column: 7)
!915 = !DILocation(line: 134, column: 7, scope: !874)
!916 = !DILocation(line: 136, column: 14, scope: !917)
!917 = distinct !DILexicalBlock(scope: !914, file: !3, line: 135, column: 5)
!918 = !DILocation(line: 136, column: 7, scope: !917)
!919 = !DILocation(line: 139, column: 1, scope: !874)
!920 = distinct !DISubprogram(name: "+[CAAnimation shouldArchiveValueForKey:]", scope: !3, file: !3, line: 141, type: !260, scopeLine: 141, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !259, retainedNodes: !921)
!921 = !{!922, !923, !924}
!922 = !DILocalVariable(name: "self", arg: 1, scope: !920, type: !14, flags: DIFlagArtificial | DIFlagObjectPointer)
!923 = !DILocalVariable(name: "_cmd", arg: 2, scope: !920, type: !539, flags: DIFlagArtificial)
!924 = !DILocalVariable(name: "key", arg: 3, scope: !920, file: !3, line: 141, type: !109)
!925 = !DILocation(line: 0, scope: !920)
!926 = !DILocation(line: 144, column: 3, scope: !920)
!927 = !DILocation(line: 0, scope: !534)
!928 = !DILocation(line: 149, column: 10, scope: !534)
!929 = !{!"init", !"NSObject", i1 false}
!930 = !DILocation(line: 150, column: 8, scope: !931)
!931 = distinct !DILexicalBlock(scope: !534, file: !3, line: 150, column: 7)
!932 = !DILocation(line: 150, column: 7, scope: !534)
!933 = !DILocation(line: 0, scope: !541)
!934 = !DILocation(line: 159, column: 26, scope: !544)
!935 = !{!"class", !"", i1 false}
!936 = !DILocation(line: 159, column: 25, scope: !544)
!937 = !{!"defaultValueForKey:", !"", i1 false}
!938 = !DILocation(line: 0, scope: !544)
!939 = !DILocation(line: 160, column: 11, scope: !940)
!940 = distinct !DILexicalBlock(scope: !544, file: !3, line: 160, column: 11)
!941 = !DILocation(line: 160, column: 11, scope: !544)
!942 = !DILocation(line: 162, column: 11, scope: !943)
!943 = distinct !DILexicalBlock(scope: !940, file: !3, line: 161, column: 9)
!944 = !{!"setValue:forKey:", !"", i1 false}
!945 = !DILocation(line: 164, column: 9, scope: !943)
!946 = !DILocation(line: 167, column: 14, scope: !534)
!947 = !{!"weakObjectsPointerArray", !"NSPointerArray", i1 true}
!948 = !DILocation(line: 167, column: 13, scope: !534)
!949 = !{!"retain", !"", i1 false}
!950 = !DILocation(line: 167, column: 3, scope: !534)
!951 = !DILocation(line: 167, column: 11, scope: !534)
!952 = !DILocation(line: 169, column: 3, scope: !534)
!953 = !DILocation(line: 170, column: 1, scope: !534)
!954 = !DILocation(line: 0, scope: !551)
!955 = !DILocation(line: 174, column: 10, scope: !551)
!956 = !DILocation(line: 175, column: 8, scope: !957)
!957 = distinct !DILexicalBlock(scope: !551, file: !3, line: 175, column: 7)
!958 = !DILocation(line: 175, column: 7, scope: !551)
!959 = !DILocation(line: 0, scope: !557)
!960 = !DILocation(line: 183, column: 11, scope: !961)
!961 = distinct !DILexicalBlock(scope: !962, file: !3, line: 183, column: 11)
!962 = distinct !DILexicalBlock(scope: !963, file: !3, line: 182, column: 5)
!963 = distinct !DILexicalBlock(scope: !557, file: !3, line: 181, column: 3)
!964 = !{!"containsValueForKey:", !"", i1 false}
!965 = !DILocation(line: 183, column: 11, scope: !962)
!966 = !DILocation(line: 185, column: 27, scope: !967)
!967 = distinct !DILexicalBlock(scope: !961, file: !3, line: 184, column: 9)
!968 = !{!"decodeObjectForKey:", !"", i1 false}
!969 = !DILocation(line: 185, column: 11, scope: !967)
!970 = !DILocation(line: 187, column: 9, scope: !967)
!971 = !DILocation(line: 191, column: 1, scope: !551)
!972 = !DILocation(line: 0, scope: !563)
!973 = !DILocation(line: 0, scope: !569)
!974 = !DILocation(line: 200, column: 12, scope: !975)
!975 = distinct !DILexicalBlock(scope: !976, file: !3, line: 200, column: 11)
!976 = distinct !DILexicalBlock(scope: !977, file: !3, line: 199, column: 5)
!977 = distinct !DILexicalBlock(scope: !569, file: !3, line: 198, column: 3)
!978 = !DILocation(line: 200, column: 11, scope: !975)
!979 = !{!"shouldArchiveValueForKey:", !"", i1 false}
!980 = !DILocation(line: 200, column: 11, scope: !976)
!981 = !DILocation(line: 202, column: 11, scope: !982)
!982 = distinct !DILexicalBlock(scope: !975, file: !3, line: 201, column: 9)
!983 = !{!"encodeWithCoder:", !"", i1 false}
!984 = !DILocation(line: 203, column: 9, scope: !982)
!985 = !DILocation(line: 205, column: 1, scope: !563)
!986 = !DILocation(line: 0, scope: !572)
!987 = !DILocation(line: 209, column: 17, scope: !572)
!988 = !DILocation(line: 209, column: 16, scope: !572)
!989 = !{!"allocWithZone:", !"", i1 false}
!990 = !DILocation(line: 210, column: 8, scope: !991)
!991 = distinct !DILexicalBlock(scope: !572, file: !3, line: 210, column: 7)
!992 = !DILocation(line: 210, column: 7, scope: !572)
!993 = !DILocation(line: 0, scope: !579)
!994 = !DILocation(line: 218, column: 18, scope: !581)
!995 = !{!"valueForKey:", !"", i1 false}
!996 = !DILocation(line: 0, scope: !581)
!997 = !DILocation(line: 219, column: 11, scope: !998)
!998 = distinct !DILexicalBlock(scope: !581, file: !3, line: 219, column: 11)
!999 = !DILocation(line: 219, column: 11, scope: !581)
!1000 = !DILocation(line: 221, column: 11, scope: !1001)
!1001 = distinct !DILexicalBlock(scope: !998, file: !3, line: 220, column: 9)
!1002 = !DILocation(line: 223, column: 9, scope: !1001)
!1003 = !DILocation(line: 227, column: 1, scope: !572)
!1004 = distinct !DISubprogram(name: "-[CAAnimation dealloc]", scope: !3, file: !3, line: 229, type: !250, scopeLine: 229, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !328, retainedNodes: !1005)
!1005 = !{!1006, !1007}
!1006 = !DILocalVariable(name: "self", arg: 1, scope: !1004, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1007 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1004, type: !539, flags: DIFlagArtificial)
!1008 = !DILocation(line: 0, scope: !1004)
!1009 = !DILocation(line: 231, column: 4, scope: !1004)
!1010 = !DILocation(line: 231, column: 3, scope: !1004)
!1011 = !{!"release", !"", i1 false}
!1012 = !DILocation(line: 232, column: 4, scope: !1004)
!1013 = !DILocation(line: 232, column: 3, scope: !1004)
!1014 = !DILocation(line: 233, column: 4, scope: !1004)
!1015 = !DILocation(line: 233, column: 3, scope: !1004)
!1016 = !DILocation(line: 235, column: 3, scope: !1004)
!1017 = !{!"dealloc", !"NSObject", i1 false}
!1018 = !DILocation(line: 236, column: 1, scope: !1004)
!1019 = distinct !DISubprogram(name: "-[CAAnimation activeTimeWithTimeAuthorityLocalTime:]", scope: !3, file: !3, line: 238, type: !330, scopeLine: 238, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !329, retainedNodes: !1020)
!1020 = !{!1021, !1022, !1023, !1024}
!1021 = !DILocalVariable(name: "self", arg: 1, scope: !1019, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1022 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1019, type: !539, flags: DIFlagArtificial)
!1023 = !DILocalVariable(name: "timeAuthorityLocalTime", arg: 3, scope: !1019, file: !3, line: 238, type: !169)
!1024 = !DILocalVariable(name: "activeTime", scope: !1019, file: !3, line: 241, type: !169)
!1025 = !DILocation(line: 0, scope: !1019)
!1026 = !DILocation(line: 241, column: 57, scope: !1019)
!1027 = !{!"beginTime", !"", i1 false}
!1028 = !DILocation(line: 241, column: 55, scope: !1019)
!1029 = !DILocation(line: 241, column: 77, scope: !1019)
!1030 = !{!"speed", !"", i1 false}
!1031 = !DILocation(line: 241, column: 92, scope: !1019)
!1032 = !{!"timeOffset", !"", i1 false}
!1033 = !DILocation(line: 241, column: 90, scope: !1019)
!1034 = !DILocation(line: 244, column: 18, scope: !1035)
!1035 = distinct !DILexicalBlock(scope: !1019, file: !3, line: 244, column: 7)
!1036 = !DILocation(line: 244, column: 7, scope: !1019)
!1037 = !DILocation(line: 247, column: 3, scope: !1019)
!1038 = distinct !DISubprogram(name: "-[CAAnimation localTimeWithTimeAuthority:]", scope: !3, file: !3, line: 250, type: !333, scopeLine: 250, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !332, retainedNodes: !1039)
!1039 = !{!1040, !1041, !1042, !1043, !1044, !1045, !1050}
!1040 = !DILocalVariable(name: "self", arg: 1, scope: !1038, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1041 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1038, type: !539, flags: DIFlagArtificial)
!1042 = !DILocalVariable(name: "timeAuthority", arg: 3, scope: !1038, file: !3, line: 250, type: !18)
!1043 = !DILocalVariable(name: "timeAuthorityLocalTime", scope: !1038, file: !3, line: 253, type: !169)
!1044 = !DILocalVariable(name: "activeTime", scope: !1038, file: !3, line: 254, type: !169)
!1045 = !DILocalVariable(name: "k", scope: !1038, file: !3, line: 258, type: !1046)
!1046 = !DIDerivedType(tag: DW_TAG_typedef, name: "NSInteger", file: !46, line: 97, baseType: !1047)
!1047 = !DIDerivedType(tag: DW_TAG_typedef, name: "intptr_t", file: !1048, line: 87, baseType: !1049)
!1048 = !DIFile(filename: "/usr/include/stdint.h", directory: "", checksumkind: CSK_MD5, checksum: "a48e64edacc5b19f56c99745232c963c")
!1049 = !DIBasicType(name: "long", size: 64, encoding: DW_ATE_signed)
!1050 = !DILocalVariable(name: "localTime", scope: !1038, file: !3, line: 259, type: !169)
!1051 = !DILocation(line: 0, scope: !1038)
!1052 = !DILocation(line: 253, column: 43, scope: !1038)
!1053 = !{!"localTime", !"", i1 false}
!1054 = !DILocation(line: 254, column: 31, scope: !1038)
!1055 = !{!"activeTimeWithTimeAuthorityLocalTime:", !"", i1 false}
!1056 = !DILocation(line: 255, column: 7, scope: !1057)
!1057 = distinct !DILexicalBlock(scope: !1038, file: !3, line: 255, column: 7)
!1058 = !{!"duration", !"", i1 false}
!1059 = !DILocation(line: 255, column: 7, scope: !1038)
!1060 = !DILocation(line: 258, column: 36, scope: !1038)
!1061 = !DILocation(line: 258, column: 34, scope: !1038)
!1062 = !DILocation(line: 258, column: 17, scope: !1038)
!1063 = !DILocation(line: 259, column: 43, scope: !1038)
!1064 = !DILocation(line: 259, column: 47, scope: !1038)
!1065 = !DILocation(line: 259, column: 41, scope: !1038)
!1066 = !DILocation(line: 260, column: 7, scope: !1067)
!1067 = distinct !DILexicalBlock(scope: !1038, file: !3, line: 260, column: 7)
!1068 = !{!"autoreverses", !"", i1 false}
!1069 = !DILocation(line: 260, column: 27, scope: !1067)
!1070 = !DILocation(line: 262, column: 19, scope: !1071)
!1071 = distinct !DILexicalBlock(scope: !1067, file: !3, line: 261, column: 5)
!1072 = !DILocation(line: 262, column: 35, scope: !1071)
!1073 = !DILocation(line: 263, column: 5, scope: !1071)
!1074 = !DILocation(line: 266, column: 1, scope: !1038)
!1075 = distinct !DISubprogram(name: "-[CAAnimation runActionForKey:object:arguments:]", scope: !3, file: !3, line: 268, type: !336, scopeLine: 268, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !335, retainedNodes: !1076)
!1076 = !{!1077, !1078, !1079, !1080, !1081}
!1077 = !DILocalVariable(name: "self", arg: 1, scope: !1075, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1078 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1075, type: !539, flags: DIFlagArtificial)
!1079 = !DILocalVariable(name: "key", arg: 3, scope: !1075, file: !3, line: 268, type: !109)
!1080 = !DILocalVariable(name: "anObject", arg: 4, scope: !1075, file: !3, line: 269, type: !18)
!1081 = !DILocalVariable(name: "dict", arg: 5, scope: !1075, file: !3, line: 270, type: !117)
!1082 = !DILocation(line: 0, scope: !1075)
!1083 = !DILocation(line: 272, column: 3, scope: !1075)
!1084 = !{!"addAnimation:forKey:", !"", i1 false}
!1085 = !DILocation(line: 273, column: 1, scope: !1075)
!1086 = distinct !DISubprogram(name: "-[CAAnimation delegate]", scope: !3, file: !3, line: 47, type: !263, scopeLine: 47, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !338, retainedNodes: !1087)
!1087 = !{!1088, !1089}
!1088 = !DILocalVariable(name: "self", arg: 1, scope: !1086, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1089 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1086, type: !539, flags: DIFlagArtificial)
!1090 = !DILocation(line: 0, scope: !1086)
!1091 = !DILocation(line: 47, column: 1, scope: !1086)
!1092 = distinct !DISubprogram(name: "-[CAAnimation setDelegate:]", scope: !3, file: !3, line: 47, type: !340, scopeLine: 47, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !339, retainedNodes: !1093)
!1093 = !{!1094, !1095, !1096}
!1094 = !DILocalVariable(name: "self", arg: 1, scope: !1092, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1095 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1092, type: !539, flags: DIFlagArtificial)
!1096 = !DILocalVariable(name: "delegate", arg: 3, scope: !1092, type: !18)
!1097 = !DILocation(line: 0, scope: !1092)
!1098 = !DILocation(line: 47, column: 1, scope: !1092)
!1099 = !DILocation(line: 47, column: 13, scope: !1092)
!1100 = distinct !DISubprogram(name: "-[CAAnimation timingFunction]", scope: !3, file: !3, line: 48, type: !343, scopeLine: 48, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !342, retainedNodes: !1101)
!1101 = !{!1102, !1103}
!1102 = !DILocalVariable(name: "self", arg: 1, scope: !1100, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1103 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1100, type: !539, flags: DIFlagArtificial)
!1104 = !DILocation(line: 0, scope: !1100)
!1105 = !DILocation(line: 48, column: 1, scope: !1100)
!1106 = distinct !DISubprogram(name: "-[CAAnimation setTimingFunction:]", scope: !3, file: !3, line: 48, type: !346, scopeLine: 48, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !345, retainedNodes: !1107)
!1107 = !{!1108, !1109, !1110}
!1108 = !DILocalVariable(name: "self", arg: 1, scope: !1106, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1109 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1106, type: !539, flags: DIFlagArtificial)
!1110 = !DILocalVariable(name: "timingFunction", arg: 3, scope: !1106, type: !202)
!1111 = !DILocation(line: 0, scope: !1106)
!1112 = !DILocation(line: 48, column: 1, scope: !1106)
!1113 = !DILocation(line: 48, column: 13, scope: !1106)
!1114 = distinct !DISubprogram(name: "-[CAAnimation removedOnCompletion]", scope: !3, file: !3, line: 49, type: !349, scopeLine: 49, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !348, retainedNodes: !1115)
!1115 = !{!1116, !1117}
!1116 = !DILocalVariable(name: "self", arg: 1, scope: !1114, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1117 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1114, type: !539, flags: DIFlagArtificial)
!1118 = !DILocation(line: 0, scope: !1114)
!1119 = !DILocation(line: 49, column: 1, scope: !1114)
!1120 = distinct !DISubprogram(name: "-[CAAnimation setRemovedOnCompletion:]", scope: !3, file: !3, line: 49, type: !352, scopeLine: 49, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !351, retainedNodes: !1121)
!1121 = !{!1122, !1123, !1124}
!1122 = !DILocalVariable(name: "self", arg: 1, scope: !1120, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1123 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1120, type: !539, flags: DIFlagArtificial)
!1124 = !DILocalVariable(name: "removedOnCompletion", arg: 3, scope: !1120, type: !84)
!1125 = !DILocation(line: 0, scope: !1120)
!1126 = !DILocation(line: 49, column: 1, scope: !1120)
!1127 = !DILocation(line: 49, column: 13, scope: !1120)
!1128 = distinct !DISubprogram(name: "-[CAAnimation beginTime]", scope: !3, file: !3, line: 51, type: !355, scopeLine: 51, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !354, retainedNodes: !1129)
!1129 = !{!1130, !1131}
!1130 = !DILocalVariable(name: "self", arg: 1, scope: !1128, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1131 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1128, type: !539, flags: DIFlagArtificial)
!1132 = !DILocation(line: 0, scope: !1128)
!1133 = !DILocation(line: 51, column: 1, scope: !1128)
!1134 = !DILocation(line: 51, column: 13, scope: !1128)
!1135 = distinct !DISubprogram(name: "-[CAAnimation timeOffset]", scope: !3, file: !3, line: 52, type: !355, scopeLine: 52, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !357, retainedNodes: !1136)
!1136 = !{!1137, !1138}
!1137 = !DILocalVariable(name: "self", arg: 1, scope: !1135, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1138 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1135, type: !539, flags: DIFlagArtificial)
!1139 = !DILocation(line: 0, scope: !1135)
!1140 = !DILocation(line: 52, column: 1, scope: !1135)
!1141 = !DILocation(line: 52, column: 13, scope: !1135)
!1142 = distinct !DISubprogram(name: "-[CAAnimation setTimeOffset:]", scope: !3, file: !3, line: 52, type: !239, scopeLine: 52, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !358, retainedNodes: !1143)
!1143 = !{!1144, !1145, !1146}
!1144 = !DILocalVariable(name: "self", arg: 1, scope: !1142, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1145 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1142, type: !539, flags: DIFlagArtificial)
!1146 = !DILocalVariable(name: "timeOffset", arg: 3, scope: !1142, type: !169)
!1147 = !DILocation(line: 0, scope: !1142)
!1148 = !DILocation(line: 52, column: 1, scope: !1142)
!1149 = !DILocation(line: 52, column: 13, scope: !1142)
!1150 = distinct !DISubprogram(name: "-[CAAnimation repeatCount]", scope: !3, file: !3, line: 53, type: !360, scopeLine: 53, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !359, retainedNodes: !1151)
!1151 = !{!1152, !1153}
!1152 = !DILocalVariable(name: "self", arg: 1, scope: !1150, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1153 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1150, type: !539, flags: DIFlagArtificial)
!1154 = !DILocation(line: 0, scope: !1150)
!1155 = !DILocation(line: 53, column: 1, scope: !1150)
!1156 = !DILocation(line: 53, column: 13, scope: !1150)
!1157 = distinct !DISubprogram(name: "-[CAAnimation setRepeatCount:]", scope: !3, file: !3, line: 53, type: !363, scopeLine: 53, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !362, retainedNodes: !1158)
!1158 = !{!1159, !1160, !1161}
!1159 = !DILocalVariable(name: "self", arg: 1, scope: !1157, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1160 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1157, type: !539, flags: DIFlagArtificial)
!1161 = !DILocalVariable(name: "repeatCount", arg: 3, scope: !1157, type: !82)
!1162 = !DILocation(line: 0, scope: !1157)
!1163 = !DILocation(line: 53, column: 1, scope: !1157)
!1164 = !DILocation(line: 53, column: 13, scope: !1157)
!1165 = distinct !DISubprogram(name: "-[CAAnimation repeatDuration]", scope: !3, file: !3, line: 54, type: !360, scopeLine: 54, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !365, retainedNodes: !1166)
!1166 = !{!1167, !1168}
!1167 = !DILocalVariable(name: "self", arg: 1, scope: !1165, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1168 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1165, type: !539, flags: DIFlagArtificial)
!1169 = !DILocation(line: 0, scope: !1165)
!1170 = !DILocation(line: 54, column: 1, scope: !1165)
!1171 = !DILocation(line: 54, column: 13, scope: !1165)
!1172 = distinct !DISubprogram(name: "-[CAAnimation setRepeatDuration:]", scope: !3, file: !3, line: 54, type: !363, scopeLine: 54, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !366, retainedNodes: !1173)
!1173 = !{!1174, !1175, !1176}
!1174 = !DILocalVariable(name: "self", arg: 1, scope: !1172, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1175 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1172, type: !539, flags: DIFlagArtificial)
!1176 = !DILocalVariable(name: "repeatDuration", arg: 3, scope: !1172, type: !82)
!1177 = !DILocation(line: 0, scope: !1172)
!1178 = !DILocation(line: 54, column: 1, scope: !1172)
!1179 = !DILocation(line: 54, column: 13, scope: !1172)
!1180 = distinct !DISubprogram(name: "-[CAAnimation autoreverses]", scope: !3, file: !3, line: 55, type: !349, scopeLine: 55, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !367, retainedNodes: !1181)
!1181 = !{!1182, !1183}
!1182 = !DILocalVariable(name: "self", arg: 1, scope: !1180, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1183 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1180, type: !539, flags: DIFlagArtificial)
!1184 = !DILocation(line: 0, scope: !1180)
!1185 = !DILocation(line: 55, column: 1, scope: !1180)
!1186 = distinct !DISubprogram(name: "-[CAAnimation setAutoreverses:]", scope: !3, file: !3, line: 55, type: !352, scopeLine: 55, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !368, retainedNodes: !1187)
!1187 = !{!1188, !1189, !1190}
!1188 = !DILocalVariable(name: "self", arg: 1, scope: !1186, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1189 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1186, type: !539, flags: DIFlagArtificial)
!1190 = !DILocalVariable(name: "autoreverses", arg: 3, scope: !1186, type: !84)
!1191 = !DILocation(line: 0, scope: !1186)
!1192 = !DILocation(line: 55, column: 1, scope: !1186)
!1193 = !DILocation(line: 55, column: 13, scope: !1186)
!1194 = distinct !DISubprogram(name: "-[CAAnimation fillMode]", scope: !3, file: !3, line: 56, type: !370, scopeLine: 56, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !369, retainedNodes: !1195)
!1195 = !{!1196, !1197}
!1196 = !DILocalVariable(name: "self", arg: 1, scope: !1194, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1197 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1194, type: !539, flags: DIFlagArtificial)
!1198 = !DILocation(line: 0, scope: !1194)
!1199 = !DILocation(line: 56, column: 1, scope: !1194)
!1200 = distinct !DISubprogram(name: "-[CAAnimation setFillMode:]", scope: !3, file: !3, line: 56, type: !373, scopeLine: 56, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !372, retainedNodes: !1201)
!1201 = !{!1202, !1203, !1204}
!1202 = !DILocalVariable(name: "self", arg: 1, scope: !1200, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1203 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1200, type: !539, flags: DIFlagArtificial)
!1204 = !DILocalVariable(name: "fillMode", arg: 3, scope: !1200, type: !109)
!1205 = !DILocation(line: 0, scope: !1200)
!1206 = !DILocation(line: 56, column: 1, scope: !1200)
!1207 = !DILocation(line: 56, column: 13, scope: !1200)
!1208 = distinct !DISubprogram(name: "-[CAAnimation duration]", scope: !3, file: !3, line: 57, type: !355, scopeLine: 57, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !375, retainedNodes: !1209)
!1209 = !{!1210, !1211}
!1210 = !DILocalVariable(name: "self", arg: 1, scope: !1208, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1211 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1208, type: !539, flags: DIFlagArtificial)
!1212 = !DILocation(line: 0, scope: !1208)
!1213 = !DILocation(line: 57, column: 1, scope: !1208)
!1214 = !DILocation(line: 57, column: 13, scope: !1208)
!1215 = distinct !DISubprogram(name: "-[CAAnimation setDuration:]", scope: !3, file: !3, line: 57, type: !239, scopeLine: 57, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !376, retainedNodes: !1216)
!1216 = !{!1217, !1218, !1219}
!1217 = !DILocalVariable(name: "self", arg: 1, scope: !1215, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1218 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1215, type: !539, flags: DIFlagArtificial)
!1219 = !DILocalVariable(name: "duration", arg: 3, scope: !1215, type: !169)
!1220 = !DILocation(line: 0, scope: !1215)
!1221 = !DILocation(line: 57, column: 1, scope: !1215)
!1222 = !DILocation(line: 57, column: 13, scope: !1215)
!1223 = distinct !DISubprogram(name: "-[CAAnimation speed]", scope: !3, file: !3, line: 58, type: !360, scopeLine: 58, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !377, retainedNodes: !1224)
!1224 = !{!1225, !1226}
!1225 = !DILocalVariable(name: "self", arg: 1, scope: !1223, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1226 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1223, type: !539, flags: DIFlagArtificial)
!1227 = !DILocation(line: 0, scope: !1223)
!1228 = !DILocation(line: 58, column: 1, scope: !1223)
!1229 = !DILocation(line: 58, column: 13, scope: !1223)
!1230 = distinct !DISubprogram(name: "-[CAAnimation setSpeed:]", scope: !3, file: !3, line: 58, type: !363, scopeLine: 58, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !378, retainedNodes: !1231)
!1231 = !{!1232, !1233, !1234}
!1232 = !DILocalVariable(name: "self", arg: 1, scope: !1230, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1233 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1230, type: !539, flags: DIFlagArtificial)
!1234 = !DILocalVariable(name: "speed", arg: 3, scope: !1230, type: !82)
!1235 = !DILocation(line: 0, scope: !1230)
!1236 = !DILocation(line: 58, column: 1, scope: !1230)
!1237 = !DILocation(line: 58, column: 13, scope: !1230)
!1238 = distinct !DISubprogram(name: "-[CAAnimation layers]", scope: !3, file: !3, line: 59, type: !380, scopeLine: 59, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !379, retainedNodes: !1239)
!1239 = !{!1240, !1241}
!1240 = !DILocalVariable(name: "self", arg: 1, scope: !1238, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1241 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1238, type: !539, flags: DIFlagArtificial)
!1242 = !DILocation(line: 0, scope: !1238)
!1243 = !DILocation(line: 59, column: 1, scope: !1238)
!1244 = distinct !DISubprogram(name: "-[CAAnimation setLayers:]", scope: !3, file: !3, line: 59, type: !383, scopeLine: 59, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !382, retainedNodes: !1245)
!1245 = !{!1246, !1247, !1248}
!1246 = !DILocalVariable(name: "self", arg: 1, scope: !1244, type: !537, flags: DIFlagArtificial | DIFlagObjectPointer)
!1247 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1244, type: !539, flags: DIFlagArtificial)
!1248 = !DILocalVariable(name: "layers", arg: 3, scope: !1244, type: !195)
!1249 = !DILocation(line: 0, scope: !1244)
!1250 = !DILocation(line: 59, column: 1, scope: !1244)
!1251 = !DILocation(line: 59, column: 13, scope: !1244)
!1252 = distinct !DISubprogram(name: "+[CAPropertyAnimation animationWithKeyPath:]", scope: !3, file: !3, line: 290, type: !257, scopeLine: 290, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !1253)
!1253 = !{!1254, !1255, !1256}
!1254 = !DILocalVariable(name: "self", arg: 1, scope: !1252, type: !14, flags: DIFlagArtificial | DIFlagObjectPointer)
!1255 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1252, type: !539, flags: DIFlagArtificial)
!1256 = !DILocalVariable(name: "path", arg: 3, scope: !1252, file: !3, line: 290, type: !109)
!1257 = !DILocation(line: 0, scope: !1252)
!1258 = !DILocation(line: 292, column: 12, scope: !1252)
!1259 = !DILocation(line: 292, column: 11, scope: !1252)
!1260 = !{!"initWithKeyPath:", !"", i1 false}
!1261 = !DILocation(line: 292, column: 10, scope: !1252)
!1262 = !DILocation(line: 292, column: 3, scope: !1252)
!1263 = distinct !DISubprogram(name: "+[CAPropertyAnimation defaultValueForKey:]", scope: !3, file: !3, line: 295, type: !257, scopeLine: 295, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !1264)
!1264 = !{!1265, !1266, !1267}
!1265 = !DILocalVariable(name: "self", arg: 1, scope: !1263, type: !14, flags: DIFlagArtificial | DIFlagObjectPointer)
!1266 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1263, type: !539, flags: DIFlagArtificial)
!1267 = !DILocalVariable(name: "key", arg: 3, scope: !1263, file: !3, line: 295, type: !109)
!1268 = !DILocation(line: 0, scope: !1263)
!1269 = !DILocation(line: 297, column: 7, scope: !1270)
!1270 = distinct !DILexicalBlock(scope: !1263, file: !3, line: 297, column: 7)
!1271 = !DILocation(line: 297, column: 7, scope: !1263)
!1272 = !DILocation(line: 301, column: 7, scope: !1273)
!1273 = distinct !DILexicalBlock(scope: !1263, file: !3, line: 301, column: 7)
!1274 = !DILocation(line: 301, column: 7, scope: !1263)
!1275 = !DILocation(line: 305, column: 7, scope: !1276)
!1276 = distinct !DILexicalBlock(scope: !1263, file: !3, line: 305, column: 7)
!1277 = !DILocation(line: 305, column: 7, scope: !1263)
!1278 = !DILocation(line: 309, column: 7, scope: !1279)
!1279 = distinct !DILexicalBlock(scope: !1263, file: !3, line: 309, column: 7)
!1280 = !DILocation(line: 309, column: 7, scope: !1263)
!1281 = !DILocation(line: 314, column: 10, scope: !1263)
!1282 = !{!"defaultValueForKey:", !"CAAnimation", i1 true}
!1283 = !DILocation(line: 314, column: 3, scope: !1263)
!1284 = !DILocation(line: 315, column: 1, scope: !1263)
!1285 = !DILocation(line: 0, scope: !585)
!1286 = !DILocation(line: 320, column: 10, scope: !585)
!1287 = !{!"init", !"CAAnimation", i1 false}
!1288 = !DILocation(line: 321, column: 8, scope: !1289)
!1289 = distinct !DILexicalBlock(scope: !585, file: !3, line: 321, column: 7)
!1290 = !DILocation(line: 321, column: 7, scope: !585)
!1291 = !DILocation(line: 324, column: 3, scope: !585)
!1292 = !{!"setKeyPath:", !"", i1 false}
!1293 = !DILocation(line: 0, scope: !592)
!1294 = !DILocation(line: 329, column: 26, scope: !594)
!1295 = !DILocation(line: 329, column: 25, scope: !594)
!1296 = !DILocation(line: 0, scope: !594)
!1297 = !DILocation(line: 330, column: 11, scope: !1298)
!1298 = distinct !DILexicalBlock(scope: !594, file: !3, line: 330, column: 11)
!1299 = !DILocation(line: 330, column: 11, scope: !594)
!1300 = !DILocation(line: 332, column: 11, scope: !1301)
!1301 = distinct !DILexicalBlock(scope: !1298, file: !3, line: 331, column: 9)
!1302 = !DILocation(line: 334, column: 9, scope: !1301)
!1303 = !DILocation(line: 338, column: 1, scope: !585)
!1304 = !DILocation(line: 0, scope: !601)
!1305 = !DILocation(line: 342, column: 10, scope: !601)
!1306 = !DILocation(line: 343, column: 8, scope: !1307)
!1307 = distinct !DILexicalBlock(scope: !601, file: !3, line: 343, column: 7)
!1308 = !DILocation(line: 343, column: 7, scope: !601)
!1309 = !DILocation(line: 0, scope: !607)
!1310 = !DILocation(line: 349, column: 11, scope: !1311)
!1311 = distinct !DILexicalBlock(scope: !1312, file: !3, line: 349, column: 11)
!1312 = distinct !DILexicalBlock(scope: !1313, file: !3, line: 348, column: 5)
!1313 = distinct !DILexicalBlock(scope: !607, file: !3, line: 347, column: 3)
!1314 = !DILocation(line: 349, column: 11, scope: !1312)
!1315 = !DILocation(line: 351, column: 27, scope: !1316)
!1316 = distinct !DILexicalBlock(scope: !1311, file: !3, line: 350, column: 9)
!1317 = !DILocation(line: 351, column: 11, scope: !1316)
!1318 = !DILocation(line: 353, column: 9, scope: !1316)
!1319 = !DILocation(line: 357, column: 1, scope: !601)
!1320 = !DILocation(line: 0, scope: !610)
!1321 = !DILocation(line: 0, scope: !616)
!1322 = !DILocation(line: 364, column: 12, scope: !1323)
!1323 = distinct !DILexicalBlock(scope: !1324, file: !3, line: 364, column: 11)
!1324 = distinct !DILexicalBlock(scope: !1325, file: !3, line: 363, column: 5)
!1325 = distinct !DILexicalBlock(scope: !616, file: !3, line: 362, column: 3)
!1326 = !DILocation(line: 364, column: 11, scope: !1323)
!1327 = !DILocation(line: 364, column: 11, scope: !1324)
!1328 = !DILocation(line: 366, column: 11, scope: !1329)
!1329 = distinct !DILexicalBlock(scope: !1323, file: !3, line: 365, column: 9)
!1330 = !DILocation(line: 367, column: 9, scope: !1329)
!1331 = !DILocation(line: 369, column: 1, scope: !610)
!1332 = !DILocation(line: 0, scope: !619)
!1333 = !DILocation(line: 373, column: 16, scope: !619)
!1334 = !{!"copyWithZone:", !"CAAnimation", i1 false}
!1335 = !DILocation(line: 374, column: 8, scope: !1336)
!1336 = distinct !DILexicalBlock(scope: !619, file: !3, line: 374, column: 7)
!1337 = !DILocation(line: 374, column: 7, scope: !619)
!1338 = !DILocation(line: 0, scope: !626)
!1339 = !DILocation(line: 380, column: 18, scope: !628)
!1340 = !DILocation(line: 0, scope: !628)
!1341 = !DILocation(line: 381, column: 11, scope: !1342)
!1342 = distinct !DILexicalBlock(scope: !628, file: !3, line: 381, column: 11)
!1343 = !DILocation(line: 381, column: 11, scope: !628)
!1344 = !DILocation(line: 383, column: 11, scope: !1345)
!1345 = distinct !DILexicalBlock(scope: !1342, file: !3, line: 382, column: 9)
!1346 = !DILocation(line: 385, column: 9, scope: !1345)
!1347 = !DILocation(line: 389, column: 1, scope: !619)
!1348 = distinct !DISubprogram(name: "-[CAPropertyAnimation dealloc]", scope: !3, file: !3, line: 391, type: !412, scopeLine: 391, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !411, retainedNodes: !1349)
!1349 = !{!1350, !1351}
!1350 = !DILocalVariable(name: "self", arg: 1, scope: !1348, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!1351 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1348, type: !539, flags: DIFlagArtificial)
!1352 = !DILocation(line: 0, scope: !1348)
!1353 = !DILocation(line: 393, column: 4, scope: !1348)
!1354 = !DILocation(line: 393, column: 3, scope: !1348)
!1355 = !DILocation(line: 394, column: 4, scope: !1348)
!1356 = !DILocation(line: 394, column: 3, scope: !1348)
!1357 = !DILocation(line: 395, column: 3, scope: !1348)
!1358 = !{!"dealloc", !"CAAnimation", i1 false}
!1359 = !DILocation(line: 396, column: 1, scope: !1348)
!1360 = distinct !DISubprogram(name: "-[CAPropertyAnimation applyToLayer:]", scope: !3, file: !3, line: 398, type: !415, scopeLine: 398, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !414, retainedNodes: !1361)
!1361 = !{!1362, !1363, !1364, !1365, !1366, !1367}
!1362 = !DILocalVariable(name: "self", arg: 1, scope: !1360, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!1363 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1360, type: !539, flags: DIFlagArtificial)
!1364 = !DILocalVariable(name: "layer", arg: 3, scope: !1360, file: !3, line: 398, type: !5)
!1365 = !DILocalVariable(name: "theTime", scope: !1360, file: !3, line: 400, type: !169)
!1366 = !DILocalVariable(name: "modelValue", scope: !1360, file: !3, line: 409, type: !18)
!1367 = !DILocalVariable(name: "calculatedValue", scope: !1360, file: !3, line: 410, type: !18)
!1368 = !DILocation(line: 0, scope: !1360)
!1369 = !DILocation(line: 400, column: 62, scope: !1360)
!1370 = !{!"modelLayer", !"", i1 false}
!1371 = !DILocation(line: 400, column: 28, scope: !1360)
!1372 = !{!"localTimeWithTimeAuthority:", !"", i1 false}
!1373 = !DILocation(line: 404, column: 15, scope: !1374)
!1374 = distinct !DILexicalBlock(scope: !1360, file: !3, line: 404, column: 7)
!1375 = !DILocation(line: 404, column: 7, scope: !1360)
!1376 = !DILocation(line: 409, column: 20, scope: !1360)
!1377 = !DILocation(line: 409, column: 56, scope: !1360)
!1378 = !{!"keyPath", !"", i1 false}
!1379 = !DILocation(line: 409, column: 19, scope: !1360)
!1380 = !{!"valueForKeyPath:", !"", i1 false}
!1381 = !DILocation(line: 410, column: 24, scope: !1360)
!1382 = !{!"calculatedAnimationValueAtTime:onLayer:", !"", i1 false}
!1383 = !DILocation(line: 412, column: 8, scope: !1384)
!1384 = distinct !DILexicalBlock(scope: !1360, file: !3, line: 412, column: 7)
!1385 = !DILocation(line: 412, column: 7, scope: !1360)
!1386 = !DILocation(line: 419, column: 48, scope: !1360)
!1387 = !DILocation(line: 419, column: 3, scope: !1360)
!1388 = !{!"setValue:forKeyPath:", !"", i1 false}
!1389 = !DILocation(line: 420, column: 1, scope: !1360)
!1390 = distinct !DISubprogram(name: "-[CAPropertyAnimation calculatedAnimationValueAtTime:onLayer:]", scope: !3, file: !3, line: 422, type: !418, scopeLine: 422, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !417, retainedNodes: !1391)
!1391 = !{!1392, !1393, !1394, !1395}
!1392 = !DILocalVariable(name: "self", arg: 1, scope: !1390, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!1393 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1390, type: !539, flags: DIFlagArtificial)
!1394 = !DILocalVariable(name: "time", arg: 3, scope: !1390, file: !3, line: 422, type: !169)
!1395 = !DILocalVariable(name: "layer", arg: 4, scope: !1390, file: !3, line: 423, type: !5)
!1396 = !DILocation(line: 0, scope: !1390)
!1397 = !DILocation(line: 426, column: 3, scope: !1390)
!1398 = distinct !DISubprogram(name: "-[CAPropertyAnimation isAdditive]", scope: !3, file: !3, line: 285, type: !421, scopeLine: 285, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !420, retainedNodes: !1399)
!1399 = !{!1400, !1401}
!1400 = !DILocalVariable(name: "self", arg: 1, scope: !1398, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!1401 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1398, type: !539, flags: DIFlagArtificial)
!1402 = !DILocation(line: 0, scope: !1398)
!1403 = !DILocation(line: 285, column: 1, scope: !1398)
!1404 = distinct !DISubprogram(name: "-[CAPropertyAnimation setAdditive:]", scope: !3, file: !3, line: 285, type: !424, scopeLine: 285, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !423, retainedNodes: !1405)
!1405 = !{!1406, !1407, !1408}
!1406 = !DILocalVariable(name: "self", arg: 1, scope: !1404, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!1407 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1404, type: !539, flags: DIFlagArtificial)
!1408 = !DILocalVariable(name: "additive", arg: 3, scope: !1404, type: !84)
!1409 = !DILocation(line: 0, scope: !1404)
!1410 = !DILocation(line: 285, column: 1, scope: !1404)
!1411 = !DILocation(line: 285, column: 13, scope: !1404)
!1412 = distinct !DISubprogram(name: "-[CAPropertyAnimation isCumulative]", scope: !3, file: !3, line: 286, type: !421, scopeLine: 286, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !426, retainedNodes: !1413)
!1413 = !{!1414, !1415}
!1414 = !DILocalVariable(name: "self", arg: 1, scope: !1412, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!1415 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1412, type: !539, flags: DIFlagArtificial)
!1416 = !DILocation(line: 0, scope: !1412)
!1417 = !DILocation(line: 286, column: 1, scope: !1412)
!1418 = distinct !DISubprogram(name: "-[CAPropertyAnimation setCumulative:]", scope: !3, file: !3, line: 286, type: !424, scopeLine: 286, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !427, retainedNodes: !1419)
!1419 = !{!1420, !1421, !1422}
!1420 = !DILocalVariable(name: "self", arg: 1, scope: !1418, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!1421 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1418, type: !539, flags: DIFlagArtificial)
!1422 = !DILocalVariable(name: "cumulative", arg: 3, scope: !1418, type: !84)
!1423 = !DILocation(line: 0, scope: !1418)
!1424 = !DILocation(line: 286, column: 1, scope: !1418)
!1425 = !DILocation(line: 286, column: 13, scope: !1418)
!1426 = distinct !DISubprogram(name: "-[CAPropertyAnimation keyPath]", scope: !3, file: !3, line: 287, type: !429, scopeLine: 287, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !428, retainedNodes: !1427)
!1427 = !{!1428, !1429}
!1428 = !DILocalVariable(name: "self", arg: 1, scope: !1426, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!1429 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1426, type: !539, flags: DIFlagArtificial)
!1430 = !DILocation(line: 0, scope: !1426)
!1431 = !DILocation(line: 287, column: 1, scope: !1426)
!1432 = distinct !DISubprogram(name: "-[CAPropertyAnimation setKeyPath:]", scope: !3, file: !3, line: 287, type: !432, scopeLine: 287, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !431, retainedNodes: !1433)
!1433 = !{!1434, !1435, !1436}
!1434 = !DILocalVariable(name: "self", arg: 1, scope: !1432, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!1435 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1432, type: !539, flags: DIFlagArtificial)
!1436 = !DILocalVariable(name: "keyPath", arg: 3, scope: !1432, type: !109)
!1437 = !DILocation(line: 0, scope: !1432)
!1438 = !DILocation(line: 287, column: 1, scope: !1432)
!1439 = !DILocation(line: 287, column: 13, scope: !1432)
!1440 = distinct !DISubprogram(name: "-[CAPropertyAnimation valueFunction]", scope: !3, file: !3, line: 288, type: !435, scopeLine: 288, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !434, retainedNodes: !1441)
!1441 = !{!1442, !1443}
!1442 = !DILocalVariable(name: "self", arg: 1, scope: !1440, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!1443 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1440, type: !539, flags: DIFlagArtificial)
!1444 = !DILocation(line: 0, scope: !1440)
!1445 = !DILocation(line: 288, column: 1, scope: !1440)
!1446 = distinct !DISubprogram(name: "-[CAPropertyAnimation setValueFunction:]", scope: !3, file: !3, line: 288, type: !438, scopeLine: 288, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !437, retainedNodes: !1447)
!1447 = !{!1448, !1449, !1450}
!1448 = !DILocalVariable(name: "self", arg: 1, scope: !1446, type: !588, flags: DIFlagArtificial | DIFlagObjectPointer)
!1449 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1446, type: !539, flags: DIFlagArtificial)
!1450 = !DILocalVariable(name: "valueFunction", arg: 3, scope: !1446, type: !392)
!1451 = !DILocation(line: 0, scope: !1446)
!1452 = !DILocation(line: 288, column: 1, scope: !1446)
!1453 = !DILocation(line: 288, column: 13, scope: !1446)
!1454 = distinct !DISubprogram(name: "-[CABasicAnimation dealloc]", scope: !3, file: !3, line: 615, type: !450, scopeLine: 615, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !449, retainedNodes: !1455)
!1455 = !{!1456, !1457}
!1456 = !DILocalVariable(name: "self", arg: 1, scope: !1454, type: !635, flags: DIFlagArtificial | DIFlagObjectPointer)
!1457 = !DILocalVariable(name: "_cmd", arg: 2, scope: !1454, type: !539, flags: DIFlagArtificial)
!1458 = !DILocation(line: 0, scope: !1454)
!1459 = !DILocation(line: 617, column: 4, scope: !1454)
!1460 = !DILocation(line: 617, column: 3, scope: !1454)
!1461 = !DILocation(line: 618, column: 4, scope: !1454)
!1462 = !DILocation(line: 618, column: 3, scope: !1454)
!1463 = !DILocation(line: 619, column: 4, scope: !1454)
!1464 = !DILocation(line: 619, column: 3, scope: !1454)
!1465 = !DILocation(line: 621, column: 3, scope: !1454)
!1466 = !{!"dealloc", !"CAPropertyAnimation", i1 false}
!1467 = !DILocation(line: 622, column: 1, scope: !1454)
!1468 = distinct !DIAssignID()
!1469 = !DILocation(line: 0, scope: !657)
!1470 = distinct !DIAssignID()
!1471 = distinct !DIAssignID()
!1472 = !DILocation(line: 0, scope: !666)
!1473 = distinct !DIAssignID()
!1474 = distinct !DIAssignID()
!1475 = distinct !DIAssignID()
!1476 = !DILocation(line: 0, scope: !671)
!1477 = distinct !DIAssignID()
!1478 = distinct !DIAssignID()
!1479 = !DILocation(line: 0, scope: !680)
!1480 = distinct !DIAssignID()
!1481 = distinct !DIAssignID()
!1482 = distinct !DIAssignID()
!1483 = !DILocation(line: 0, scope: !685)
!1484 = distinct !DIAssignID()
!1485 = distinct !DIAssignID()
!1486 = !DILocation(line: 0, scope: !689)
!1487 = distinct !DIAssignID()
!1488 = distinct !DIAssignID()
!1489 = distinct !DIAssignID()
!1490 = !DILocation(line: 0, scope: !694)
!1491 = distinct !DIAssignID()
!1492 = distinct !DIAssignID()
!1493 = distinct !DIAssignID()
!1494 = !DILocation(line: 0, scope: !699)
!1495 = distinct !DIAssignID()
!1496 = distinct !DIAssignID()
!1497 = distinct !DIAssignID()
!1498 = distinct !DIAssignID()
!1499 = distinct !DIAssignID()
!1500 = distinct !DIAssignID()
!1501 = distinct !DIAssignID()
!1502 = distinct !DIAssignID()
!1503 = !DILocation(line: 648, column: 30, scope: !632)
!1504 = !DILocation(line: 0, scope: !740)
!1505 = !DILocation(line: 0, scope: !632)
!1506 = !DILocation(line: 648, column: 28, scope: !632)
!1507 = !DILocation(line: 648, column: 20, scope: !632)
!1508 = !DILocation(line: 651, column: 7, scope: !1509)
!1509 = distinct !DILexicalBlock(scope: !632, file: !3, line: 651, column: 7)
!1510 = !{!"timingFunction", !"", i1 false}
!1511 = !DILocation(line: 651, column: 7, scope: !632)
!1512 = !DILocation(line: 653, column: 19, scope: !1513)
!1513 = distinct !DILexicalBlock(scope: !1509, file: !3, line: 652, column: 5)
!1514 = !DILocation(line: 653, column: 18, scope: !1513)
!1515 = !DILocation(line: 653, column: 55, scope: !1513)
!1516 = !{!"evaluateYAtX:", !"", i1 false}
!1517 = !DILocation(line: 654, column: 5, scope: !1513)
!1518 = !DILocation(line: 657, column: 18, scope: !632)
!1519 = !DILocation(line: 658, column: 16, scope: !632)
!1520 = !DILocation(line: 660, column: 8, scope: !1521)
!1521 = distinct !DILexicalBlock(scope: !632, file: !3, line: 660, column: 7)
!1522 = !DILocation(line: 660, column: 7, scope: !632)
!1523 = !DILocation(line: 661, column: 16, scope: !1521)
!1524 = !DILocation(line: 661, column: 52, scope: !1521)
!1525 = !DILocation(line: 661, column: 15, scope: !1521)
!1526 = !DILocation(line: 661, column: 5, scope: !1521)
!1527 = !DILocation(line: 663, column: 33, scope: !644)
!1528 = !{!"class", !"NSNumber", i1 true}
!1529 = !DILocation(line: 663, column: 7, scope: !644)
!1530 = !{!"isKindOfClass:", !"", i1 false}
!1531 = !DILocation(line: 663, column: 51, scope: !644)
!1532 = !DILocation(line: 664, column: 31, scope: !644)
!1533 = !DILocation(line: 664, column: 7, scope: !644)
!1534 = !DILocation(line: 663, column: 7, scope: !632)
!1535 = !DILocation(line: 668, column: 20, scope: !643)
!1536 = !{!"floatValue", !"", i1 false}
!1537 = !DILocation(line: 671, column: 41, scope: !643)
!1538 = !DILocation(line: 0, scope: !643)
!1539 = !DILocation(line: 669, column: 18, scope: !643)
!1540 = !DILocation(line: 671, column: 47, scope: !643)
!1541 = !DILocation(line: 671, column: 51, scope: !643)
!1542 = !DILocalVariable(name: "from", arg: 1, scope: !1543, file: !3, line: 441, type: !45)
!1543 = distinct !DISubprogram(name: "linearInterpolation", scope: !3, file: !3, line: 441, type: !1544, scopeLine: 442, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !1546)
!1544 = !DISubroutineType(types: !1545)
!1545 = !{!45, !45, !45, !45}
!1546 = !{!1542, !1547, !1548}
!1547 = !DILocalVariable(name: "to", arg: 2, scope: !1543, file: !3, line: 441, type: !45)
!1548 = !DILocalVariable(name: "fraction", arg: 3, scope: !1543, file: !3, line: 441, type: !45)
!1549 = !DILocation(line: 0, scope: !1543, inlinedAt: !1550)
!1550 = distinct !DILocation(line: 671, column: 21, scope: !643)
!1551 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1550)
!1552 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1550)
!1553 = !DILocation(line: 671, column: 21, scope: !643)
!1554 = !DILocation(line: 673, column: 14, scope: !643)
!1555 = !DILocation(line: 676, column: 33, scope: !649)
!1556 = !{!"class", !"NSValue", i1 true}
!1557 = !DILocation(line: 676, column: 7, scope: !649)
!1558 = !DILocation(line: 676, column: 50, scope: !649)
!1559 = !DILocation(line: 677, column: 31, scope: !649)
!1560 = !DILocation(line: 677, column: 7, scope: !649)
!1561 = !DILocation(line: 677, column: 48, scope: !649)
!1562 = !DILocation(line: 678, column: 15, scope: !649)
!1563 = !{!"objCType", !"", i1 false}
!1564 = !DILocation(line: 678, column: 37, scope: !649)
!1565 = !DILocation(line: 678, column: 8, scope: !649)
!1566 = !DILocation(line: 676, column: 7, scope: !632)
!1567 = !DILocation(line: 0, scope: !648)
!1568 = !DILocation(line: 683, column: 19, scope: !658)
!1569 = !DILocation(line: 683, column: 12, scope: !658)
!1570 = !DILocation(line: 683, column: 11, scope: !648)
!1571 = !DILocation(line: 688, column: 11, scope: !657)
!1572 = !DILocation(line: 688, column: 40, scope: !657)
!1573 = !{!"pointValue", !"", i1 false}
!1574 = !DILocation(line: 688, column: 61, scope: !657)
!1575 = !DILocation(line: 688, column: 28, scope: !657)
!1576 = distinct !DIAssignID()
!1577 = distinct !DIAssignID()
!1578 = !DILocation(line: 689, column: 11, scope: !657)
!1579 = !DILocation(line: 689, column: 38, scope: !657)
!1580 = !DILocation(line: 689, column: 57, scope: !657)
!1581 = !DILocation(line: 689, column: 26, scope: !657)
!1582 = distinct !DIAssignID()
!1583 = distinct !DIAssignID()
!1584 = !DILocation(line: 691, column: 18, scope: !657)
!1585 = !{!"valueWithBytes:objCType:", !"NSValue", i1 true}
!1586 = !DILocation(line: 692, column: 16, scope: !657)
!1587 = !DILocation(line: 693, column: 9, scope: !658)
!1588 = !DILocation(line: 693, column: 9, scope: !657)
!1589 = !DILocation(line: 695, column: 19, scope: !662)
!1590 = !DILocation(line: 695, column: 12, scope: !662)
!1591 = !DILocation(line: 695, column: 11, scope: !648)
!1592 = !DILocation(line: 698, column: 16, scope: !1593)
!1593 = distinct !DILexicalBlock(scope: !661, file: !3, line: 698, column: 15)
!1594 = !DILocation(line: 698, column: 15, scope: !661)
!1595 = !DILocation(line: 700, column: 15, scope: !1596)
!1596 = distinct !DILexicalBlock(scope: !1593, file: !3, line: 699, column: 13)
!1597 = !DILocation(line: 703, column: 13, scope: !1596)
!1598 = !DILocation(line: 704, column: 18, scope: !661)
!1599 = !DILocation(line: 706, column: 28, scope: !661)
!1600 = !DILocation(line: 0, scope: !661)
!1601 = !DILocation(line: 707, column: 26, scope: !661)
!1602 = !DILocation(line: 708, column: 79, scope: !661)
!1603 = !DILocation(line: 0, scope: !1543, inlinedAt: !1604)
!1604 = distinct !DILocation(line: 708, column: 41, scope: !661)
!1605 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1604)
!1606 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1604)
!1607 = !DILocation(line: 0, scope: !1543, inlinedAt: !1608)
!1608 = distinct !DILocation(line: 709, column: 41, scope: !661)
!1609 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1608)
!1610 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1608)
!1611 = !DILocation(line: 710, column: 18, scope: !661)
!1612 = !{!"valueWithPoint:", !"NSValue", i1 true}
!1613 = !DILocation(line: 713, column: 19, scope: !667)
!1614 = !DILocation(line: 713, column: 12, scope: !667)
!1615 = !DILocation(line: 713, column: 11, scope: !648)
!1616 = !DILocation(line: 721, column: 11, scope: !666)
!1617 = !DILocation(line: 721, column: 19, scope: !666)
!1618 = distinct !DIAssignID()
!1619 = !DILocation(line: 721, column: 35, scope: !666)
!1620 = !{!"getValue:", !"", i1 false}
!1621 = !DILocation(line: 722, column: 11, scope: !666)
!1622 = !DILocation(line: 722, column: 19, scope: !666)
!1623 = distinct !DIAssignID()
!1624 = !DILocation(line: 722, column: 33, scope: !666)
!1625 = !DILocation(line: 724, column: 11, scope: !666)
!1626 = !DILocation(line: 724, column: 79, scope: !666)
!1627 = !DILocation(line: 0, scope: !1543, inlinedAt: !1628)
!1628 = distinct !DILocation(line: 724, column: 41, scope: !666)
!1629 = !DILocation(line: 0, scope: !1543, inlinedAt: !1630)
!1630 = distinct !DILocation(line: 725, column: 39, scope: !666)
!1631 = distinct !DIAssignID()
!1632 = !DILocation(line: 724, column: 68, scope: !666)
!1633 = !DILocation(line: 724, column: 76, scope: !666)
!1634 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1628)
!1635 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1628)
!1636 = !DILocation(line: 724, column: 29, scope: !666)
!1637 = !DILocation(line: 726, column: 18, scope: !666)
!1638 = !DILocation(line: 727, column: 9, scope: !667)
!1639 = !DILocation(line: 730, column: 19, scope: !672)
!1640 = !DILocation(line: 730, column: 12, scope: !672)
!1641 = !DILocation(line: 730, column: 11, scope: !648)
!1642 = !DILocation(line: 735, column: 11, scope: !671)
!1643 = !DILocation(line: 735, column: 38, scope: !671)
!1644 = !{!"sizeValue", !"", i1 false}
!1645 = !DILocation(line: 735, column: 62, scope: !671)
!1646 = !DILocation(line: 735, column: 27, scope: !671)
!1647 = distinct !DIAssignID()
!1648 = distinct !DIAssignID()
!1649 = !DILocation(line: 736, column: 11, scope: !671)
!1650 = !DILocation(line: 736, column: 36, scope: !671)
!1651 = !DILocation(line: 736, column: 58, scope: !671)
!1652 = !DILocation(line: 736, column: 25, scope: !671)
!1653 = distinct !DIAssignID()
!1654 = distinct !DIAssignID()
!1655 = !DILocation(line: 738, column: 18, scope: !671)
!1656 = !DILocation(line: 739, column: 16, scope: !671)
!1657 = !DILocation(line: 741, column: 9, scope: !672)
!1658 = !DILocation(line: 741, column: 9, scope: !671)
!1659 = !DILocation(line: 743, column: 19, scope: !676)
!1660 = !DILocation(line: 743, column: 12, scope: !676)
!1661 = !DILocation(line: 743, column: 11, scope: !648)
!1662 = !DILocation(line: 746, column: 16, scope: !1663)
!1663 = distinct !DILexicalBlock(scope: !675, file: !3, line: 746, column: 15)
!1664 = !DILocation(line: 746, column: 15, scope: !675)
!1665 = !DILocation(line: 748, column: 15, scope: !1666)
!1666 = distinct !DILexicalBlock(scope: !1663, file: !3, line: 747, column: 13)
!1667 = !DILocation(line: 751, column: 13, scope: !1666)
!1668 = !DILocation(line: 752, column: 18, scope: !675)
!1669 = !DILocation(line: 754, column: 27, scope: !675)
!1670 = !DILocation(line: 0, scope: !675)
!1671 = !DILocation(line: 755, column: 25, scope: !675)
!1672 = !DILocation(line: 756, column: 86, scope: !675)
!1673 = !DILocation(line: 0, scope: !1543, inlinedAt: !1674)
!1674 = distinct !DILocation(line: 756, column: 39, scope: !675)
!1675 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1674)
!1676 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1674)
!1677 = !DILocation(line: 0, scope: !1543, inlinedAt: !1678)
!1678 = distinct !DILocation(line: 757, column: 39, scope: !675)
!1679 = !DILocation(line: 758, column: 18, scope: !675)
!1680 = !{!"valueWithSize:", !"NSValue", i1 true}
!1681 = !DILocation(line: 761, column: 19, scope: !681)
!1682 = !DILocation(line: 761, column: 12, scope: !681)
!1683 = !DILocation(line: 761, column: 11, scope: !648)
!1684 = !DILocation(line: 769, column: 11, scope: !680)
!1685 = !DILocation(line: 769, column: 18, scope: !680)
!1686 = distinct !DIAssignID()
!1687 = !DILocation(line: 769, column: 34, scope: !680)
!1688 = !DILocation(line: 770, column: 11, scope: !680)
!1689 = !DILocation(line: 770, column: 18, scope: !680)
!1690 = distinct !DIAssignID()
!1691 = !DILocation(line: 770, column: 32, scope: !680)
!1692 = !DILocation(line: 772, column: 11, scope: !680)
!1693 = !DILocation(line: 772, column: 85, scope: !680)
!1694 = !DILocation(line: 0, scope: !1543, inlinedAt: !1695)
!1695 = distinct !DILocation(line: 772, column: 39, scope: !680)
!1696 = !DILocation(line: 0, scope: !1543, inlinedAt: !1697)
!1697 = distinct !DILocation(line: 773, column: 39, scope: !680)
!1698 = distinct !DIAssignID()
!1699 = !DILocation(line: 772, column: 66, scope: !680)
!1700 = !DILocation(line: 772, column: 78, scope: !680)
!1701 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1695)
!1702 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1695)
!1703 = !DILocation(line: 772, column: 28, scope: !680)
!1704 = !DILocation(line: 774, column: 18, scope: !680)
!1705 = !DILocation(line: 775, column: 9, scope: !681)
!1706 = !DILocation(line: 778, column: 19, scope: !686)
!1707 = !DILocation(line: 778, column: 12, scope: !686)
!1708 = !DILocation(line: 778, column: 11, scope: !648)
!1709 = !DILocation(line: 783, column: 11, scope: !685)
!1710 = !DILocation(line: 783, column: 40, scope: !685)
!1711 = !{!"rectValue", !"", i1 false}
!1712 = !DILocation(line: 783, column: 64, scope: !685)
!1713 = !DILocation(line: 783, column: 67, scope: !685)
!1714 = !DILocation(line: 783, column: 91, scope: !685)
!1715 = !DILocation(line: 784, column: 40, scope: !685)
!1716 = !DILocation(line: 784, column: 57, scope: !685)
!1717 = !DILocation(line: 784, column: 62, scope: !685)
!1718 = !DILocation(line: 784, column: 69, scope: !685)
!1719 = !DILocation(line: 784, column: 91, scope: !685)
!1720 = !DILocalVariable(name: "x", arg: 1, scope: !1721, file: !35, line: 321, type: !45)
!1721 = distinct !DISubprogram(name: "CGRectMake", scope: !35, file: !35, line: 321, type: !1722, scopeLine: 322, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !1724)
!1722 = !DISubroutineType(types: !1723)
!1723 = !{!34, !45, !45, !45, !45}
!1724 = !{!1720, !1725, !1726, !1727, !1728}
!1725 = !DILocalVariable(name: "y", arg: 2, scope: !1721, file: !35, line: 321, type: !45)
!1726 = !DILocalVariable(name: "width", arg: 3, scope: !1721, file: !35, line: 321, type: !45)
!1727 = !DILocalVariable(name: "height", arg: 4, scope: !1721, file: !35, line: 321, type: !45)
!1728 = !DILocalVariable(name: "rect", scope: !1721, file: !35, line: 323, type: !34)
!1729 = !DILocation(line: 0, scope: !1721, inlinedAt: !1730)
!1730 = distinct !DILocation(line: 783, column: 29, scope: !685)
!1731 = !DILocation(line: 323, column: 10, scope: !1721, inlinedAt: !1730)
!1732 = !DILocation(line: 325, column: 17, scope: !1721, inlinedAt: !1730)
!1733 = !{!1734}
!1734 = distinct !{!1734, !1735, !"CGRectMake: argument 0"}
!1735 = distinct !{!1735, !"CGRectMake"}
!1736 = distinct !DIAssignID()
!1737 = !DILocation(line: 326, column: 15, scope: !1721, inlinedAt: !1730)
!1738 = !DILocation(line: 326, column: 17, scope: !1721, inlinedAt: !1730)
!1739 = distinct !DIAssignID()
!1740 = !DILocation(line: 327, column: 8, scope: !1721, inlinedAt: !1730)
!1741 = !DILocation(line: 327, column: 19, scope: !1721, inlinedAt: !1730)
!1742 = distinct !DIAssignID()
!1743 = !DILocation(line: 328, column: 13, scope: !1721, inlinedAt: !1730)
!1744 = !DILocation(line: 328, column: 20, scope: !1721, inlinedAt: !1730)
!1745 = distinct !DIAssignID()
!1746 = !DILocation(line: 785, column: 11, scope: !685)
!1747 = !DILocation(line: 785, column: 38, scope: !685)
!1748 = !DILocation(line: 785, column: 60, scope: !685)
!1749 = !DILocation(line: 785, column: 63, scope: !685)
!1750 = !DILocation(line: 785, column: 85, scope: !685)
!1751 = !DILocation(line: 786, column: 38, scope: !685)
!1752 = !DILocation(line: 786, column: 53, scope: !685)
!1753 = !DILocation(line: 786, column: 58, scope: !685)
!1754 = !DILocation(line: 786, column: 65, scope: !685)
!1755 = !DILocation(line: 786, column: 85, scope: !685)
!1756 = !DILocation(line: 0, scope: !1721, inlinedAt: !1757)
!1757 = distinct !DILocation(line: 785, column: 27, scope: !685)
!1758 = !DILocation(line: 323, column: 10, scope: !1721, inlinedAt: !1757)
!1759 = !DILocation(line: 325, column: 17, scope: !1721, inlinedAt: !1757)
!1760 = !{!1761}
!1761 = distinct !{!1761, !1762, !"CGRectMake: argument 0"}
!1762 = distinct !{!1762, !"CGRectMake"}
!1763 = distinct !DIAssignID()
!1764 = !DILocation(line: 326, column: 15, scope: !1721, inlinedAt: !1757)
!1765 = !DILocation(line: 326, column: 17, scope: !1721, inlinedAt: !1757)
!1766 = distinct !DIAssignID()
!1767 = !DILocation(line: 327, column: 8, scope: !1721, inlinedAt: !1757)
!1768 = !DILocation(line: 327, column: 19, scope: !1721, inlinedAt: !1757)
!1769 = distinct !DIAssignID()
!1770 = !DILocation(line: 328, column: 13, scope: !1721, inlinedAt: !1757)
!1771 = !DILocation(line: 328, column: 20, scope: !1721, inlinedAt: !1757)
!1772 = distinct !DIAssignID()
!1773 = !DILocation(line: 788, column: 18, scope: !685)
!1774 = !DILocation(line: 789, column: 16, scope: !685)
!1775 = !DILocation(line: 790, column: 9, scope: !686)
!1776 = !DILocation(line: 790, column: 9, scope: !685)
!1777 = !DILocation(line: 792, column: 19, scope: !690)
!1778 = !DILocation(line: 792, column: 12, scope: !690)
!1779 = !DILocation(line: 792, column: 11, scope: !648)
!1780 = !DILocation(line: 795, column: 16, scope: !1781)
!1781 = distinct !DILexicalBlock(scope: !689, file: !3, line: 795, column: 15)
!1782 = !DILocation(line: 795, column: 15, scope: !689)
!1783 = !DILocation(line: 797, column: 15, scope: !1784)
!1784 = distinct !DILexicalBlock(scope: !1781, file: !3, line: 796, column: 13)
!1785 = !DILocation(line: 800, column: 13, scope: !1784)
!1786 = !DILocation(line: 801, column: 18, scope: !689)
!1787 = !DILocation(line: 803, column: 11, scope: !689)
!1788 = !DILocation(line: 803, column: 29, scope: !689)
!1789 = distinct !DIAssignID()
!1790 = !DILocation(line: 804, column: 11, scope: !689)
!1791 = !DILocation(line: 804, column: 27, scope: !689)
!1792 = !DILocation(line: 805, column: 94, scope: !689)
!1793 = !DILocation(line: 807, column: 94, scope: !689)
!1794 = distinct !DIAssignID()
!1795 = !DILocation(line: 805, column: 11, scope: !689)
!1796 = !DILocation(line: 805, column: 97, scope: !689)
!1797 = !DILocation(line: 0, scope: !1543, inlinedAt: !1798)
!1798 = distinct !DILocation(line: 805, column: 41, scope: !689)
!1799 = !DILocation(line: 0, scope: !1543, inlinedAt: !1800)
!1800 = distinct !DILocation(line: 806, column: 41, scope: !689)
!1801 = !DILocation(line: 807, column: 70, scope: !689)
!1802 = !DILocation(line: 0, scope: !1543, inlinedAt: !1803)
!1803 = distinct !DILocation(line: 807, column: 41, scope: !689)
!1804 = !DILocation(line: 0, scope: !1543, inlinedAt: !1805)
!1805 = distinct !DILocation(line: 808, column: 41, scope: !689)
!1806 = !DILocalVariable(name: "x", arg: 1, scope: !1807, file: !37, line: 215, type: !45)
!1807 = distinct !DISubprogram(name: "NSMakeRect", scope: !37, file: !37, line: 215, type: !1808, scopeLine: 216, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !1810)
!1808 = !DISubroutineType(types: !1809)
!1809 = !{!36, !45, !45, !45, !45}
!1810 = !{!1806, !1811, !1812, !1813, !1814}
!1811 = !DILocalVariable(name: "y", arg: 2, scope: !1807, file: !37, line: 215, type: !45)
!1812 = !DILocalVariable(name: "w", arg: 3, scope: !1807, file: !37, line: 215, type: !45)
!1813 = !DILocalVariable(name: "h", arg: 4, scope: !1807, file: !37, line: 215, type: !45)
!1814 = !DILocalVariable(name: "rect", scope: !1807, file: !37, line: 217, type: !36)
!1815 = !DILocation(line: 0, scope: !1807, inlinedAt: !1816)
!1816 = distinct !DILocation(line: 805, column: 30, scope: !689)
!1817 = !DILocation(line: 217, column: 10, scope: !1807, inlinedAt: !1816)
!1818 = distinct !DIAssignID()
!1819 = !DILocation(line: 805, column: 77, scope: !689)
!1820 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1798)
!1821 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1798)
!1822 = !DILocation(line: 219, column: 17, scope: !1807, inlinedAt: !1816)
!1823 = !{!1824}
!1824 = distinct !{!1824, !1825, !"NSMakeRect: argument 0"}
!1825 = distinct !{!1825, !"NSMakeRect"}
!1826 = !DILocation(line: 221, column: 8, scope: !1807, inlinedAt: !1816)
!1827 = distinct !DIAssignID()
!1828 = !DILocation(line: 807, column: 75, scope: !689)
!1829 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1803)
!1830 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1803)
!1831 = !DILocation(line: 221, column: 19, scope: !1807, inlinedAt: !1816)
!1832 = !DILocation(line: 809, column: 18, scope: !689)
!1833 = !{!"valueWithRect:", !"NSValue", i1 true}
!1834 = !DILocation(line: 810, column: 9, scope: !690)
!1835 = !DILocation(line: 813, column: 19, scope: !695)
!1836 = !DILocation(line: 813, column: 12, scope: !695)
!1837 = !DILocation(line: 813, column: 11, scope: !648)
!1838 = !DILocation(line: 820, column: 11, scope: !694)
!1839 = !DILocation(line: 820, column: 28, scope: !694)
!1840 = !DILocation(line: 821, column: 11, scope: !694)
!1841 = !DILocation(line: 821, column: 26, scope: !694)
!1842 = !DILocation(line: 823, column: 11, scope: !694)
!1843 = !DILocation(line: 823, column: 97, scope: !694)
!1844 = !DILocation(line: 0, scope: !1543, inlinedAt: !1845)
!1845 = distinct !DILocation(line: 823, column: 41, scope: !694)
!1846 = !DILocation(line: 0, scope: !1543, inlinedAt: !1847)
!1847 = distinct !DILocation(line: 824, column: 41, scope: !694)
!1848 = !DILocation(line: 825, column: 70, scope: !694)
!1849 = !DILocation(line: 825, column: 89, scope: !694)
!1850 = !DILocation(line: 0, scope: !1543, inlinedAt: !1851)
!1851 = distinct !DILocation(line: 825, column: 41, scope: !694)
!1852 = !DILocation(line: 0, scope: !1543, inlinedAt: !1853)
!1853 = distinct !DILocation(line: 826, column: 41, scope: !694)
!1854 = !DILocation(line: 0, scope: !1721, inlinedAt: !1855)
!1855 = distinct !DILocation(line: 823, column: 30, scope: !694)
!1856 = !DILocation(line: 323, column: 10, scope: !1721, inlinedAt: !1855)
!1857 = distinct !DIAssignID()
!1858 = !DILocation(line: 823, column: 77, scope: !694)
!1859 = !DILocation(line: 823, column: 94, scope: !694)
!1860 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1845)
!1861 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1845)
!1862 = !DILocation(line: 325, column: 17, scope: !1721, inlinedAt: !1855)
!1863 = !{!1864}
!1864 = distinct !{!1864, !1865, !"CGRectMake: argument 0"}
!1865 = distinct !{!1865, !"CGRectMake"}
!1866 = !DILocation(line: 327, column: 8, scope: !1721, inlinedAt: !1855)
!1867 = distinct !DIAssignID()
!1868 = !DILocation(line: 825, column: 75, scope: !694)
!1869 = !DILocation(line: 825, column: 94, scope: !694)
!1870 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1851)
!1871 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1851)
!1872 = !DILocation(line: 327, column: 19, scope: !1721, inlinedAt: !1855)
!1873 = !DILocation(line: 828, column: 18, scope: !694)
!1874 = !DILocation(line: 829, column: 9, scope: !695)
!1875 = !DILocation(line: 834, column: 19, scope: !700)
!1876 = !DILocation(line: 834, column: 12, scope: !700)
!1877 = !DILocation(line: 834, column: 11, scope: !648)
!1878 = !DILocation(line: 836, column: 11, scope: !699)
!1879 = !DILocation(line: 836, column: 34, scope: !699)
!1880 = !{!"CATransform3DValue", !"", i1 false}
!1881 = distinct !DIAssignID()
!1882 = !DILocation(line: 837, column: 11, scope: !699)
!1883 = !DILocation(line: 837, column: 32, scope: !699)
!1884 = !DILocation(line: 456, column: 15, scope: !1885, inlinedAt: !1900)
!1885 = distinct !DILexicalBlock(scope: !1886, file: !3, line: 452, column: 5)
!1886 = distinct !DILexicalBlock(scope: !1887, file: !3, line: 451, column: 3)
!1887 = distinct !DILexicalBlock(scope: !1888, file: !3, line: 451, column: 3)
!1888 = distinct !DISubprogram(name: "transpose", scope: !3, file: !3, line: 446, type: !1889, scopeLine: 447, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !1891)
!1889 = !DISubroutineType(types: !1890)
!1890 = !{!60, !60}
!1891 = !{!1892, !1893, !1894, !1895, !1896, !1897, !1898, !1899}
!1892 = !DILocalVariable(name: "m", arg: 1, scope: !1888, file: !3, line: 446, type: !60)
!1893 = !DILocalVariable(name: "r", scope: !1888, file: !3, line: 448, type: !60)
!1894 = !DILocalVariable(name: "mF", scope: !1888, file: !3, line: 449, type: !190)
!1895 = !DILocalVariable(name: "rF", scope: !1888, file: !3, line: 450, type: !190)
!1896 = !DILocalVariable(name: "i", scope: !1887, file: !3, line: 451, type: !542)
!1897 = !DILocalVariable(name: "col", scope: !1885, file: !3, line: 453, type: !542)
!1898 = !DILocalVariable(name: "row", scope: !1885, file: !3, line: 454, type: !542)
!1899 = !DILocalVariable(name: "j", scope: !1885, file: !3, line: 455, type: !542)
!1900 = distinct !DILocation(line: 854, column: 18, scope: !699)
!1901 = distinct !DIAssignID()
!1902 = !DILocation(line: 838, column: 11, scope: !699)
!1903 = !DILocation(line: 839, column: 11, scope: !699)
!1904 = distinct !DIAssignID()
!1905 = !DILocation(line: 0, scope: !1888, inlinedAt: !1906)
!1906 = distinct !DILocation(line: 853, column: 20, scope: !699)
!1907 = !DILocation(line: 456, column: 15, scope: !1885, inlinedAt: !1906)
!1908 = !DILocation(line: 0, scope: !1885, inlinedAt: !1906)
!1909 = !DILocation(line: 0, scope: !1887, inlinedAt: !1906)
!1910 = !DILocation(line: 853, column: 20, scope: !699)
!1911 = distinct !DIAssignID()
!1912 = distinct !DIAssignID()
!1913 = distinct !DIAssignID()
!1914 = distinct !DIAssignID()
!1915 = distinct !DIAssignID()
!1916 = distinct !DIAssignID()
!1917 = distinct !DIAssignID()
!1918 = distinct !DIAssignID()
!1919 = distinct !DIAssignID()
!1920 = distinct !DIAssignID()
!1921 = distinct !DIAssignID()
!1922 = distinct !DIAssignID()
!1923 = distinct !DIAssignID()
!1924 = distinct !DIAssignID()
!1925 = distinct !DIAssignID()
!1926 = distinct !DIAssignID()
!1927 = !DILocation(line: 0, scope: !1888, inlinedAt: !1900)
!1928 = !DILocation(line: 0, scope: !1885, inlinedAt: !1900)
!1929 = !DILocation(line: 0, scope: !1887, inlinedAt: !1900)
!1930 = !DILocation(line: 854, column: 18, scope: !699)
!1931 = distinct !DIAssignID()
!1932 = distinct !DIAssignID()
!1933 = distinct !DIAssignID()
!1934 = distinct !DIAssignID()
!1935 = distinct !DIAssignID()
!1936 = distinct !DIAssignID()
!1937 = distinct !DIAssignID()
!1938 = distinct !DIAssignID()
!1939 = distinct !DIAssignID()
!1940 = distinct !DIAssignID()
!1941 = distinct !DIAssignID()
!1942 = distinct !DIAssignID()
!1943 = distinct !DIAssignID()
!1944 = distinct !DIAssignID()
!1945 = distinct !DIAssignID()
!1946 = distinct !DIAssignID()
!1947 = !DILocation(line: 861, column: 63, scope: !699)
!1948 = !DILocation(line: 0, scope: !1543, inlinedAt: !1949)
!1949 = distinct !DILocation(line: 861, column: 29, scope: !699)
!1950 = !DILocation(line: 0, scope: !1543, inlinedAt: !1951)
!1951 = distinct !DILocation(line: 862, column: 29, scope: !699)
!1952 = !DILocation(line: 0, scope: !1543, inlinedAt: !1953)
!1953 = distinct !DILocation(line: 863, column: 29, scope: !699)
!1954 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1953)
!1955 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1953)
!1956 = !DILocation(line: 869, column: 57, scope: !699)
!1957 = !DILocation(line: 869, column: 55, scope: !699)
!1958 = !DILocation(line: 869, column: 81, scope: !699)
!1959 = !DILocation(line: 869, column: 79, scope: !699)
!1960 = !DILocation(line: 869, column: 28, scope: !699)
!1961 = !DILocation(line: 871, column: 31, scope: !699)
!1962 = !DILocation(line: 873, column: 53, scope: !699)
!1963 = !DILocation(line: 873, column: 51, scope: !699)
!1964 = !DILocation(line: 873, column: 75, scope: !699)
!1965 = !DILocation(line: 873, column: 73, scope: !699)
!1966 = !DILocation(line: 873, column: 26, scope: !699)
!1967 = !DILocation(line: 0, scope: !1543, inlinedAt: !1968)
!1968 = distinct !DILocation(line: 876, column: 29, scope: !699)
!1969 = !DILocation(line: 0, scope: !1543, inlinedAt: !1970)
!1970 = distinct !DILocation(line: 877, column: 29, scope: !699)
!1971 = !DILocation(line: 0, scope: !1543, inlinedAt: !1972)
!1972 = distinct !DILocation(line: 878, column: 29, scope: !699)
!1973 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1972)
!1974 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1972)
!1975 = !DILocation(line: 882, column: 11, scope: !699)
!1976 = !DILocation(line: 883, column: 37, scope: !699)
!1977 = distinct !DIAssignID()
!1978 = !DILocation(line: 885, column: 24, scope: !699)
!1979 = distinct !DIAssignID()
!1980 = !DILocation(line: 886, column: 24, scope: !699)
!1981 = !DILocation(line: 886, column: 28, scope: !699)
!1982 = distinct !DIAssignID()
!1983 = !DILocation(line: 888, column: 24, scope: !699)
!1984 = distinct !DIAssignID()
!1985 = !DILocation(line: 890, column: 24, scope: !699)
!1986 = distinct !DIAssignID()
!1987 = !DILocation(line: 891, column: 24, scope: !699)
!1988 = !DILocation(line: 891, column: 28, scope: !699)
!1989 = distinct !DIAssignID()
!1990 = !DILocation(line: 893, column: 24, scope: !699)
!1991 = distinct !DIAssignID()
!1992 = !DILocation(line: 893, column: 41, scope: !699)
!1993 = !DILocation(line: 893, column: 28, scope: !699)
!1994 = !DILocation(line: 895, column: 41, scope: !699)
!1995 = !DILocation(line: 895, column: 24, scope: !699)
!1996 = !DILocation(line: 895, column: 28, scope: !699)
!1997 = distinct !DIAssignID()
!1998 = !DILocation(line: 896, column: 24, scope: !699)
!1999 = distinct !DIAssignID()
!2000 = !DILocation(line: 901, column: 24, scope: !699)
!2001 = !DILocation(line: 898, column: 28, scope: !699)
!2002 = !DILocation(line: 901, column: 28, scope: !699)
!2003 = distinct !DIAssignID()
!2004 = !DILocation(line: 903, column: 11, scope: !699)
!2005 = distinct !DIAssignID()
!2006 = !DILocation(line: 904, column: 37, scope: !699)
!2007 = !DILocation(line: 906, column: 33, scope: !699)
!2008 = !DILocation(line: 906, column: 22, scope: !699)
!2009 = distinct !DIAssignID()
!2010 = !DILocation(line: 907, column: 22, scope: !699)
!2011 = !DILocation(line: 907, column: 26, scope: !699)
!2012 = distinct !DIAssignID()
!2013 = !DILocation(line: 909, column: 22, scope: !699)
!2014 = distinct !DIAssignID()
!2015 = !DILocation(line: 909, column: 33, scope: !699)
!2016 = !DILocation(line: 911, column: 33, scope: !699)
!2017 = !DILocation(line: 911, column: 22, scope: !699)
!2018 = distinct !DIAssignID()
!2019 = !DILocation(line: 912, column: 22, scope: !699)
!2020 = !DILocation(line: 912, column: 26, scope: !699)
!2021 = distinct !DIAssignID()
!2022 = !DILocation(line: 914, column: 22, scope: !699)
!2023 = distinct !DIAssignID()
!2024 = !DILocation(line: 914, column: 33, scope: !699)
!2025 = !DILocation(line: 914, column: 37, scope: !699)
!2026 = !DILocation(line: 914, column: 26, scope: !699)
!2027 = !DILocation(line: 916, column: 37, scope: !699)
!2028 = !DILocation(line: 916, column: 22, scope: !699)
!2029 = !DILocation(line: 916, column: 26, scope: !699)
!2030 = distinct !DIAssignID()
!2031 = !DILocation(line: 917, column: 22, scope: !699)
!2032 = distinct !DIAssignID()
!2033 = !DILocation(line: 922, column: 22, scope: !699)
!2034 = !DILocation(line: 919, column: 26, scope: !699)
!2035 = !DILocation(line: 922, column: 26, scope: !699)
!2036 = distinct !DIAssignID()
!2037 = !DILocation(line: 924, column: 11, scope: !699)
!2038 = !DILocation(line: 927, column: 95, scope: !699)
!2039 = distinct !DIAssignID()
!2040 = distinct !DIAssignID()
!2041 = !DILocation(line: 932, column: 83, scope: !699)
!2042 = distinct !DIAssignID()
!2043 = distinct !DIAssignID()
!2044 = distinct !DIAssignID()
!2045 = distinct !DIAssignID()
!2046 = distinct !DIAssignID()
!2047 = !DILocation(line: 945, column: 19, scope: !699)
!2048 = distinct !DIAssignID()
!2049 = !DILocation(line: 946, column: 19, scope: !699)
!2050 = distinct !DIAssignID()
!2051 = !DILocation(line: 948, column: 19, scope: !699)
!2052 = distinct !DIAssignID()
!2053 = !DILocation(line: 949, column: 19, scope: !699)
!2054 = distinct !DIAssignID()
!2055 = !DILocation(line: 950, column: 19, scope: !699)
!2056 = distinct !DIAssignID()
!2057 = !DILocation(line: 952, column: 19, scope: !699)
!2058 = distinct !DIAssignID()
!2059 = !DILocation(line: 953, column: 19, scope: !699)
!2060 = distinct !DIAssignID()
!2061 = !DILocation(line: 954, column: 19, scope: !699)
!2062 = distinct !DIAssignID()
!2063 = !DILocation(line: 957, column: 19, scope: !699)
!2064 = distinct !DIAssignID()
!2065 = !DILocation(line: 958, column: 19, scope: !699)
!2066 = distinct !DIAssignID()
!2067 = !DILocation(line: 959, column: 19, scope: !699)
!2068 = distinct !DIAssignID()
!2069 = !DILocation(line: 0, scope: !1888, inlinedAt: !2070)
!2070 = distinct !DILocation(line: 962, column: 21, scope: !699)
!2071 = !DILocation(line: 456, column: 15, scope: !1885, inlinedAt: !2070)
!2072 = !DILocation(line: 885, column: 41, scope: !699)
!2073 = !DILocation(line: 890, column: 41, scope: !699)
!2074 = !DILocation(line: 867, column: 57, scope: !699)
!2075 = !DILocation(line: 867, column: 55, scope: !699)
!2076 = !DILocation(line: 867, column: 79, scope: !699)
!2077 = !DILocation(line: 867, column: 28, scope: !699)
!2078 = !DILocation(line: 883, column: 41, scope: !699)
!2079 = !DILocation(line: 883, column: 28, scope: !699)
!2080 = !DILocation(line: 885, column: 28, scope: !699)
!2081 = !DILocation(line: 888, column: 41, scope: !699)
!2082 = !DILocation(line: 888, column: 28, scope: !699)
!2083 = !DILocation(line: 890, column: 28, scope: !699)
!2084 = !DILocation(line: 871, column: 53, scope: !699)
!2085 = !DILocation(line: 871, column: 51, scope: !699)
!2086 = !DILocation(line: 871, column: 73, scope: !699)
!2087 = !DILocation(line: 871, column: 26, scope: !699)
!2088 = !DILocation(line: 904, column: 26, scope: !699)
!2089 = !DILocation(line: 906, column: 37, scope: !699)
!2090 = !DILocation(line: 906, column: 26, scope: !699)
!2091 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1968)
!2092 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1968)
!2093 = !DILocation(line: 909, column: 37, scope: !699)
!2094 = !DILocation(line: 909, column: 26, scope: !699)
!2095 = !DILocation(line: 911, column: 37, scope: !699)
!2096 = !DILocation(line: 911, column: 26, scope: !699)
!2097 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !1949)
!2098 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !1949)
!2099 = !DILocation(line: 924, column: 45, scope: !699)
!2100 = !DILocation(line: 925, column: 11, scope: !699)
!2101 = !DILocation(line: 925, column: 43, scope: !699)
!2102 = !DILocation(line: 927, column: 47, scope: !699)
!2103 = !DILocation(line: 927, column: 72, scope: !699)
!2104 = !DILocation(line: 927, column: 60, scope: !699)
!2105 = !DILocation(line: 927, column: 84, scope: !699)
!2106 = !DILocation(line: 927, column: 108, scope: !699)
!2107 = !DILocation(line: 927, column: 33, scope: !699)
!2108 = !DILocation(line: 928, column: 22, scope: !699)
!2109 = !DILocation(line: 930, column: 22, scope: !699)
!2110 = !DILocation(line: 932, column: 43, scope: !699)
!2111 = !DILocation(line: 932, column: 64, scope: !699)
!2112 = !DILocation(line: 932, column: 54, scope: !699)
!2113 = !DILocation(line: 932, column: 74, scope: !699)
!2114 = !DILocation(line: 932, column: 94, scope: !699)
!2115 = !DILocation(line: 932, column: 31, scope: !699)
!2116 = !DILocation(line: 933, column: 20, scope: !699)
!2117 = !DILocation(line: 935, column: 20, scope: !699)
!2118 = !DILocation(line: 938, column: 11, scope: !699)
!2119 = !DILocation(line: 939, column: 23, scope: !699)
!2120 = !DILocation(line: 941, column: 21, scope: !699)
!2121 = !DILocation(line: 944, column: 23, scope: !699)
!2122 = !DILocation(line: 945, column: 23, scope: !699)
!2123 = !DILocation(line: 946, column: 23, scope: !699)
!2124 = !DILocation(line: 948, column: 23, scope: !699)
!2125 = !DILocation(line: 949, column: 23, scope: !699)
!2126 = !DILocation(line: 950, column: 23, scope: !699)
!2127 = !DILocation(line: 952, column: 23, scope: !699)
!2128 = !DILocation(line: 953, column: 23, scope: !699)
!2129 = !DILocation(line: 954, column: 23, scope: !699)
!2130 = !DILocation(line: 0, scope: !1885, inlinedAt: !2070)
!2131 = !DILocation(line: 0, scope: !1887, inlinedAt: !2070)
!2132 = !DILocation(line: 962, column: 21, scope: !699)
!2133 = distinct !DIAssignID()
!2134 = distinct !DIAssignID()
!2135 = distinct !DIAssignID()
!2136 = distinct !DIAssignID()
!2137 = distinct !DIAssignID()
!2138 = distinct !DIAssignID()
!2139 = distinct !DIAssignID()
!2140 = distinct !DIAssignID()
!2141 = distinct !DIAssignID()
!2142 = distinct !DIAssignID()
!2143 = distinct !DIAssignID()
!2144 = distinct !DIAssignID()
!2145 = !DILocation(line: 964, column: 18, scope: !699)
!2146 = !{!"valueWithCATransform3D:", !"NSValue", i1 true}
!2147 = !DILocation(line: 965, column: 9, scope: !700)
!2148 = !DILocation(line: 977, column: 33, scope: !737)
!2149 = !DILocation(line: 977, column: 7, scope: !737)
!2150 = !DILocation(line: 977, column: 64, scope: !737)
!2151 = !DILocation(line: 978, column: 31, scope: !737)
!2152 = !DILocation(line: 978, column: 7, scope: !737)
!2153 = !DILocation(line: 977, column: 7, scope: !632)
!2154 = !DILocation(line: 0, scope: !736)
!2155 = !DILocation(line: 984, column: 11, scope: !741)
!2156 = !DILocation(line: 984, column: 49, scope: !741)
!2157 = !DILocation(line: 984, column: 46, scope: !741)
!2158 = !DILocation(line: 984, column: 82, scope: !741)
!2159 = !DILocation(line: 985, column: 11, scope: !741)
!2160 = !DILocation(line: 985, column: 41, scope: !741)
!2161 = !DILocation(line: 985, column: 38, scope: !741)
!2162 = !DILocation(line: 984, column: 11, scope: !736)
!2163 = !DILocation(line: 987, column: 44, scope: !740)
!2164 = !DILocation(line: 988, column: 42, scope: !740)
!2165 = !DILocation(line: 990, column: 39, scope: !740)
!2166 = !DILocation(line: 992, column: 11, scope: !740)
!2167 = !DILocation(line: 992, column: 19, scope: !740)
!2168 = distinct !DIAssignID()
!2169 = !DILocation(line: 0, scope: !748)
!2170 = !DILocation(line: 993, column: 29, scope: !2171)
!2171 = distinct !DILexicalBlock(scope: !748, file: !3, line: 993, column: 11)
!2172 = !DILocation(line: 993, column: 11, scope: !748)
!2173 = !DILocation(line: 993, column: 52, scope: !2171)
!2174 = !DILocation(line: 995, column: 56, scope: !2175)
!2175 = distinct !DILexicalBlock(scope: !2171, file: !3, line: 994, column: 13)
!2176 = !DILocation(line: 995, column: 75, scope: !2175)
!2177 = !DILocation(line: 443, column: 20, scope: !1543, inlinedAt: !2178)
!2178 = distinct !DILocation(line: 995, column: 36, scope: !2175)
!2179 = !DILocation(line: 443, column: 15, scope: !1543, inlinedAt: !2178)
!2180 = !DILocation(line: 995, column: 15, scope: !2175)
!2181 = !DILocation(line: 995, column: 34, scope: !2175)
!2182 = distinct !{!2182, !2172, !2183, !808, !2184, !2185}
!2183 = !DILocation(line: 996, column: 13, scope: !748)
!2184 = !{!"llvm.loop.isvectorized", i32 1}
!2185 = !{!"llvm.loop.unroll.runtime.disable"}
!2186 = !DILocation(line: 0, scope: !1543, inlinedAt: !2178)
!2187 = distinct !{!2187, !2172, !2183, !808, !2184}
!2188 = !DILocation(line: 998, column: 37, scope: !740)
!2189 = !DILocation(line: 998, column: 23, scope: !740)
!2190 = !DILocation(line: 998, column: 18, scope: !740)
!2191 = !DILocation(line: 999, column: 9, scope: !741)
!2192 = !DILocation(line: 1002, column: 1, scope: !632)
!2193 = !DISubprogram(name: "strcmp", scope: !2194, file: !2194, line: 156, type: !2195, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!2194 = !DIFile(filename: "/usr/include/string.h", directory: "", checksumkind: CSK_MD5, checksum: "f443da8025a0b7c1498fb6c554ec788d")
!2195 = !DISubroutineType(types: !2196)
!2196 = !{!542, !2197, !2197}
!2197 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !2198, size: 64)
!2198 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !2199)
!2199 = !DIBasicType(name: "char", size: 8, encoding: DW_ATE_signed_char)
!2200 = !DISubprogram(name: "NSLog", scope: !46, file: !46, line: 286, type: !2201, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!2201 = !DISubroutineType(types: !2202)
!2202 = !{null, !109, null}
!2203 = !DISubprogram(name: "sqrt", scope: !2204, file: !2204, line: 143, type: !2205, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!2204 = !DIFile(filename: "/usr/include/x86_64-linux-gnu/bits/mathcalls.h", directory: "", checksumkind: CSK_MD5, checksum: "8c6e2d0d2bda65bc5ba1ca02b65383b7")
!2205 = !DISubroutineType(types: !2206)
!2206 = !{!47, !47}
!2207 = distinct !DISubprogram(name: "matrixToQuaternion", scope: !3, file: !3, line: 494, type: !2208, scopeLine: 495, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !2210)
!2208 = !DISubroutineType(types: !2209)
!2209 = !{!724, !60}
!2210 = !{!2211, !2212, !2213, !2216, !2217, !2220, !2221, !2224, !2225, !2227}
!2211 = !DILocalVariable(name: "m", arg: 1, scope: !2207, file: !3, line: 494, type: !60)
!2212 = !DILocalVariable(name: "q", scope: !2207, file: !3, line: 502, type: !724)
!2213 = !DILocalVariable(name: "t", scope: !2214, file: !3, line: 507, type: !45)
!2214 = distinct !DILexicalBlock(scope: !2215, file: !3, line: 506, column: 5)
!2215 = distinct !DILexicalBlock(scope: !2207, file: !3, line: 505, column: 7)
!2216 = !DILocalVariable(name: "s", scope: !2214, file: !3, line: 508, type: !45)
!2217 = !DILocalVariable(name: "t", scope: !2218, file: !3, line: 517, type: !45)
!2218 = distinct !DILexicalBlock(scope: !2219, file: !3, line: 516, column: 5)
!2219 = distinct !DILexicalBlock(scope: !2215, file: !3, line: 515, column: 12)
!2220 = !DILocalVariable(name: "s", scope: !2218, file: !3, line: 518, type: !45)
!2221 = !DILocalVariable(name: "t", scope: !2222, file: !3, line: 527, type: !45)
!2222 = distinct !DILexicalBlock(scope: !2223, file: !3, line: 526, column: 5)
!2223 = distinct !DILexicalBlock(scope: !2219, file: !3, line: 525, column: 12)
!2224 = !DILocalVariable(name: "s", scope: !2222, file: !3, line: 528, type: !45)
!2225 = !DILocalVariable(name: "t", scope: !2226, file: !3, line: 537, type: !45)
!2226 = distinct !DILexicalBlock(scope: !2223, file: !3, line: 536, column: 5)
!2227 = !DILocalVariable(name: "s", scope: !2226, file: !3, line: 538, type: !45)
!2228 = !DILocation(line: 494, column: 64, scope: !2207)
!2229 = !DILocation(line: 502, column: 26, scope: !2207)
!2230 = !DILocation(line: 505, column: 9, scope: !2215)
!2231 = !DILocation(line: 505, column: 17, scope: !2215)
!2232 = !DILocation(line: 505, column: 13, scope: !2215)
!2233 = !DILocation(line: 505, column: 25, scope: !2215)
!2234 = !DILocation(line: 505, column: 21, scope: !2215)
!2235 = !DILocation(line: 505, column: 29, scope: !2215)
!2236 = !DILocation(line: 505, column: 7, scope: !2207)
!2237 = !DILocation(line: 507, column: 41, scope: !2214)
!2238 = !DILocation(line: 0, scope: !2214)
!2239 = !DILocation(line: 508, column: 23, scope: !2214)
!2240 = !DILocation(line: 508, column: 22, scope: !2214)
!2241 = !DILocation(line: 511, column: 16, scope: !2214)
!2242 = !DILocation(line: 511, column: 24, scope: !2214)
!2243 = !DILocation(line: 511, column: 20, scope: !2214)
!2244 = !DILocation(line: 511, column: 9, scope: !2214)
!2245 = !DILocation(line: 511, column: 28, scope: !2214)
!2246 = !DILocation(line: 511, column: 11, scope: !2214)
!2247 = !DILocation(line: 512, column: 16, scope: !2214)
!2248 = !DILocation(line: 512, column: 24, scope: !2214)
!2249 = !DILocation(line: 513, column: 16, scope: !2214)
!2250 = !DILocation(line: 513, column: 24, scope: !2214)
!2251 = !DILocation(line: 513, column: 20, scope: !2214)
!2252 = !DILocation(line: 513, column: 28, scope: !2214)
!2253 = !DILocation(line: 513, column: 11, scope: !2214)
!2254 = !DILocation(line: 514, column: 5, scope: !2214)
!2255 = !DILocation(line: 515, column: 18, scope: !2219)
!2256 = !DILocation(line: 515, column: 26, scope: !2219)
!2257 = !DILocation(line: 517, column: 25, scope: !2218)
!2258 = !DILocation(line: 517, column: 33, scope: !2218)
!2259 = !DILocation(line: 0, scope: !2218)
!2260 = !DILocation(line: 521, column: 16, scope: !2218)
!2261 = !DILocation(line: 521, column: 24, scope: !2218)
!2262 = !DILocation(line: 517, column: 41, scope: !2218)
!2263 = !DILocation(line: 518, column: 23, scope: !2218)
!2264 = !DILocation(line: 518, column: 22, scope: !2218)
!2265 = !DILocation(line: 521, column: 20, scope: !2218)
!2266 = !DILocation(line: 520, column: 14, scope: !2218)
!2267 = !DILocation(line: 520, column: 11, scope: !2218)
!2268 = !DILocation(line: 522, column: 16, scope: !2218)
!2269 = !DILocation(line: 522, column: 24, scope: !2218)
!2270 = !DILocation(line: 522, column: 20, scope: !2218)
!2271 = !DILocation(line: 522, column: 28, scope: !2218)
!2272 = !DILocation(line: 522, column: 9, scope: !2218)
!2273 = !DILocation(line: 522, column: 11, scope: !2218)
!2274 = !DILocation(line: 523, column: 16, scope: !2218)
!2275 = !DILocation(line: 523, column: 24, scope: !2218)
!2276 = !DILocation(line: 523, column: 20, scope: !2218)
!2277 = !DILocation(line: 523, column: 28, scope: !2218)
!2278 = !DILocation(line: 523, column: 9, scope: !2218)
!2279 = !DILocation(line: 523, column: 11, scope: !2218)
!2280 = !DILocation(line: 524, column: 5, scope: !2218)
!2281 = !DILocation(line: 525, column: 18, scope: !2223)
!2282 = !DILocation(line: 525, column: 12, scope: !2219)
!2283 = !DILocation(line: 527, column: 26, scope: !2222)
!2284 = !DILocation(line: 527, column: 34, scope: !2222)
!2285 = !DILocation(line: 0, scope: !2222)
!2286 = !DILocation(line: 531, column: 16, scope: !2222)
!2287 = !DILocation(line: 531, column: 24, scope: !2222)
!2288 = !DILocation(line: 527, column: 42, scope: !2222)
!2289 = !DILocation(line: 528, column: 23, scope: !2222)
!2290 = !DILocation(line: 528, column: 22, scope: !2222)
!2291 = !DILocation(line: 531, column: 20, scope: !2222)
!2292 = !DILocation(line: 531, column: 28, scope: !2222)
!2293 = !DILocation(line: 531, column: 11, scope: !2222)
!2294 = !DILocation(line: 532, column: 16, scope: !2222)
!2295 = !DILocation(line: 532, column: 24, scope: !2222)
!2296 = !DILocation(line: 533, column: 16, scope: !2222)
!2297 = !DILocation(line: 533, column: 9, scope: !2222)
!2298 = !DILocation(line: 533, column: 20, scope: !2222)
!2299 = !DILocation(line: 533, column: 28, scope: !2222)
!2300 = !DILocation(line: 533, column: 11, scope: !2222)
!2301 = !DILocation(line: 534, column: 5, scope: !2222)
!2302 = !DILocation(line: 537, column: 19, scope: !2226)
!2303 = !DILocation(line: 537, column: 26, scope: !2226)
!2304 = !DILocation(line: 537, column: 34, scope: !2226)
!2305 = !DILocation(line: 0, scope: !2226)
!2306 = !DILocation(line: 540, column: 9, scope: !2226)
!2307 = !DILocation(line: 541, column: 16, scope: !2226)
!2308 = !DILocation(line: 541, column: 24, scope: !2226)
!2309 = !DILocation(line: 537, column: 42, scope: !2226)
!2310 = !DILocation(line: 538, column: 23, scope: !2226)
!2311 = !DILocation(line: 538, column: 22, scope: !2226)
!2312 = !DILocation(line: 541, column: 20, scope: !2226)
!2313 = !DILocation(line: 540, column: 14, scope: !2226)
!2314 = !DILocation(line: 540, column: 11, scope: !2226)
!2315 = !DILocation(line: 542, column: 16, scope: !2226)
!2316 = !DILocation(line: 542, column: 24, scope: !2226)
!2317 = !DILocation(line: 543, column: 16, scope: !2226)
!2318 = !DILocation(line: 543, column: 24, scope: !2226)
!2319 = !DILocation(line: 542, column: 20, scope: !2226)
!2320 = !DILocation(line: 542, column: 28, scope: !2226)
!2321 = !DILocation(line: 542, column: 11, scope: !2226)
!2322 = !DILocation(line: 546, column: 3, scope: !2207)
!2323 = distinct !DISubprogram(name: "linearInterpolationQuaternion", scope: !3, file: !3, line: 549, type: !2324, scopeLine: 550, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !2326)
!2324 = !DISubroutineType(types: !2325)
!2325 = !{!724, !724, !724, !45}
!2326 = !{!2327, !2328, !2329, !2330, !2331, !2332, !2333, !2334, !2335, !2336, !2337, !2338}
!2327 = !DILocalVariable(name: "a", arg: 1, scope: !2323, file: !3, line: 549, type: !724)
!2328 = !DILocalVariable(name: "b", arg: 2, scope: !2323, file: !3, line: 549, type: !724)
!2329 = !DILocalVariable(name: "fraction", arg: 3, scope: !2323, file: !3, line: 549, type: !45)
!2330 = !DILocalVariable(name: "qr", scope: !2323, file: !3, line: 552, type: !724)
!2331 = !DILocalVariable(name: "dotproduct", scope: !2323, file: !3, line: 570, type: !45)
!2332 = !DILocalVariable(name: "theta", scope: !2323, file: !3, line: 571, type: !45)
!2333 = !DILocalVariable(name: "st", scope: !2323, file: !3, line: 571, type: !45)
!2334 = !DILocalVariable(name: "sut", scope: !2323, file: !3, line: 571, type: !45)
!2335 = !DILocalVariable(name: "sout", scope: !2323, file: !3, line: 571, type: !45)
!2336 = !DILocalVariable(name: "coeff1", scope: !2323, file: !3, line: 571, type: !45)
!2337 = !DILocalVariable(name: "coeff2", scope: !2323, file: !3, line: 571, type: !45)
!2338 = !DILocalVariable(name: "qrLen", scope: !2323, file: !3, line: 597, type: !45)
!2339 = !DILocation(line: 549, column: 84, scope: !2323)
!2340 = !DILocation(line: 549, column: 110, scope: !2323)
!2341 = !DILocation(line: 0, scope: !2323)
!2342 = !DILocation(line: 555, column: 10, scope: !2343)
!2343 = distinct !DILexicalBlock(scope: !2323, file: !3, line: 555, column: 9)
!2344 = !DILocation(line: 555, column: 9, scope: !2323)
!2345 = !DILocation(line: 559, column: 16, scope: !2346)
!2346 = distinct !DILexicalBlock(scope: !2343, file: !3, line: 556, column: 7)
!2347 = !DILocation(line: 559, column: 9, scope: !2346)
!2348 = !DILocation(line: 561, column: 18, scope: !2349)
!2349 = distinct !DILexicalBlock(scope: !2323, file: !3, line: 561, column: 9)
!2350 = !DILocation(line: 561, column: 9, scope: !2323)
!2351 = !DILocation(line: 563, column: 16, scope: !2352)
!2352 = distinct !DILexicalBlock(scope: !2349, file: !3, line: 562, column: 7)
!2353 = !DILocation(line: 563, column: 9, scope: !2352)
!2354 = !DILocation(line: 565, column: 18, scope: !2355)
!2355 = distinct !DILexicalBlock(scope: !2323, file: !3, line: 565, column: 9)
!2356 = !DILocation(line: 565, column: 9, scope: !2323)
!2357 = !DILocation(line: 567, column: 16, scope: !2358)
!2358 = distinct !DILexicalBlock(scope: !2355, file: !3, line: 566, column: 7)
!2359 = !DILocation(line: 567, column: 9, scope: !2358)
!2360 = !DILocation(line: 570, column: 28, scope: !2323)
!2361 = !DILocation(line: 570, column: 34, scope: !2323)
!2362 = !DILocation(line: 570, column: 42, scope: !2323)
!2363 = !DILocation(line: 570, column: 36, scope: !2323)
!2364 = !DILocation(line: 570, column: 52, scope: !2323)
!2365 = !DILocation(line: 570, column: 58, scope: !2323)
!2366 = !DILocation(line: 570, column: 48, scope: !2323)
!2367 = !DILocation(line: 570, column: 60, scope: !2323)
!2368 = !DILocation(line: 573, column: 13, scope: !2323)
!2369 = !DILocation(line: 574, column: 15, scope: !2370)
!2370 = distinct !DILexicalBlock(scope: !2323, file: !3, line: 574, column: 9)
!2371 = !DILocation(line: 574, column: 9, scope: !2323)
!2372 = !DILocation(line: 579, column: 16, scope: !2373)
!2373 = distinct !DILexicalBlock(scope: !2370, file: !3, line: 575, column: 7)
!2374 = !DILocation(line: 579, column: 9, scope: !2373)
!2375 = !DILocation(line: 582, column: 14, scope: !2376)
!2376 = distinct !DILexicalBlock(scope: !2323, file: !3, line: 582, column: 9)
!2377 = !DILocation(line: 582, column: 9, scope: !2323)
!2378 = !DILocation(line: 585, column: 10, scope: !2323)
!2379 = !DILocation(line: 586, column: 23, scope: !2323)
!2380 = !DILocation(line: 586, column: 11, scope: !2323)
!2381 = !DILocation(line: 587, column: 18, scope: !2323)
!2382 = !DILocation(line: 587, column: 28, scope: !2323)
!2383 = !DILocation(line: 587, column: 12, scope: !2323)
!2384 = !DILocation(line: 588, column: 18, scope: !2323)
!2385 = !DILocation(line: 589, column: 17, scope: !2323)
!2386 = !DILocation(line: 591, column: 31, scope: !2323)
!2387 = !DILocation(line: 591, column: 23, scope: !2323)
!2388 = !DILocation(line: 597, column: 42, scope: !2323)
!2389 = !DILocation(line: 597, column: 36, scope: !2323)
!2390 = !DILocation(line: 603, column: 12, scope: !2323)
!2391 = !DILocation(line: 593, column: 31, scope: !2323)
!2392 = !DILocation(line: 593, column: 23, scope: !2323)
!2393 = !DILocation(line: 597, column: 48, scope: !2323)
!2394 = !DILocation(line: 597, column: 60, scope: !2323)
!2395 = !DILocation(line: 597, column: 21, scope: !2323)
!2396 = !DILocation(line: 598, column: 10, scope: !2323)
!2397 = !DILocation(line: 600, column: 10, scope: !2323)
!2398 = !DILocation(line: 605, column: 1, scope: !2323)
!2399 = distinct !DISubprogram(name: "quaternionToMatrix", scope: !3, file: !3, line: 466, type: !2400, scopeLine: 467, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !2402)
!2400 = !DISubroutineType(types: !2401)
!2401 = !{!60, !724}
!2402 = !{!2403, !2404, !2405, !2406, !2407, !2408}
!2403 = !DILocalVariable(name: "q", arg: 1, scope: !2399, file: !3, line: 466, type: !724)
!2404 = !DILocalVariable(name: "m", scope: !2399, file: !3, line: 468, type: !60)
!2405 = !DILocalVariable(name: "x", scope: !2399, file: !3, line: 469, type: !45)
!2406 = !DILocalVariable(name: "y", scope: !2399, file: !3, line: 469, type: !45)
!2407 = !DILocalVariable(name: "z", scope: !2399, file: !3, line: 469, type: !45)
!2408 = !DILocalVariable(name: "w", scope: !2399, file: !3, line: 469, type: !45)
!2409 = !DILocation(line: 466, column: 64, scope: !2399)
!2410 = !DILocation(line: 468, column: 17, scope: !2399)
!2411 = !DILocation(line: 469, column: 15, scope: !2399)
!2412 = !DILocation(line: 0, scope: !2399)
!2413 = !DILocation(line: 469, column: 22, scope: !2399)
!2414 = !DILocation(line: 469, column: 36, scope: !2399)
!2415 = !DILocation(line: 472, column: 20, scope: !2399)
!2416 = !DILocation(line: 483, column: 21, scope: !2399)
!2417 = !DILocation(line: 471, column: 16, scope: !2399)
!2418 = !DILocation(line: 471, column: 13, scope: !2399)
!2419 = !DILocation(line: 471, column: 21, scope: !2399)
!2420 = !DILocation(line: 482, column: 17, scope: !2399)
!2421 = !DILocation(line: 472, column: 22, scope: !2399)
!2422 = !DILocation(line: 471, column: 9, scope: !2399)
!2423 = !DILocation(line: 473, column: 22, scope: !2399)
!2424 = !DILocation(line: 473, column: 17, scope: !2399)
!2425 = !DILocation(line: 473, column: 5, scope: !2399)
!2426 = !DILocation(line: 473, column: 9, scope: !2399)
!2427 = !DILocation(line: 474, column: 5, scope: !2399)
!2428 = !DILocation(line: 474, column: 9, scope: !2399)
!2429 = !DILocation(line: 476, column: 17, scope: !2399)
!2430 = !DILocation(line: 476, column: 5, scope: !2399)
!2431 = !DILocation(line: 477, column: 13, scope: !2399)
!2432 = !DILocation(line: 476, column: 9, scope: !2399)
!2433 = !DILocation(line: 478, column: 22, scope: !2399)
!2434 = !DILocation(line: 478, column: 17, scope: !2399)
!2435 = !DILocation(line: 478, column: 5, scope: !2399)
!2436 = !DILocation(line: 478, column: 9, scope: !2399)
!2437 = !DILocation(line: 479, column: 5, scope: !2399)
!2438 = !DILocation(line: 479, column: 9, scope: !2399)
!2439 = !DILocation(line: 481, column: 5, scope: !2399)
!2440 = !DILocation(line: 481, column: 17, scope: !2399)
!2441 = !DILocation(line: 481, column: 9, scope: !2399)
!2442 = !DILocation(line: 483, column: 5, scope: !2399)
!2443 = !DILocation(line: 483, column: 9, scope: !2399)
!2444 = !DILocation(line: 484, column: 5, scope: !2399)
!2445 = !DILocation(line: 489, column: 5, scope: !2399)
!2446 = !DILocation(line: 486, column: 9, scope: !2399)
!2447 = !DILocation(line: 489, column: 9, scope: !2399)
!2448 = !DILocation(line: 492, column: 1, scope: !2399)
!2449 = !DISubprogram(name: "NSClassFromString", scope: !46, file: !46, line: 267, type: !2450, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!2450 = !DISubroutineType(types: !2451)
!2451 = !{!14, !109}
!2452 = !DISubprogram(name: "CGColorGetNumberOfComponents", scope: !90, file: !90, line: 91, type: !2453, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!2453 = !DISubroutineType(types: !2454)
!2454 = !{!291, !89}
!2455 = !DISubprogram(name: "CGColorGetColorSpace", scope: !90, file: !90, line: 85, type: !2456, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!2456 = !DISubroutineType(types: !2457)
!2457 = !{!2458, !89}
!2458 = !DIDerivedType(tag: DW_TAG_typedef, name: "CGColorSpaceRef", file: !2459, line: 38, baseType: !2460)
!2459 = !DIFile(filename: "/usr/GNUstep/Local/Library/Headers/CoreGraphics/CGColorSpace.h", directory: "", checksumkind: CSK_MD5, checksum: "940c4acd10c7c52aaa4e17c14bd1dd0c")
!2460 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !2461, size: 64)
!2461 = !DICompositeType(tag: DW_TAG_structure_type, name: "CGColorSpace", file: !2459, line: 38, flags: DIFlagFwdDecl)
!2462 = !DISubprogram(name: "CGColorGetComponents", scope: !90, file: !90, line: 87, type: !2463, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!2463 = !DISubroutineType(types: !2464)
!2464 = !{!742, !89}
!2465 = !DISubprogram(name: "CGColorCreate", scope: !90, file: !90, line: 53, type: !2466, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!2466 = !DISubroutineType(types: !2467)
!2467 = !{!89, !2458, !742}
!2468 = distinct !DISubprogram(name: "-[CABasicAnimation fromValue]", scope: !3, file: !3, line: 611, type: !457, scopeLine: 611, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !456, retainedNodes: !2469)
!2469 = !{!2470, !2471}
!2470 = !DILocalVariable(name: "self", arg: 1, scope: !2468, type: !635, flags: DIFlagArtificial | DIFlagObjectPointer)
!2471 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2468, type: !539, flags: DIFlagArtificial)
!2472 = !DILocation(line: 0, scope: !2468)
!2473 = !DILocation(line: 611, column: 1, scope: !2468)
!2474 = distinct !DISubprogram(name: "-[CABasicAnimation setFromValue:]", scope: !3, file: !3, line: 611, type: !460, scopeLine: 611, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !459, retainedNodes: !2475)
!2475 = !{!2476, !2477, !2478}
!2476 = !DILocalVariable(name: "self", arg: 1, scope: !2474, type: !635, flags: DIFlagArtificial | DIFlagObjectPointer)
!2477 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2474, type: !539, flags: DIFlagArtificial)
!2478 = !DILocalVariable(name: "fromValue", arg: 3, scope: !2474, type: !18)
!2479 = !DILocation(line: 0, scope: !2474)
!2480 = !DILocation(line: 611, column: 1, scope: !2474)
!2481 = !DILocation(line: 611, column: 13, scope: !2474)
!2482 = distinct !DISubprogram(name: "-[CABasicAnimation byValue]", scope: !3, file: !3, line: 612, type: !457, scopeLine: 612, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !462, retainedNodes: !2483)
!2483 = !{!2484, !2485}
!2484 = !DILocalVariable(name: "self", arg: 1, scope: !2482, type: !635, flags: DIFlagArtificial | DIFlagObjectPointer)
!2485 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2482, type: !539, flags: DIFlagArtificial)
!2486 = !DILocation(line: 0, scope: !2482)
!2487 = !DILocation(line: 612, column: 1, scope: !2482)
!2488 = distinct !DISubprogram(name: "-[CABasicAnimation setByValue:]", scope: !3, file: !3, line: 612, type: !460, scopeLine: 612, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !463, retainedNodes: !2489)
!2489 = !{!2490, !2491, !2492}
!2490 = !DILocalVariable(name: "self", arg: 1, scope: !2488, type: !635, flags: DIFlagArtificial | DIFlagObjectPointer)
!2491 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2488, type: !539, flags: DIFlagArtificial)
!2492 = !DILocalVariable(name: "byValue", arg: 3, scope: !2488, type: !18)
!2493 = !DILocation(line: 0, scope: !2488)
!2494 = !DILocation(line: 612, column: 1, scope: !2488)
!2495 = !DILocation(line: 612, column: 13, scope: !2488)
!2496 = distinct !DISubprogram(name: "-[CABasicAnimation toValue]", scope: !3, file: !3, line: 613, type: !457, scopeLine: 613, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !464, retainedNodes: !2497)
!2497 = !{!2498, !2499}
!2498 = !DILocalVariable(name: "self", arg: 1, scope: !2496, type: !635, flags: DIFlagArtificial | DIFlagObjectPointer)
!2499 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2496, type: !539, flags: DIFlagArtificial)
!2500 = !DILocation(line: 0, scope: !2496)
!2501 = !DILocation(line: 613, column: 1, scope: !2496)
!2502 = distinct !DISubprogram(name: "-[CABasicAnimation setToValue:]", scope: !3, file: !3, line: 613, type: !460, scopeLine: 613, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !465, retainedNodes: !2503)
!2503 = !{!2504, !2505, !2506}
!2504 = !DILocalVariable(name: "self", arg: 1, scope: !2502, type: !635, flags: DIFlagArtificial | DIFlagObjectPointer)
!2505 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2502, type: !539, flags: DIFlagArtificial)
!2506 = !DILocalVariable(name: "toValue", arg: 3, scope: !2502, type: !18)
!2507 = !DILocation(line: 0, scope: !2502)
!2508 = !DILocation(line: 613, column: 1, scope: !2502)
!2509 = !DILocation(line: 613, column: 13, scope: !2502)
!2510 = distinct !DISubprogram(name: "-[CAKeyframeAnimation calculationMode]", scope: !3, file: !3, line: 1007, type: !474, scopeLine: 1007, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !473, retainedNodes: !2511)
!2511 = !{!2512, !2514}
!2512 = !DILocalVariable(name: "self", arg: 1, scope: !2510, type: !2513, flags: DIFlagArtificial | DIFlagObjectPointer)
!2513 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !466, size: 64)
!2514 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2510, type: !539, flags: DIFlagArtificial)
!2515 = !DILocation(line: 0, scope: !2510)
!2516 = !DILocation(line: 1007, column: 1, scope: !2510)
!2517 = distinct !DISubprogram(name: "-[CAKeyframeAnimation setCalculationMode:]", scope: !3, file: !3, line: 1007, type: !478, scopeLine: 1007, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !477, retainedNodes: !2518)
!2518 = !{!2519, !2520, !2521}
!2519 = !DILocalVariable(name: "self", arg: 1, scope: !2517, type: !2513, flags: DIFlagArtificial | DIFlagObjectPointer)
!2520 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2517, type: !539, flags: DIFlagArtificial)
!2521 = !DILocalVariable(name: "calculationMode", arg: 3, scope: !2517, type: !109)
!2522 = !DILocation(line: 0, scope: !2517)
!2523 = !DILocation(line: 1007, column: 1, scope: !2517)
!2524 = !DILocation(line: 1007, column: 13, scope: !2517)
!2525 = distinct !DISubprogram(name: "-[CAKeyframeAnimation values]", scope: !3, file: !3, line: 1008, type: !481, scopeLine: 1008, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !480, retainedNodes: !2526)
!2526 = !{!2527, !2528}
!2527 = !DILocalVariable(name: "self", arg: 1, scope: !2525, type: !2513, flags: DIFlagArtificial | DIFlagObjectPointer)
!2528 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2525, type: !539, flags: DIFlagArtificial)
!2529 = !DILocation(line: 0, scope: !2525)
!2530 = !DILocation(line: 1008, column: 1, scope: !2525)
!2531 = distinct !DISubprogram(name: "-[CAKeyframeAnimation setValues:]", scope: !3, file: !3, line: 1008, type: !484, scopeLine: 1008, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !483, retainedNodes: !2532)
!2532 = !{!2533, !2534, !2535}
!2533 = !DILocalVariable(name: "self", arg: 1, scope: !2531, type: !2513, flags: DIFlagArtificial | DIFlagObjectPointer)
!2534 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2531, type: !539, flags: DIFlagArtificial)
!2535 = !DILocalVariable(name: "values", arg: 3, scope: !2531, type: !27)
!2536 = !DILocation(line: 0, scope: !2531)
!2537 = !DILocation(line: 1008, column: 1, scope: !2531)
!2538 = !DILocation(line: 1008, column: 13, scope: !2531)
!2539 = distinct !DISubprogram(name: "-[CASpringAnimation mass]", scope: !3, file: !3, line: 1013, type: !500, scopeLine: 1013, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !499, retainedNodes: !2540)
!2540 = !{!2541, !2543}
!2541 = !DILocalVariable(name: "self", arg: 1, scope: !2539, type: !2542, flags: DIFlagArtificial | DIFlagObjectPointer)
!2542 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !486, size: 64)
!2543 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2539, type: !539, flags: DIFlagArtificial)
!2544 = !DILocation(line: 0, scope: !2539)
!2545 = !DILocation(line: 1013, column: 1, scope: !2539)
!2546 = !DILocation(line: 1013, column: 13, scope: !2539)
!2547 = distinct !DISubprogram(name: "-[CASpringAnimation setMass:]", scope: !3, file: !3, line: 1013, type: !504, scopeLine: 1013, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !503, retainedNodes: !2548)
!2548 = !{!2549, !2550, !2551}
!2549 = !DILocalVariable(name: "self", arg: 1, scope: !2547, type: !2542, flags: DIFlagArtificial | DIFlagObjectPointer)
!2550 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2547, type: !539, flags: DIFlagArtificial)
!2551 = !DILocalVariable(name: "mass", arg: 3, scope: !2547, type: !45)
!2552 = !DILocation(line: 0, scope: !2547)
!2553 = !DILocation(line: 1013, column: 1, scope: !2547)
!2554 = !DILocation(line: 1013, column: 13, scope: !2547)
!2555 = distinct !DISubprogram(name: "-[CASpringAnimation stiffness]", scope: !3, file: !3, line: 1014, type: !500, scopeLine: 1014, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !506, retainedNodes: !2556)
!2556 = !{!2557, !2558}
!2557 = !DILocalVariable(name: "self", arg: 1, scope: !2555, type: !2542, flags: DIFlagArtificial | DIFlagObjectPointer)
!2558 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2555, type: !539, flags: DIFlagArtificial)
!2559 = !DILocation(line: 0, scope: !2555)
!2560 = !DILocation(line: 1014, column: 1, scope: !2555)
!2561 = !DILocation(line: 1014, column: 13, scope: !2555)
!2562 = distinct !DISubprogram(name: "-[CASpringAnimation setStiffness:]", scope: !3, file: !3, line: 1014, type: !504, scopeLine: 1014, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !507, retainedNodes: !2563)
!2563 = !{!2564, !2565, !2566}
!2564 = !DILocalVariable(name: "self", arg: 1, scope: !2562, type: !2542, flags: DIFlagArtificial | DIFlagObjectPointer)
!2565 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2562, type: !539, flags: DIFlagArtificial)
!2566 = !DILocalVariable(name: "stiffness", arg: 3, scope: !2562, type: !45)
!2567 = !DILocation(line: 0, scope: !2562)
!2568 = !DILocation(line: 1014, column: 1, scope: !2562)
!2569 = !DILocation(line: 1014, column: 13, scope: !2562)
!2570 = distinct !DISubprogram(name: "-[CASpringAnimation damping]", scope: !3, file: !3, line: 1015, type: !500, scopeLine: 1015, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !508, retainedNodes: !2571)
!2571 = !{!2572, !2573}
!2572 = !DILocalVariable(name: "self", arg: 1, scope: !2570, type: !2542, flags: DIFlagArtificial | DIFlagObjectPointer)
!2573 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2570, type: !539, flags: DIFlagArtificial)
!2574 = !DILocation(line: 0, scope: !2570)
!2575 = !DILocation(line: 1015, column: 1, scope: !2570)
!2576 = !DILocation(line: 1015, column: 13, scope: !2570)
!2577 = distinct !DISubprogram(name: "-[CASpringAnimation setDamping:]", scope: !3, file: !3, line: 1015, type: !504, scopeLine: 1015, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !509, retainedNodes: !2578)
!2578 = !{!2579, !2580, !2581}
!2579 = !DILocalVariable(name: "self", arg: 1, scope: !2577, type: !2542, flags: DIFlagArtificial | DIFlagObjectPointer)
!2580 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2577, type: !539, flags: DIFlagArtificial)
!2581 = !DILocalVariable(name: "damping", arg: 3, scope: !2577, type: !45)
!2582 = !DILocation(line: 0, scope: !2577)
!2583 = !DILocation(line: 1015, column: 1, scope: !2577)
!2584 = !DILocation(line: 1015, column: 13, scope: !2577)
!2585 = distinct !DISubprogram(name: "-[CASpringAnimation initialVelocity]", scope: !3, file: !3, line: 1016, type: !500, scopeLine: 1016, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !510, retainedNodes: !2586)
!2586 = !{!2587, !2588}
!2587 = !DILocalVariable(name: "self", arg: 1, scope: !2585, type: !2542, flags: DIFlagArtificial | DIFlagObjectPointer)
!2588 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2585, type: !539, flags: DIFlagArtificial)
!2589 = !DILocation(line: 0, scope: !2585)
!2590 = !DILocation(line: 1016, column: 1, scope: !2585)
!2591 = !DILocation(line: 1016, column: 13, scope: !2585)
!2592 = distinct !DISubprogram(name: "-[CASpringAnimation setInitialVelocity:]", scope: !3, file: !3, line: 1016, type: !504, scopeLine: 1016, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !511, retainedNodes: !2593)
!2593 = !{!2594, !2595, !2596}
!2594 = !DILocalVariable(name: "self", arg: 1, scope: !2592, type: !2542, flags: DIFlagArtificial | DIFlagObjectPointer)
!2595 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2592, type: !539, flags: DIFlagArtificial)
!2596 = !DILocalVariable(name: "initialVelocity", arg: 3, scope: !2592, type: !45)
!2597 = !DILocation(line: 0, scope: !2592)
!2598 = !DILocation(line: 1016, column: 1, scope: !2592)
!2599 = !DILocation(line: 1016, column: 13, scope: !2592)
!2600 = distinct !DISubprogram(name: "-[CASpringAnimation settlingDuration]", scope: !3, file: !3, line: 1017, type: !513, scopeLine: 1017, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !512, retainedNodes: !2601)
!2601 = !{!2602, !2603}
!2602 = !DILocalVariable(name: "self", arg: 1, scope: !2600, type: !2542, flags: DIFlagArtificial | DIFlagObjectPointer)
!2603 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2600, type: !539, flags: DIFlagArtificial)
!2604 = !DILocation(line: 0, scope: !2600)
!2605 = !DILocation(line: 1017, column: 1, scope: !2600)
!2606 = !DILocation(line: 1017, column: 13, scope: !2600)
!2607 = distinct !DISubprogram(name: "-[CATransition type]", scope: !3, file: !3, line: 1021, type: !523, scopeLine: 1021, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !522, retainedNodes: !2608)
!2608 = !{!2609, !2611}
!2609 = !DILocalVariable(name: "self", arg: 1, scope: !2607, type: !2610, flags: DIFlagArtificial | DIFlagObjectPointer)
!2610 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !515, size: 64)
!2611 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2607, type: !539, flags: DIFlagArtificial)
!2612 = !DILocation(line: 0, scope: !2607)
!2613 = !DILocation(line: 1021, column: 1, scope: !2607)
!2614 = distinct !DISubprogram(name: "-[CATransition setType:]", scope: !3, file: !3, line: 1021, type: !527, scopeLine: 1021, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !526, retainedNodes: !2615)
!2615 = !{!2616, !2617, !2618}
!2616 = !DILocalVariable(name: "self", arg: 1, scope: !2614, type: !2610, flags: DIFlagArtificial | DIFlagObjectPointer)
!2617 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2614, type: !539, flags: DIFlagArtificial)
!2618 = !DILocalVariable(name: "type", arg: 3, scope: !2614, type: !109)
!2619 = !DILocation(line: 0, scope: !2614)
!2620 = !DILocation(line: 1021, column: 1, scope: !2614)
!2621 = !DILocation(line: 1021, column: 13, scope: !2614)
!2622 = distinct !DISubprogram(name: "-[CATransition subtype]", scope: !3, file: !3, line: 1022, type: !523, scopeLine: 1022, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !529, retainedNodes: !2623)
!2623 = !{!2624, !2625}
!2624 = !DILocalVariable(name: "self", arg: 1, scope: !2622, type: !2610, flags: DIFlagArtificial | DIFlagObjectPointer)
!2625 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2622, type: !539, flags: DIFlagArtificial)
!2626 = !DILocation(line: 0, scope: !2622)
!2627 = !DILocation(line: 1022, column: 1, scope: !2622)
!2628 = distinct !DISubprogram(name: "-[CATransition setSubtype:]", scope: !3, file: !3, line: 1022, type: !527, scopeLine: 1022, flags: DIFlagArtificial | DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !530, retainedNodes: !2629)
!2629 = !{!2630, !2631, !2632}
!2630 = !DILocalVariable(name: "self", arg: 1, scope: !2628, type: !2610, flags: DIFlagArtificial | DIFlagObjectPointer)
!2631 = !DILocalVariable(name: "_cmd", arg: 2, scope: !2628, type: !539, flags: DIFlagArtificial)
!2632 = !DILocalVariable(name: "subtype", arg: 3, scope: !2628, type: !109)
!2633 = !DILocation(line: 0, scope: !2628)
!2634 = !DILocation(line: 1022, column: 1, scope: !2628)
!2635 = !DILocation(line: 1022, column: 13, scope: !2628)
!2636 = !DISubprogram(name: "acos", scope: !2204, file: !2204, line: 53, type: !2205, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!2637 = !DISubprogram(name: "sin", scope: !2204, file: !2204, line: 64, type: !2205, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment