// !$*UTF8*$! { archiveVersion = 1; classes = { }; objectVersion = 46; objects = { /* Begin PBXBuildFile section */ D003702E1DA43052004308D3 /* PeerInfoAvatarAndNameItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D003702D1DA43052004308D3 /* PeerInfoAvatarAndNameItem.swift */; }; D00370301DA43077004308D3 /* PeerInfoItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D003702F1DA43077004308D3 /* PeerInfoItem.swift */; }; D00370321DA46C06004308D3 /* PeerInfoTextWithLabelItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D00370311DA46C06004308D3 /* PeerInfoTextWithLabelItem.swift */; }; D0105D5A1D80B957008755D8 /* ChatChannelSubscriberInputPanelNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0105D591D80B957008755D8 /* ChatChannelSubscriberInputPanelNode.swift */; }; D02958021D6F0D5F00360E5E /* TapLongTapOrDoubleTapGestureRecognizer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D02958011D6F0D5F00360E5E /* TapLongTapOrDoubleTapGestureRecognizer.swift */; }; D02BE0711D91814C000889C2 /* ChatHistoryGridNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D02BE0701D91814C000889C2 /* ChatHistoryGridNode.swift */; }; D02BE0771D9190EF000889C2 /* GridMessageItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D02BE0761D9190EF000889C2 /* GridMessageItem.swift */; }; D03120F61DA534C1006A2A60 /* PeerInfoActionItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03120F51DA534C1006A2A60 /* PeerInfoActionItem.swift */; }; D03ADB481D703268005A521C /* ChatInterfaceState.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03ADB471D703268005A521C /* ChatInterfaceState.swift */; }; D03ADB4B1D70443F005A521C /* ReplyAccessoryPanelNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03ADB4A1D70443F005A521C /* ReplyAccessoryPanelNode.swift */; }; D03ADB4D1D7045C9005A521C /* ChatInterfaceStateAccessoryPanels.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03ADB4C1D7045C9005A521C /* ChatInterfaceStateAccessoryPanels.swift */; }; D03ADB4F1D70546B005A521C /* AccessoryPanelNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03ADB4E1D70546B005A521C /* AccessoryPanelNode.swift */; }; D07A7DA31D957671005BCD27 /* ListMessageSnippetItemNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D07A7DA21D957671005BCD27 /* ListMessageSnippetItemNode.swift */; }; D07A7DA51D95783C005BCD27 /* ListMessageNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D07A7DA41D95783C005BCD27 /* ListMessageNode.swift */; }; D08D452E1D5E340300A7428A /* AsyncDisplayKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D08D45291D5E340300A7428A /* AsyncDisplayKit.framework */; }; D08D452F1D5E340300A7428A /* Display.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D08D452A1D5E340300A7428A /* Display.framework */; }; D08D45301D5E340300A7428A /* Postbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D08D452B1D5E340300A7428A /* Postbox.framework */; }; D08D45311D5E340300A7428A /* SwiftSignalKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D08D452C1D5E340300A7428A /* SwiftSignalKit.framework */; }; D0AB0BB11D6718DA002C78E7 /* libiconv.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = D0AB0BB01D6718DA002C78E7 /* libiconv.tbd */; }; D0AB0BB31D6718EB002C78E7 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = D0AB0BB21D6718EB002C78E7 /* libz.tbd */; }; D0AB0BB51D6718F1002C78E7 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D0AB0BB41D6718F1002C78E7 /* CoreMedia.framework */; }; D0AB0BBB1D6719B5002C78E7 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = D0AB0BBA1D6719B5002C78E7 /* Images.xcassets */; }; D0B417C31D7DE54E004562A4 /* ChatPresentationInterfaceState.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B417C21D7DE54E004562A4 /* ChatPresentationInterfaceState.swift */; }; D0B7F8E21D8A18070045D939 /* PeerMediaCollectionController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B7F8E11D8A18070045D939 /* PeerMediaCollectionController.swift */; }; D0B7F8E81D8A1F5F0045D939 /* PeerMediaCollectionControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B7F8E71D8A1F5F0045D939 /* PeerMediaCollectionControllerNode.swift */; }; D0B843921DA7F13E005F29E1 /* PeerInfoDisclosureItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B843911DA7F13E005F29E1 /* PeerInfoDisclosureItem.swift */; }; D0B843CD1DA903BB005F29E1 /* PeerInfoController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B843CC1DA903BB005F29E1 /* PeerInfoController.swift */; }; D0B843CF1DA922AD005F29E1 /* PeerInfoEntries.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B843CE1DA922AD005F29E1 /* PeerInfoEntries.swift */; }; D0B843D11DA922D7005F29E1 /* UserInfoEntries.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B843D01DA922D7005F29E1 /* UserInfoEntries.swift */; }; D0B843D31DA922E3005F29E1 /* ChannelInfoEntries.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B843D21DA922E3005F29E1 /* ChannelInfoEntries.swift */; }; D0B843D51DA95427005F29E1 /* GroupInfoEntries.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B843D41DA95427005F29E1 /* GroupInfoEntries.swift */; }; D0B843D91DAAAA0C005F29E1 /* PeerInfoPeerItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B843D81DAAAA0C005F29E1 /* PeerInfoPeerItem.swift */; }; D0B843DB1DAAB138005F29E1 /* PeerInfoPeerActionItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B843DA1DAAB138005F29E1 /* PeerInfoPeerActionItem.swift */; }; D0B844561DAC3AEE005F29E1 /* PresenceStrings.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B844551DAC3AEE005F29E1 /* PresenceStrings.swift */; }; D0B844581DAC44E8005F29E1 /* PeerPresenceStatusManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0B844571DAC44E8005F29E1 /* PeerPresenceStatusManager.swift */; }; D0BA6F831D784C520034826E /* ChatInputPanelNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0BA6F821D784C520034826E /* ChatInputPanelNode.swift */; }; D0BA6F851D784ECD0034826E /* ChatInterfaceStateInputPanels.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0BA6F841D784ECD0034826E /* ChatInterfaceStateInputPanels.swift */; }; D0BA6F881D784F880034826E /* ChatMessageSelectionInputPanelNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0BA6F871D784F880034826E /* ChatMessageSelectionInputPanelNode.swift */; }; D0D268671D78793B00C422DA /* ChatInterfaceStateNavigationButtons.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0D268661D78793B00C422DA /* ChatInterfaceStateNavigationButtons.swift */; }; D0D268691D78865300C422DA /* ChatAvatarNavigationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0D268681D78865300C422DA /* ChatAvatarNavigationNode.swift */; }; D0D2686C1D788F8200C422DA /* NavigationAccessoryPanelNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0D2686B1D788F8200C422DA /* NavigationAccessoryPanelNode.swift */; }; D0D2686E1D7898A900C422DA /* ChatMessageSelectionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0D2686D1D7898A900C422DA /* ChatMessageSelectionNode.swift */; }; D0D2689A1D79CF9F00C422DA /* ChatPanelInterfaceInteraction.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0D268991D79CF9F00C422DA /* ChatPanelInterfaceInteraction.swift */; }; D0D2689D1D79D33E00C422DA /* ShareRecipientsActionSheetController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0D2689C1D79D33E00C422DA /* ShareRecipientsActionSheetController.swift */; }; D0DE76F71D91BA3D002B8809 /* GridHoleItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DE76F61D91BA3D002B8809 /* GridHoleItem.swift */; }; D0DE76FE1D92EFF2002B8809 /* PeerMediaCollectionTitleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DE76FD1D92EFF2002B8809 /* PeerMediaCollectionTitleView.swift */; }; D0DE77001D92F1EB002B8809 /* ChatTitleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DE76FF1D92F1EB002B8809 /* ChatTitleView.swift */; }; D0DE77231D932043002B8809 /* PeerMediaCollectionInterfaceState.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DE77221D932043002B8809 /* PeerMediaCollectionInterfaceState.swift */; }; D0DE77251D93225E002B8809 /* PeerMediaCollectionInterfaceStateButtons.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DE77241D93225E002B8809 /* PeerMediaCollectionInterfaceStateButtons.swift */; }; D0DE77271D932627002B8809 /* ChatHistoryNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DE77261D932627002B8809 /* ChatHistoryNode.swift */; }; D0DE77291D932923002B8809 /* GridMessageSelectionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DE77281D932923002B8809 /* GridMessageSelectionNode.swift */; }; D0DE772B1D932E16002B8809 /* PeerMediaCollectionModeSelectionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DE772A1D932E16002B8809 /* PeerMediaCollectionModeSelectionNode.swift */; }; D0DE77301D934DEF002B8809 /* ListMessageItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DE772F1D934DEF002B8809 /* ListMessageItem.swift */; }; D0DE77321D940295002B8809 /* ListMessageFileItemNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DE77311D940295002B8809 /* ListMessageFileItemNode.swift */; }; D0DF0C951D81B063008AEB01 /* ChatInterfaceStateContextMenus.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DF0C941D81B063008AEB01 /* ChatInterfaceStateContextMenus.swift */; }; D0DF0C981D81FF28008AEB01 /* HashtagChatInputContextPanelNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DF0C971D81FF28008AEB01 /* HashtagChatInputContextPanelNode.swift */; }; D0DF0C9A1D81FF3F008AEB01 /* ChatInputContextPanelNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DF0C991D81FF3F008AEB01 /* ChatInputContextPanelNode.swift */; }; D0DF0C9C1D81FFB2008AEB01 /* ChatInterfaceInputContextPanels.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DF0C9B1D81FFB2008AEB01 /* ChatInterfaceInputContextPanels.swift */; }; D0DF0C9E1D82141F008AEB01 /* ChatInterfaceInputContexts.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DF0C9D1D82141F008AEB01 /* ChatInterfaceInputContexts.swift */; }; D0DF0CA11D821B28008AEB01 /* HashtagsTableCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DF0CA01D821B28008AEB01 /* HashtagsTableCell.swift */; }; D0DF0CA41D82BCD0008AEB01 /* MentionChatInputContextPanelNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DF0CA31D82BCD0008AEB01 /* MentionChatInputContextPanelNode.swift */; }; D0DF0CA61D82BCE0008AEB01 /* MentionsTableCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DF0CA51D82BCE0008AEB01 /* MentionsTableCell.swift */; }; D0E7A1BD1D8C246D00C37A6F /* ChatHistoryListNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0E7A1BC1D8C246D00C37A6F /* ChatHistoryListNode.swift */; }; D0E7A1BF1D8C24B900C37A6F /* ChatHistoryViewForLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0E7A1BE1D8C24B900C37A6F /* ChatHistoryViewForLocation.swift */; }; D0E7A1C11D8C258D00C37A6F /* ChatHistoryEntriesForView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0E7A1C01D8C258D00C37A6F /* ChatHistoryEntriesForView.swift */; }; D0E7A1C31D8C25D600C37A6F /* PreparedChatHistoryViewTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0E7A1C21D8C25D600C37A6F /* PreparedChatHistoryViewTransition.swift */; }; D0EE971A1D88BCA0006C18E1 /* ChatInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0EE97191D88BCA0006C18E1 /* ChatInfo.swift */; }; D0F69D231D6B87D30046BCD6 /* FFMpegMediaFrameSourceContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69CD31D6B87D30046BCD6 /* FFMpegMediaFrameSourceContext.swift */; }; D0F69D241D6B87D30046BCD6 /* MediaPlayerAudioRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69CD41D6B87D30046BCD6 /* MediaPlayerAudioRenderer.swift */; }; D0F69D261D6B87D30046BCD6 /* MediaManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69CD61D6B87D30046BCD6 /* MediaManager.swift */; }; D0F69D271D6B87D30046BCD6 /* FFMpegAudioFrameDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69CD71D6B87D30046BCD6 /* FFMpegAudioFrameDecoder.swift */; }; D0F69D2C1D6B87D30046BCD6 /* MediaPlayerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69CDC1D6B87D30046BCD6 /* MediaPlayerNode.swift */; }; D0F69D2E1D6B87D30046BCD6 /* PeerAvatar.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69CDE1D6B87D30046BCD6 /* PeerAvatar.swift */; }; D0F69D311D6B87D30046BCD6 /* FFMpegMediaFrameSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69CE11D6B87D30046BCD6 /* FFMpegMediaFrameSource.swift */; }; D0F69D351D6B87D30046BCD6 /* MediaFrameSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69CE51D6B87D30046BCD6 /* MediaFrameSource.swift */; }; D0F69D4B1D6B87D30046BCD6 /* TouchDownGestureRecognizer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69CFB1D6B87D30046BCD6 /* TouchDownGestureRecognizer.swift */; }; D0F69D521D6B87D30046BCD6 /* MediaPlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69D021D6B87D30046BCD6 /* MediaPlayer.swift */; }; D0F69D661D6B87D30046BCD6 /* FFMpegMediaFrameSourceContextHelpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69D161D6B87D30046BCD6 /* FFMpegMediaFrameSourceContextHelpers.swift */; }; D0F69D671D6B87D30046BCD6 /* FFMpegPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69D171D6B87D30046BCD6 /* FFMpegPacket.swift */; }; D0F69D6D1D6B87D30046BCD6 /* MediaTrackDecodableFrame.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69D1D1D6B87D30046BCD6 /* MediaTrackDecodableFrame.swift */; }; D0F69D771D6B87DF0046BCD6 /* FFMpegMediaPassthroughVideoFrameDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69D6F1D6B87DE0046BCD6 /* FFMpegMediaPassthroughVideoFrameDecoder.swift */; }; D0F69D781D6B87DF0046BCD6 /* MediaTrackFrameBuffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69D701D6B87DE0046BCD6 /* MediaTrackFrameBuffer.swift */; }; D0F69D791D6B87DF0046BCD6 /* MediaTrackFrame.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69D711D6B87DE0046BCD6 /* MediaTrackFrame.swift */; }; D0F69D9C1D6B87EC0046BCD6 /* MediaPlaybackData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69D7F1D6B87EC0046BCD6 /* MediaPlaybackData.swift */; }; D0F69DA41D6B87EC0046BCD6 /* FFMpegMediaVideoFrameDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69D871D6B87EC0046BCD6 /* FFMpegMediaVideoFrameDecoder.swift */; }; D0F69DA51D6B87EC0046BCD6 /* MediaTrackFrameDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69D881D6B87EC0046BCD6 /* MediaTrackFrameDecoder.swift */; }; D0F69DAD1D6B87EC0046BCD6 /* Cache.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69D901D6B87EC0046BCD6 /* Cache.swift */; }; D0F69DBA1D6B88190046BCD6 /* TelegramUI.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */; }; D0F69DC11D6B89D30046BCD6 /* ListSectionHeaderNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DC01D6B89D30046BCD6 /* ListSectionHeaderNode.swift */; }; D0F69DC31D6B89DA0046BCD6 /* TextNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DC21D6B89DA0046BCD6 /* TextNode.swift */; }; D0F69DC51D6B89E10046BCD6 /* RadialProgressNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DC41D6B89E10046BCD6 /* RadialProgressNode.swift */; }; D0F69DC71D6B89E70046BCD6 /* TransformImageNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DC61D6B89E70046BCD6 /* TransformImageNode.swift */; }; D0F69DC91D6B89EB0046BCD6 /* ImageNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DC81D6B89EB0046BCD6 /* ImageNode.swift */; }; D0F69DCF1D6B8A0D0046BCD6 /* SearchBarNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DCB1D6B8A0D0046BCD6 /* SearchBarNode.swift */; }; D0F69DD01D6B8A0D0046BCD6 /* SearchBarPlaceholderNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DCC1D6B8A0D0046BCD6 /* SearchBarPlaceholderNode.swift */; }; D0F69DD11D6B8A0D0046BCD6 /* SearchDisplayController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DCD1D6B8A0D0046BCD6 /* SearchDisplayController.swift */; }; D0F69DD21D6B8A0D0046BCD6 /* SearchDisplayControllerContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DCE1D6B8A0D0046BCD6 /* SearchDisplayControllerContentNode.swift */; }; D0F69DD61D6B8A2D0046BCD6 /* AlertController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DD51D6B8A2D0046BCD6 /* AlertController.swift */; }; D0F69DDF1D6B8A420046BCD6 /* ListController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DD81D6B8A420046BCD6 /* ListController.swift */; }; D0F69DE01D6B8A420046BCD6 /* ListControllerButtonItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DD91D6B8A420046BCD6 /* ListControllerButtonItem.swift */; }; D0F69DE11D6B8A420046BCD6 /* ListControllerDisclosureActionItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DDA1D6B8A420046BCD6 /* ListControllerDisclosureActionItem.swift */; }; D0F69DE21D6B8A420046BCD6 /* ListControllerGroupableItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DDB1D6B8A420046BCD6 /* ListControllerGroupableItem.swift */; }; D0F69DE31D6B8A420046BCD6 /* ListControllerItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DDC1D6B8A420046BCD6 /* ListControllerItem.swift */; }; D0F69DE41D6B8A420046BCD6 /* ListControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DDD1D6B8A420046BCD6 /* ListControllerNode.swift */; }; D0F69DE51D6B8A420046BCD6 /* ListControllerSpacerItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DDE1D6B8A420046BCD6 /* ListControllerSpacerItem.swift */; }; D0F69DEF1D6B8A6C0046BCD6 /* AuthorizationCodeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DE81D6B8A6C0046BCD6 /* AuthorizationCodeController.swift */; }; D0F69DF01D6B8A6C0046BCD6 /* AuthorizationCodeControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DE91D6B8A6C0046BCD6 /* AuthorizationCodeControllerNode.swift */; }; D0F69DF11D6B8A6C0046BCD6 /* AuthorizationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DEA1D6B8A6C0046BCD6 /* AuthorizationController.swift */; }; D0F69DF21D6B8A6C0046BCD6 /* AuthorizationPasswordController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DEB1D6B8A6C0046BCD6 /* AuthorizationPasswordController.swift */; }; D0F69DF31D6B8A6C0046BCD6 /* AuthorizationPasswordControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DEC1D6B8A6C0046BCD6 /* AuthorizationPasswordControllerNode.swift */; }; D0F69DF41D6B8A6C0046BCD6 /* AuthorizationPhoneController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DED1D6B8A6C0046BCD6 /* AuthorizationPhoneController.swift */; }; D0F69DF51D6B8A6C0046BCD6 /* AuthorizationPhoneControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DEE1D6B8A6C0046BCD6 /* AuthorizationPhoneControllerNode.swift */; }; D0F69DFE1D6B8A880046BCD6 /* AvatarNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DF71D6B8A880046BCD6 /* AvatarNode.swift */; }; D0F69DFF1D6B8A880046BCD6 /* ChatListController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DF81D6B8A880046BCD6 /* ChatListController.swift */; }; D0F69E001D6B8A880046BCD6 /* ChatListControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DF91D6B8A880046BCD6 /* ChatListControllerNode.swift */; }; D0F69E011D6B8A880046BCD6 /* ChatListEmptyItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DFA1D6B8A880046BCD6 /* ChatListEmptyItem.swift */; }; D0F69E021D6B8A880046BCD6 /* ChatListHoleItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DFB1D6B8A880046BCD6 /* ChatListHoleItem.swift */; }; D0F69E031D6B8A880046BCD6 /* ChatListItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DFC1D6B8A880046BCD6 /* ChatListItem.swift */; }; D0F69E041D6B8A880046BCD6 /* ChatListSearchItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69DFD1D6B8A880046BCD6 /* ChatListSearchItem.swift */; }; D0F69E081D6B8A9C0046BCD6 /* ChatListSearchContainerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E071D6B8A9C0046BCD6 /* ChatListSearchContainerNode.swift */; }; D0F69E0A1D6B8AA60046BCD6 /* ChatListSearchRecentPeersNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E091D6B8AA60046BCD6 /* ChatListSearchRecentPeersNode.swift */; }; D0F69E0C1D6B8AB10046BCD6 /* HorizontalPeerItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E0B1D6B8AB10046BCD6 /* HorizontalPeerItem.swift */; }; D0F69E131D6B8ACF0046BCD6 /* ChatController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E0E1D6B8ACF0046BCD6 /* ChatController.swift */; }; D0F69E141D6B8ACF0046BCD6 /* ChatControllerInteraction.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E0F1D6B8ACF0046BCD6 /* ChatControllerInteraction.swift */; }; D0F69E151D6B8ACF0046BCD6 /* ChatControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E101D6B8ACF0046BCD6 /* ChatControllerNode.swift */; }; D0F69E161D6B8ACF0046BCD6 /* ChatHistoryEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E111D6B8ACF0046BCD6 /* ChatHistoryEntry.swift */; }; D0F69E171D6B8ACF0046BCD6 /* ChatHistoryLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E121D6B8ACF0046BCD6 /* ChatHistoryLocation.swift */; }; D0F69E1A1D6B8AE60046BCD6 /* ChatHoleItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E191D6B8AE60046BCD6 /* ChatHoleItem.swift */; }; D0F69E2D1D6B8B030046BCD6 /* ChatMessageActionItemNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E1B1D6B8B030046BCD6 /* ChatMessageActionItemNode.swift */; }; D0F69E2E1D6B8B030046BCD6 /* ChatMessageAvatarAccessoryItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E1C1D6B8B030046BCD6 /* ChatMessageAvatarAccessoryItem.swift */; }; D0F69E2F1D6B8B030046BCD6 /* ChatMessageBubbleContentCalclulateImageCorners.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E1D1D6B8B030046BCD6 /* ChatMessageBubbleContentCalclulateImageCorners.swift */; }; D0F69E301D6B8B030046BCD6 /* ChatMessageBubbleContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E1E1D6B8B030046BCD6 /* ChatMessageBubbleContentNode.swift */; }; D0F69E311D6B8B030046BCD6 /* ChatMessageBubbleItemNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E1F1D6B8B030046BCD6 /* ChatMessageBubbleItemNode.swift */; }; D0F69E321D6B8B030046BCD6 /* ChatMessageDateAndStatusNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E201D6B8B030046BCD6 /* ChatMessageDateAndStatusNode.swift */; }; D0F69E331D6B8B030046BCD6 /* ChatMessageFileBubbleContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E211D6B8B030046BCD6 /* ChatMessageFileBubbleContentNode.swift */; }; D0F69E341D6B8B030046BCD6 /* ChatMessageForwardInfoNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E221D6B8B030046BCD6 /* ChatMessageForwardInfoNode.swift */; }; D0F69E351D6B8B030046BCD6 /* ChatMessageInteractiveFileNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E231D6B8B030046BCD6 /* ChatMessageInteractiveFileNode.swift */; }; D0F69E361D6B8B030046BCD6 /* ChatMessageInteractiveMediaNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E241D6B8B030046BCD6 /* ChatMessageInteractiveMediaNode.swift */; }; D0F69E371D6B8B030046BCD6 /* ChatMessageItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E251D6B8B030046BCD6 /* ChatMessageItem.swift */; }; D0F69E381D6B8B030046BCD6 /* ChatMessageItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E261D6B8B030046BCD6 /* ChatMessageItemView.swift */; }; D0F69E391D6B8B030046BCD6 /* ChatMessageMediaBubbleContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E271D6B8B030046BCD6 /* ChatMessageMediaBubbleContentNode.swift */; }; D0F69E3A1D6B8B030046BCD6 /* ChatMessageReplyInfoNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E281D6B8B030046BCD6 /* ChatMessageReplyInfoNode.swift */; }; D0F69E3B1D6B8B030046BCD6 /* ChatMessageStickerItemNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E291D6B8B030046BCD6 /* ChatMessageStickerItemNode.swift */; }; D0F69E3C1D6B8B030046BCD6 /* ChatMessageTextBubbleContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E2A1D6B8B030046BCD6 /* ChatMessageTextBubbleContentNode.swift */; }; D0F69E3D1D6B8B030046BCD6 /* ChatMessageWebpageBubbleContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E2B1D6B8B030046BCD6 /* ChatMessageWebpageBubbleContentNode.swift */; }; D0F69E3E1D6B8B030046BCD6 /* ChatUnreadItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E2C1D6B8B030046BCD6 /* ChatUnreadItem.swift */; }; D0F69E421D6B8B7E0046BCD6 /* ChatTextInputPanelNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E401D6B8B7E0046BCD6 /* ChatTextInputPanelNode.swift */; }; D0F69E431D6B8B7E0046BCD6 /* ResizeableTextInputView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E411D6B8B7E0046BCD6 /* ResizeableTextInputView.swift */; }; D0F69E461D6B8B950046BCD6 /* ChatHistoryNavigationButtonNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E451D6B8B950046BCD6 /* ChatHistoryNavigationButtonNode.swift */; }; D0F69E491D6B8BAC0046BCD6 /* ActionSheetRollImageItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E481D6B8BAC0046BCD6 /* ActionSheetRollImageItem.swift */; }; D0F69E4C1D6B8BB20046BCD6 /* ChatMediaActionSheetController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E4A1D6B8BB20046BCD6 /* ChatMediaActionSheetController.swift */; }; D0F69E4D1D6B8BB20046BCD6 /* ChatMediaActionSheetRollItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E4B1D6B8BB20046BCD6 /* ChatMediaActionSheetRollItem.swift */; }; D0F69E551D6B8BDA0046BCD6 /* GalleryController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E501D6B8BDA0046BCD6 /* GalleryController.swift */; }; D0F69E561D6B8BDA0046BCD6 /* GalleryControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E511D6B8BDA0046BCD6 /* GalleryControllerNode.swift */; }; D0F69E571D6B8BDA0046BCD6 /* GalleryItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E521D6B8BDA0046BCD6 /* GalleryItem.swift */; }; D0F69E581D6B8BDA0046BCD6 /* GalleryItemNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E531D6B8BDA0046BCD6 /* GalleryItemNode.swift */; }; D0F69E591D6B8BDA0046BCD6 /* GalleryPagerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E541D6B8BDA0046BCD6 /* GalleryPagerNode.swift */; }; D0F69E611D6B8BF90046BCD6 /* ChatDocumentGalleryItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E5B1D6B8BF90046BCD6 /* ChatDocumentGalleryItem.swift */; }; D0F69E621D6B8BF90046BCD6 /* ChatHoleGalleryItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E5C1D6B8BF90046BCD6 /* ChatHoleGalleryItem.swift */; }; D0F69E631D6B8BF90046BCD6 /* ChatImageGalleryItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E5D1D6B8BF90046BCD6 /* ChatImageGalleryItem.swift */; }; D0F69E641D6B8BF90046BCD6 /* ChatVideoGalleryItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E5E1D6B8BF90046BCD6 /* ChatVideoGalleryItem.swift */; }; D0F69E651D6B8BF90046BCD6 /* ChatVideoGalleryItemScrubberView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E5F1D6B8BF90046BCD6 /* ChatVideoGalleryItemScrubberView.swift */; }; D0F69E661D6B8BF90046BCD6 /* ZoomableContentGalleryItemNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E601D6B8BF90046BCD6 /* ZoomableContentGalleryItemNode.swift */; }; D0F69E6A1D6B8C160046BCD6 /* MapInputController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E681D6B8C160046BCD6 /* MapInputController.swift */; }; D0F69E6B1D6B8C160046BCD6 /* MapInputControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E691D6B8C160046BCD6 /* MapInputControllerNode.swift */; }; D0F69E731D6B8C340046BCD6 /* ContactsController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E6D1D6B8C340046BCD6 /* ContactsController.swift */; }; D0F69E741D6B8C340046BCD6 /* ContactsControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E6E1D6B8C340046BCD6 /* ContactsControllerNode.swift */; }; D0F69E751D6B8C340046BCD6 /* ContactsPeerItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E6F1D6B8C340046BCD6 /* ContactsPeerItem.swift */; }; D0F69E761D6B8C340046BCD6 /* ContactsSearchContainerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E701D6B8C340046BCD6 /* ContactsSearchContainerNode.swift */; }; D0F69E771D6B8C340046BCD6 /* ContactsSectionHeaderAccessoryItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E711D6B8C340046BCD6 /* ContactsSectionHeaderAccessoryItem.swift */; }; D0F69E781D6B8C340046BCD6 /* ContactsVCardItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E721D6B8C340046BCD6 /* ContactsVCardItem.swift */; }; D0F69E7C1D6B8C470046BCD6 /* SettingsAccountInfoItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E7A1D6B8C470046BCD6 /* SettingsAccountInfoItem.swift */; }; D0F69E7D1D6B8C470046BCD6 /* SettingsController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E7B1D6B8C470046BCD6 /* SettingsController.swift */; }; D0F69E881D6B8C850046BCD6 /* FastBlur.h in Headers */ = {isa = PBXBuildFile; fileRef = D0F69E7F1D6B8C850046BCD6 /* FastBlur.h */; }; D0F69E891D6B8C850046BCD6 /* FastBlur.m in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E801D6B8C850046BCD6 /* FastBlur.m */; }; D0F69E8A1D6B8C850046BCD6 /* FFMpegSwResample.h in Headers */ = {isa = PBXBuildFile; fileRef = D0F69E811D6B8C850046BCD6 /* FFMpegSwResample.h */; }; D0F69E8B1D6B8C850046BCD6 /* FFMpegSwResample.m in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E821D6B8C850046BCD6 /* FFMpegSwResample.m */; }; D0F69E8C1D6B8C850046BCD6 /* FrameworkBundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E831D6B8C850046BCD6 /* FrameworkBundle.swift */; }; D0F69E8D1D6B8C850046BCD6 /* Localizable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E841D6B8C850046BCD6 /* Localizable.swift */; }; D0F69E8E1D6B8C850046BCD6 /* RingBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = D0F69E851D6B8C850046BCD6 /* RingBuffer.h */; }; D0F69E8F1D6B8C850046BCD6 /* RingBuffer.m in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E861D6B8C850046BCD6 /* RingBuffer.m */; }; D0F69E901D6B8C850046BCD6 /* RingByteBuffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E871D6B8C850046BCD6 /* RingByteBuffer.swift */; }; D0F69E961D6B8C9B0046BCD6 /* ProgressiveImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E931D6B8C9B0046BCD6 /* ProgressiveImage.swift */; }; D0F69E971D6B8C9B0046BCD6 /* WebP.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E941D6B8C9B0046BCD6 /* WebP.swift */; }; D0F69E9A1D6B8D200046BCD6 /* UIImage+WebP.h in Headers */ = {isa = PBXBuildFile; fileRef = D0F69E981D6B8D200046BCD6 /* UIImage+WebP.h */; }; D0F69E9B1D6B8D200046BCD6 /* UIImage+WebP.m in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E991D6B8D200046BCD6 /* UIImage+WebP.m */; }; D0F69E9C1D6B8D520046BCD6 /* TelegramCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D08D452D1D5E340300A7428A /* TelegramCore.framework */; }; D0F69EA11D6B8E380046BCD6 /* FileResources.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E9E1D6B8E380046BCD6 /* FileResources.swift */; }; D0F69EA21D6B8E380046BCD6 /* PhotoResources.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69E9F1D6B8E380046BCD6 /* PhotoResources.swift */; }; D0F69EA31D6B8E380046BCD6 /* StickerResources.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F69EA01D6B8E380046BCD6 /* StickerResources.swift */; }; D0F69EA71D6B9BBC0046BCD6 /* libwebp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D0F69EA61D6B9BBC0046BCD6 /* libwebp.a */; }; D0F69EAC1D6B9BCB0046BCD6 /* libavcodec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D0F69EA81D6B9BCB0046BCD6 /* libavcodec.a */; }; D0F69EAD1D6B9BCB0046BCD6 /* libavformat.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D0F69EA91D6B9BCB0046BCD6 /* libavformat.a */; }; D0F69EAE1D6B9BCB0046BCD6 /* libavutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D0F69EAA1D6B9BCB0046BCD6 /* libavutil.a */; }; D0F69EAF1D6B9BCB0046BCD6 /* libswresample.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D0F69EAB1D6B9BCB0046BCD6 /* libswresample.a */; }; D0FC40891D5B8E7500261D9D /* TelegramUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D0FC407F1D5B8E7400261D9D /* TelegramUI.framework */; }; D0FC408E1D5B8E7500261D9D /* TelegramUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0FC408D1D5B8E7500261D9D /* TelegramUITests.swift */; }; D0FC40901D5B8E7500261D9D /* TelegramUI.h in Headers */ = {isa = PBXBuildFile; fileRef = D0FC40821D5B8E7400261D9D /* TelegramUI.h */; settings = {ATTRIBUTES = (Public, ); }; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ D0FC408A1D5B8E7500261D9D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D0FC40761D5B8E7400261D9D /* Project object */; proxyType = 1; remoteGlobalIDString = D0FC407E1D5B8E7400261D9D; remoteInfo = TelegramUI; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ D003702D1DA43052004308D3 /* PeerInfoAvatarAndNameItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerInfoAvatarAndNameItem.swift; sourceTree = ""; }; D003702F1DA43077004308D3 /* PeerInfoItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerInfoItem.swift; sourceTree = ""; }; D00370311DA46C06004308D3 /* PeerInfoTextWithLabelItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerInfoTextWithLabelItem.swift; sourceTree = ""; }; D0105D591D80B957008755D8 /* ChatChannelSubscriberInputPanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatChannelSubscriberInputPanelNode.swift; sourceTree = ""; }; D02958011D6F0D5F00360E5E /* TapLongTapOrDoubleTapGestureRecognizer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TapLongTapOrDoubleTapGestureRecognizer.swift; sourceTree = ""; }; D02BE0701D91814C000889C2 /* ChatHistoryGridNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatHistoryGridNode.swift; sourceTree = ""; }; D02BE0761D9190EF000889C2 /* GridMessageItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GridMessageItem.swift; sourceTree = ""; }; D03120F51DA534C1006A2A60 /* PeerInfoActionItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerInfoActionItem.swift; sourceTree = ""; }; D03ADB471D703268005A521C /* ChatInterfaceState.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatInterfaceState.swift; sourceTree = ""; }; D03ADB4A1D70443F005A521C /* ReplyAccessoryPanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ReplyAccessoryPanelNode.swift; sourceTree = ""; }; D03ADB4C1D7045C9005A521C /* ChatInterfaceStateAccessoryPanels.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatInterfaceStateAccessoryPanels.swift; sourceTree = ""; }; D03ADB4E1D70546B005A521C /* AccessoryPanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AccessoryPanelNode.swift; sourceTree = ""; }; D07A7DA21D957671005BCD27 /* ListMessageSnippetItemNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListMessageSnippetItemNode.swift; sourceTree = ""; }; D07A7DA41D95783C005BCD27 /* ListMessageNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListMessageNode.swift; sourceTree = ""; }; D08D45291D5E340300A7428A /* AsyncDisplayKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AsyncDisplayKit.framework; path = "../../../../Library/Developer/Xcode/DerivedData/Telegram-iOS-diblohvjozhgaifjcniwdlixlilx/Build/Products/Debug-iphonesimulator/AsyncDisplayKit.framework"; sourceTree = ""; }; D08D452A1D5E340300A7428A /* Display.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Display.framework; path = "../../../../Library/Developer/Xcode/DerivedData/Telegram-iOS-diblohvjozhgaifjcniwdlixlilx/Build/Products/Debug-iphonesimulator/Display.framework"; sourceTree = ""; }; D08D452B1D5E340300A7428A /* Postbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Postbox.framework; path = "../../../../Library/Developer/Xcode/DerivedData/Telegram-iOS-diblohvjozhgaifjcniwdlixlilx/Build/Products/Debug-iphonesimulator/Postbox.framework"; sourceTree = ""; }; D08D452C1D5E340300A7428A /* SwiftSignalKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SwiftSignalKit.framework; path = "../../../../Library/Developer/Xcode/DerivedData/Telegram-iOS-diblohvjozhgaifjcniwdlixlilx/Build/Products/Debug-iphonesimulator/SwiftSignalKit.framework"; sourceTree = ""; }; D08D452D1D5E340300A7428A /* TelegramCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = TelegramCore.framework; path = "../../../../Library/Developer/Xcode/DerivedData/Telegram-iOS-diblohvjozhgaifjcniwdlixlilx/Build/Products/Debug-iphonesimulator/TelegramCore.framework"; sourceTree = ""; }; D0AB0BB01D6718DA002C78E7 /* libiconv.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libiconv.tbd; path = usr/lib/libiconv.tbd; sourceTree = SDKROOT; }; D0AB0BB21D6718EB002C78E7 /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; D0AB0BB41D6718F1002C78E7 /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = System/Library/Frameworks/CoreMedia.framework; sourceTree = SDKROOT; }; D0AB0BB61D67191C002C78E7 /* MtProtoKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MtProtoKit.framework; path = "../../../../Library/Developer/Xcode/DerivedData/Telegram-iOS-diblohvjozhgaifjcniwdlixlilx/Build/Products/Debug-iphoneos/MtProtoKit.framework"; sourceTree = ""; }; D0AB0BB71D67191C002C78E7 /* SSignalKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SSignalKit.framework; path = "../../../../Library/Developer/Xcode/DerivedData/Telegram-iOS-diblohvjozhgaifjcniwdlixlilx/Build/Products/Debug-iphoneos/SSignalKit.framework"; sourceTree = ""; }; D0AB0BBA1D6719B5002C78E7 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; D0B417C21D7DE54E004562A4 /* ChatPresentationInterfaceState.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatPresentationInterfaceState.swift; sourceTree = ""; }; D0B7F8E11D8A18070045D939 /* PeerMediaCollectionController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerMediaCollectionController.swift; sourceTree = ""; }; D0B7F8E71D8A1F5F0045D939 /* PeerMediaCollectionControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerMediaCollectionControllerNode.swift; sourceTree = ""; }; D0B843911DA7F13E005F29E1 /* PeerInfoDisclosureItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerInfoDisclosureItem.swift; sourceTree = ""; }; D0B843CC1DA903BB005F29E1 /* PeerInfoController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerInfoController.swift; sourceTree = ""; }; D0B843CE1DA922AD005F29E1 /* PeerInfoEntries.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerInfoEntries.swift; sourceTree = ""; }; D0B843D01DA922D7005F29E1 /* UserInfoEntries.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UserInfoEntries.swift; sourceTree = ""; }; D0B843D21DA922E3005F29E1 /* ChannelInfoEntries.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChannelInfoEntries.swift; sourceTree = ""; }; D0B843D41DA95427005F29E1 /* GroupInfoEntries.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GroupInfoEntries.swift; sourceTree = ""; }; D0B843D81DAAAA0C005F29E1 /* PeerInfoPeerItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerInfoPeerItem.swift; sourceTree = ""; }; D0B843DA1DAAB138005F29E1 /* PeerInfoPeerActionItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerInfoPeerActionItem.swift; sourceTree = ""; }; D0B844551DAC3AEE005F29E1 /* PresenceStrings.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PresenceStrings.swift; sourceTree = ""; }; D0B844571DAC44E8005F29E1 /* PeerPresenceStatusManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerPresenceStatusManager.swift; sourceTree = ""; }; D0BA6F821D784C520034826E /* ChatInputPanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatInputPanelNode.swift; sourceTree = ""; }; D0BA6F841D784ECD0034826E /* ChatInterfaceStateInputPanels.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatInterfaceStateInputPanels.swift; sourceTree = ""; }; D0BA6F871D784F880034826E /* ChatMessageSelectionInputPanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageSelectionInputPanelNode.swift; sourceTree = ""; }; D0D268661D78793B00C422DA /* ChatInterfaceStateNavigationButtons.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatInterfaceStateNavigationButtons.swift; sourceTree = ""; }; D0D268681D78865300C422DA /* ChatAvatarNavigationNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatAvatarNavigationNode.swift; sourceTree = ""; }; D0D2686B1D788F8200C422DA /* NavigationAccessoryPanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NavigationAccessoryPanelNode.swift; sourceTree = ""; }; D0D2686D1D7898A900C422DA /* ChatMessageSelectionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageSelectionNode.swift; sourceTree = ""; }; D0D268991D79CF9F00C422DA /* ChatPanelInterfaceInteraction.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatPanelInterfaceInteraction.swift; sourceTree = ""; }; D0D2689C1D79D33E00C422DA /* ShareRecipientsActionSheetController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ShareRecipientsActionSheetController.swift; sourceTree = ""; }; D0DE76F61D91BA3D002B8809 /* GridHoleItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GridHoleItem.swift; sourceTree = ""; }; D0DE76FD1D92EFF2002B8809 /* PeerMediaCollectionTitleView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerMediaCollectionTitleView.swift; sourceTree = ""; }; D0DE76FF1D92F1EB002B8809 /* ChatTitleView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatTitleView.swift; sourceTree = ""; }; D0DE77221D932043002B8809 /* PeerMediaCollectionInterfaceState.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerMediaCollectionInterfaceState.swift; sourceTree = ""; }; D0DE77241D93225E002B8809 /* PeerMediaCollectionInterfaceStateButtons.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerMediaCollectionInterfaceStateButtons.swift; sourceTree = ""; }; D0DE77261D932627002B8809 /* ChatHistoryNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatHistoryNode.swift; sourceTree = ""; }; D0DE77281D932923002B8809 /* GridMessageSelectionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GridMessageSelectionNode.swift; sourceTree = ""; }; D0DE772A1D932E16002B8809 /* PeerMediaCollectionModeSelectionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerMediaCollectionModeSelectionNode.swift; sourceTree = ""; }; D0DE772F1D934DEF002B8809 /* ListMessageItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListMessageItem.swift; sourceTree = ""; }; D0DE77311D940295002B8809 /* ListMessageFileItemNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListMessageFileItemNode.swift; sourceTree = ""; }; D0DF0C941D81B063008AEB01 /* ChatInterfaceStateContextMenus.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatInterfaceStateContextMenus.swift; sourceTree = ""; }; D0DF0C971D81FF28008AEB01 /* HashtagChatInputContextPanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HashtagChatInputContextPanelNode.swift; sourceTree = ""; }; D0DF0C991D81FF3F008AEB01 /* ChatInputContextPanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatInputContextPanelNode.swift; sourceTree = ""; }; D0DF0C9B1D81FFB2008AEB01 /* ChatInterfaceInputContextPanels.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatInterfaceInputContextPanels.swift; sourceTree = ""; }; D0DF0C9D1D82141F008AEB01 /* ChatInterfaceInputContexts.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatInterfaceInputContexts.swift; sourceTree = ""; }; D0DF0CA01D821B28008AEB01 /* HashtagsTableCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HashtagsTableCell.swift; sourceTree = ""; }; D0DF0CA31D82BCD0008AEB01 /* MentionChatInputContextPanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MentionChatInputContextPanelNode.swift; sourceTree = ""; }; D0DF0CA51D82BCE0008AEB01 /* MentionsTableCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MentionsTableCell.swift; sourceTree = ""; }; D0E7A1BC1D8C246D00C37A6F /* ChatHistoryListNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatHistoryListNode.swift; sourceTree = ""; }; D0E7A1BE1D8C24B900C37A6F /* ChatHistoryViewForLocation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatHistoryViewForLocation.swift; sourceTree = ""; }; D0E7A1C01D8C258D00C37A6F /* ChatHistoryEntriesForView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatHistoryEntriesForView.swift; sourceTree = ""; }; D0E7A1C21D8C25D600C37A6F /* PreparedChatHistoryViewTransition.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PreparedChatHistoryViewTransition.swift; sourceTree = ""; }; D0EE97191D88BCA0006C18E1 /* ChatInfo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatInfo.swift; sourceTree = ""; }; D0F69CD31D6B87D30046BCD6 /* FFMpegMediaFrameSourceContext.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FFMpegMediaFrameSourceContext.swift; sourceTree = ""; }; D0F69CD41D6B87D30046BCD6 /* MediaPlayerAudioRenderer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaPlayerAudioRenderer.swift; sourceTree = ""; }; D0F69CD61D6B87D30046BCD6 /* MediaManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaManager.swift; sourceTree = ""; }; D0F69CD71D6B87D30046BCD6 /* FFMpegAudioFrameDecoder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FFMpegAudioFrameDecoder.swift; sourceTree = ""; }; D0F69CDC1D6B87D30046BCD6 /* MediaPlayerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaPlayerNode.swift; sourceTree = ""; }; D0F69CDE1D6B87D30046BCD6 /* PeerAvatar.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerAvatar.swift; sourceTree = ""; }; D0F69CE11D6B87D30046BCD6 /* FFMpegMediaFrameSource.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FFMpegMediaFrameSource.swift; sourceTree = ""; }; D0F69CE51D6B87D30046BCD6 /* MediaFrameSource.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaFrameSource.swift; sourceTree = ""; }; D0F69CFB1D6B87D30046BCD6 /* TouchDownGestureRecognizer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TouchDownGestureRecognizer.swift; sourceTree = ""; }; D0F69D021D6B87D30046BCD6 /* MediaPlayer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaPlayer.swift; sourceTree = ""; }; D0F69D161D6B87D30046BCD6 /* FFMpegMediaFrameSourceContextHelpers.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FFMpegMediaFrameSourceContextHelpers.swift; sourceTree = ""; }; D0F69D171D6B87D30046BCD6 /* FFMpegPacket.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FFMpegPacket.swift; sourceTree = ""; }; D0F69D1D1D6B87D30046BCD6 /* MediaTrackDecodableFrame.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaTrackDecodableFrame.swift; sourceTree = ""; }; D0F69D6F1D6B87DE0046BCD6 /* FFMpegMediaPassthroughVideoFrameDecoder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FFMpegMediaPassthroughVideoFrameDecoder.swift; sourceTree = ""; }; D0F69D701D6B87DE0046BCD6 /* MediaTrackFrameBuffer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaTrackFrameBuffer.swift; sourceTree = ""; }; D0F69D711D6B87DE0046BCD6 /* MediaTrackFrame.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaTrackFrame.swift; sourceTree = ""; }; D0F69D7F1D6B87EC0046BCD6 /* MediaPlaybackData.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaPlaybackData.swift; sourceTree = ""; }; D0F69D871D6B87EC0046BCD6 /* FFMpegMediaVideoFrameDecoder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FFMpegMediaVideoFrameDecoder.swift; sourceTree = ""; }; D0F69D881D6B87EC0046BCD6 /* MediaTrackFrameDecoder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaTrackFrameDecoder.swift; sourceTree = ""; }; D0F69D901D6B87EC0046BCD6 /* Cache.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Cache.swift; sourceTree = ""; }; D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = TelegramUI.xcconfig; path = TelegramUI/Config/TelegramUI.xcconfig; sourceTree = ""; }; D0F69DC01D6B89D30046BCD6 /* ListSectionHeaderNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListSectionHeaderNode.swift; sourceTree = ""; }; D0F69DC21D6B89DA0046BCD6 /* TextNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TextNode.swift; sourceTree = ""; }; D0F69DC41D6B89E10046BCD6 /* RadialProgressNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RadialProgressNode.swift; sourceTree = ""; }; D0F69DC61D6B89E70046BCD6 /* TransformImageNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransformImageNode.swift; sourceTree = ""; }; D0F69DC81D6B89EB0046BCD6 /* ImageNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageNode.swift; sourceTree = ""; }; D0F69DCB1D6B8A0D0046BCD6 /* SearchBarNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SearchBarNode.swift; sourceTree = ""; }; D0F69DCC1D6B8A0D0046BCD6 /* SearchBarPlaceholderNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SearchBarPlaceholderNode.swift; sourceTree = ""; }; D0F69DCD1D6B8A0D0046BCD6 /* SearchDisplayController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SearchDisplayController.swift; sourceTree = ""; }; D0F69DCE1D6B8A0D0046BCD6 /* SearchDisplayControllerContentNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SearchDisplayControllerContentNode.swift; sourceTree = ""; }; D0F69DD51D6B8A2D0046BCD6 /* AlertController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AlertController.swift; sourceTree = ""; }; D0F69DD81D6B8A420046BCD6 /* ListController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListController.swift; sourceTree = ""; }; D0F69DD91D6B8A420046BCD6 /* ListControllerButtonItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListControllerButtonItem.swift; sourceTree = ""; }; D0F69DDA1D6B8A420046BCD6 /* ListControllerDisclosureActionItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListControllerDisclosureActionItem.swift; sourceTree = ""; }; D0F69DDB1D6B8A420046BCD6 /* ListControllerGroupableItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListControllerGroupableItem.swift; sourceTree = ""; }; D0F69DDC1D6B8A420046BCD6 /* ListControllerItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListControllerItem.swift; sourceTree = ""; }; D0F69DDD1D6B8A420046BCD6 /* ListControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListControllerNode.swift; sourceTree = ""; }; D0F69DDE1D6B8A420046BCD6 /* ListControllerSpacerItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListControllerSpacerItem.swift; sourceTree = ""; }; D0F69DE81D6B8A6C0046BCD6 /* AuthorizationCodeController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AuthorizationCodeController.swift; sourceTree = ""; }; D0F69DE91D6B8A6C0046BCD6 /* AuthorizationCodeControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AuthorizationCodeControllerNode.swift; sourceTree = ""; }; D0F69DEA1D6B8A6C0046BCD6 /* AuthorizationController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AuthorizationController.swift; sourceTree = ""; }; D0F69DEB1D6B8A6C0046BCD6 /* AuthorizationPasswordController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AuthorizationPasswordController.swift; sourceTree = ""; }; D0F69DEC1D6B8A6C0046BCD6 /* AuthorizationPasswordControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AuthorizationPasswordControllerNode.swift; sourceTree = ""; }; D0F69DED1D6B8A6C0046BCD6 /* AuthorizationPhoneController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AuthorizationPhoneController.swift; sourceTree = ""; }; D0F69DEE1D6B8A6C0046BCD6 /* AuthorizationPhoneControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AuthorizationPhoneControllerNode.swift; sourceTree = ""; }; D0F69DF71D6B8A880046BCD6 /* AvatarNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AvatarNode.swift; sourceTree = ""; }; D0F69DF81D6B8A880046BCD6 /* ChatListController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatListController.swift; sourceTree = ""; }; D0F69DF91D6B8A880046BCD6 /* ChatListControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatListControllerNode.swift; sourceTree = ""; }; D0F69DFA1D6B8A880046BCD6 /* ChatListEmptyItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatListEmptyItem.swift; sourceTree = ""; }; D0F69DFB1D6B8A880046BCD6 /* ChatListHoleItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatListHoleItem.swift; sourceTree = ""; }; D0F69DFC1D6B8A880046BCD6 /* ChatListItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatListItem.swift; sourceTree = ""; }; D0F69DFD1D6B8A880046BCD6 /* ChatListSearchItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatListSearchItem.swift; sourceTree = ""; }; D0F69E071D6B8A9C0046BCD6 /* ChatListSearchContainerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatListSearchContainerNode.swift; sourceTree = ""; }; D0F69E091D6B8AA60046BCD6 /* ChatListSearchRecentPeersNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatListSearchRecentPeersNode.swift; sourceTree = ""; }; D0F69E0B1D6B8AB10046BCD6 /* HorizontalPeerItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HorizontalPeerItem.swift; sourceTree = ""; }; D0F69E0E1D6B8ACF0046BCD6 /* ChatController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatController.swift; sourceTree = ""; }; D0F69E0F1D6B8ACF0046BCD6 /* ChatControllerInteraction.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatControllerInteraction.swift; sourceTree = ""; }; D0F69E101D6B8ACF0046BCD6 /* ChatControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatControllerNode.swift; sourceTree = ""; }; D0F69E111D6B8ACF0046BCD6 /* ChatHistoryEntry.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatHistoryEntry.swift; sourceTree = ""; }; D0F69E121D6B8ACF0046BCD6 /* ChatHistoryLocation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatHistoryLocation.swift; sourceTree = ""; }; D0F69E191D6B8AE60046BCD6 /* ChatHoleItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatHoleItem.swift; sourceTree = ""; }; D0F69E1B1D6B8B030046BCD6 /* ChatMessageActionItemNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageActionItemNode.swift; sourceTree = ""; }; D0F69E1C1D6B8B030046BCD6 /* ChatMessageAvatarAccessoryItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageAvatarAccessoryItem.swift; sourceTree = ""; }; D0F69E1D1D6B8B030046BCD6 /* ChatMessageBubbleContentCalclulateImageCorners.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageBubbleContentCalclulateImageCorners.swift; sourceTree = ""; }; D0F69E1E1D6B8B030046BCD6 /* ChatMessageBubbleContentNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageBubbleContentNode.swift; sourceTree = ""; }; D0F69E1F1D6B8B030046BCD6 /* ChatMessageBubbleItemNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageBubbleItemNode.swift; sourceTree = ""; }; D0F69E201D6B8B030046BCD6 /* ChatMessageDateAndStatusNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageDateAndStatusNode.swift; sourceTree = ""; }; D0F69E211D6B8B030046BCD6 /* ChatMessageFileBubbleContentNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageFileBubbleContentNode.swift; sourceTree = ""; }; D0F69E221D6B8B030046BCD6 /* ChatMessageForwardInfoNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageForwardInfoNode.swift; sourceTree = ""; }; D0F69E231D6B8B030046BCD6 /* ChatMessageInteractiveFileNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageInteractiveFileNode.swift; sourceTree = ""; }; D0F69E241D6B8B030046BCD6 /* ChatMessageInteractiveMediaNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageInteractiveMediaNode.swift; sourceTree = ""; }; D0F69E251D6B8B030046BCD6 /* ChatMessageItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageItem.swift; sourceTree = ""; }; D0F69E261D6B8B030046BCD6 /* ChatMessageItemView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageItemView.swift; sourceTree = ""; }; D0F69E271D6B8B030046BCD6 /* ChatMessageMediaBubbleContentNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageMediaBubbleContentNode.swift; sourceTree = ""; }; D0F69E281D6B8B030046BCD6 /* ChatMessageReplyInfoNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageReplyInfoNode.swift; sourceTree = ""; }; D0F69E291D6B8B030046BCD6 /* ChatMessageStickerItemNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageStickerItemNode.swift; sourceTree = ""; }; D0F69E2A1D6B8B030046BCD6 /* ChatMessageTextBubbleContentNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageTextBubbleContentNode.swift; sourceTree = ""; }; D0F69E2B1D6B8B030046BCD6 /* ChatMessageWebpageBubbleContentNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMessageWebpageBubbleContentNode.swift; sourceTree = ""; }; D0F69E2C1D6B8B030046BCD6 /* ChatUnreadItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatUnreadItem.swift; sourceTree = ""; }; D0F69E401D6B8B7E0046BCD6 /* ChatTextInputPanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatTextInputPanelNode.swift; sourceTree = ""; }; D0F69E411D6B8B7E0046BCD6 /* ResizeableTextInputView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ResizeableTextInputView.swift; sourceTree = ""; }; D0F69E451D6B8B950046BCD6 /* ChatHistoryNavigationButtonNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatHistoryNavigationButtonNode.swift; sourceTree = ""; }; D0F69E481D6B8BAC0046BCD6 /* ActionSheetRollImageItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ActionSheetRollImageItem.swift; sourceTree = ""; }; D0F69E4A1D6B8BB20046BCD6 /* ChatMediaActionSheetController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMediaActionSheetController.swift; sourceTree = ""; }; D0F69E4B1D6B8BB20046BCD6 /* ChatMediaActionSheetRollItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatMediaActionSheetRollItem.swift; sourceTree = ""; }; D0F69E501D6B8BDA0046BCD6 /* GalleryController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GalleryController.swift; sourceTree = ""; }; D0F69E511D6B8BDA0046BCD6 /* GalleryControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GalleryControllerNode.swift; sourceTree = ""; }; D0F69E521D6B8BDA0046BCD6 /* GalleryItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GalleryItem.swift; sourceTree = ""; }; D0F69E531D6B8BDA0046BCD6 /* GalleryItemNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GalleryItemNode.swift; sourceTree = ""; }; D0F69E541D6B8BDA0046BCD6 /* GalleryPagerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GalleryPagerNode.swift; sourceTree = ""; }; D0F69E5B1D6B8BF90046BCD6 /* ChatDocumentGalleryItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatDocumentGalleryItem.swift; sourceTree = ""; }; D0F69E5C1D6B8BF90046BCD6 /* ChatHoleGalleryItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatHoleGalleryItem.swift; sourceTree = ""; }; D0F69E5D1D6B8BF90046BCD6 /* ChatImageGalleryItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatImageGalleryItem.swift; sourceTree = ""; }; D0F69E5E1D6B8BF90046BCD6 /* ChatVideoGalleryItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatVideoGalleryItem.swift; sourceTree = ""; }; D0F69E5F1D6B8BF90046BCD6 /* ChatVideoGalleryItemScrubberView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatVideoGalleryItemScrubberView.swift; sourceTree = ""; }; D0F69E601D6B8BF90046BCD6 /* ZoomableContentGalleryItemNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ZoomableContentGalleryItemNode.swift; sourceTree = ""; }; D0F69E681D6B8C160046BCD6 /* MapInputController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MapInputController.swift; sourceTree = ""; }; D0F69E691D6B8C160046BCD6 /* MapInputControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MapInputControllerNode.swift; sourceTree = ""; }; D0F69E6D1D6B8C340046BCD6 /* ContactsController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContactsController.swift; sourceTree = ""; }; D0F69E6E1D6B8C340046BCD6 /* ContactsControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContactsControllerNode.swift; sourceTree = ""; }; D0F69E6F1D6B8C340046BCD6 /* ContactsPeerItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContactsPeerItem.swift; sourceTree = ""; }; D0F69E701D6B8C340046BCD6 /* ContactsSearchContainerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContactsSearchContainerNode.swift; sourceTree = ""; }; D0F69E711D6B8C340046BCD6 /* ContactsSectionHeaderAccessoryItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContactsSectionHeaderAccessoryItem.swift; sourceTree = ""; }; D0F69E721D6B8C340046BCD6 /* ContactsVCardItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContactsVCardItem.swift; sourceTree = ""; }; D0F69E7A1D6B8C470046BCD6 /* SettingsAccountInfoItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SettingsAccountInfoItem.swift; sourceTree = ""; }; D0F69E7B1D6B8C470046BCD6 /* SettingsController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SettingsController.swift; sourceTree = ""; }; D0F69E7F1D6B8C850046BCD6 /* FastBlur.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FastBlur.h; sourceTree = ""; }; D0F69E801D6B8C850046BCD6 /* FastBlur.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FastBlur.m; sourceTree = ""; }; D0F69E811D6B8C850046BCD6 /* FFMpegSwResample.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FFMpegSwResample.h; sourceTree = ""; }; D0F69E821D6B8C850046BCD6 /* FFMpegSwResample.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FFMpegSwResample.m; sourceTree = ""; }; D0F69E831D6B8C850046BCD6 /* FrameworkBundle.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FrameworkBundle.swift; sourceTree = ""; }; D0F69E841D6B8C850046BCD6 /* Localizable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Localizable.swift; sourceTree = ""; }; D0F69E851D6B8C850046BCD6 /* RingBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RingBuffer.h; sourceTree = ""; }; D0F69E861D6B8C850046BCD6 /* RingBuffer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RingBuffer.m; sourceTree = ""; }; D0F69E871D6B8C850046BCD6 /* RingByteBuffer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RingByteBuffer.swift; sourceTree = ""; }; D0F69E931D6B8C9B0046BCD6 /* ProgressiveImage.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ProgressiveImage.swift; sourceTree = ""; }; D0F69E941D6B8C9B0046BCD6 /* WebP.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebP.swift; sourceTree = ""; }; D0F69E981D6B8D200046BCD6 /* UIImage+WebP.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImage+WebP.h"; sourceTree = ""; }; D0F69E991D6B8D200046BCD6 /* UIImage+WebP.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImage+WebP.m"; sourceTree = ""; }; D0F69E9E1D6B8E380046BCD6 /* FileResources.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FileResources.swift; sourceTree = ""; }; D0F69E9F1D6B8E380046BCD6 /* PhotoResources.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PhotoResources.swift; sourceTree = ""; }; D0F69EA01D6B8E380046BCD6 /* StickerResources.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StickerResources.swift; sourceTree = ""; }; D0F69EA51D6B8F3E0046BCD6 /* TelegramUIIncludes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TelegramUIIncludes.h; sourceTree = ""; }; D0F69EA61D6B9BBC0046BCD6 /* libwebp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebp.a; path = "third-party/libwebp/lib/libwebp.a"; sourceTree = ""; }; D0F69EA81D6B9BCB0046BCD6 /* libavcodec.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libavcodec.a; path = "third-party/FFmpeg-iOS/lib/libavcodec.a"; sourceTree = ""; }; D0F69EA91D6B9BCB0046BCD6 /* libavformat.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libavformat.a; path = "third-party/FFmpeg-iOS/lib/libavformat.a"; sourceTree = ""; }; D0F69EAA1D6B9BCB0046BCD6 /* libavutil.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libavutil.a; path = "third-party/FFmpeg-iOS/lib/libavutil.a"; sourceTree = ""; }; D0F69EAB1D6B9BCB0046BCD6 /* libswresample.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libswresample.a; path = "third-party/FFmpeg-iOS/lib/libswresample.a"; sourceTree = ""; }; D0FC407F1D5B8E7400261D9D /* TelegramUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = TelegramUI.framework; sourceTree = BUILT_PRODUCTS_DIR; }; D0FC40821D5B8E7400261D9D /* TelegramUI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TelegramUI.h; sourceTree = ""; }; D0FC40831D5B8E7400261D9D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; D0FC40881D5B8E7500261D9D /* TelegramUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TelegramUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; D0FC408D1D5B8E7500261D9D /* TelegramUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TelegramUITests.swift; sourceTree = ""; }; D0FC408F1D5B8E7500261D9D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ D0FC407B1D5B8E7400261D9D /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( D0F69EAC1D6B9BCB0046BCD6 /* libavcodec.a in Frameworks */, D0F69EAD1D6B9BCB0046BCD6 /* libavformat.a in Frameworks */, D0F69EAE1D6B9BCB0046BCD6 /* libavutil.a in Frameworks */, D0F69EAF1D6B9BCB0046BCD6 /* libswresample.a in Frameworks */, D0F69EA71D6B9BBC0046BCD6 /* libwebp.a in Frameworks */, D0F69E9C1D6B8D520046BCD6 /* TelegramCore.framework in Frameworks */, D0AB0BB51D6718F1002C78E7 /* CoreMedia.framework in Frameworks */, D0AB0BB31D6718EB002C78E7 /* libz.tbd in Frameworks */, D0AB0BB11D6718DA002C78E7 /* libiconv.tbd in Frameworks */, D08D452E1D5E340300A7428A /* AsyncDisplayKit.framework in Frameworks */, D08D452F1D5E340300A7428A /* Display.framework in Frameworks */, D08D45301D5E340300A7428A /* Postbox.framework in Frameworks */, D08D45311D5E340300A7428A /* SwiftSignalKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; D0FC40851D5B8E7500261D9D /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( D0FC40891D5B8E7500261D9D /* TelegramUI.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ D003702C1DA43006004308D3 /* Components */ = { isa = PBXGroup; children = ( D003702F1DA43077004308D3 /* PeerInfoItem.swift */, D003702D1DA43052004308D3 /* PeerInfoAvatarAndNameItem.swift */, D00370311DA46C06004308D3 /* PeerInfoTextWithLabelItem.swift */, D03120F51DA534C1006A2A60 /* PeerInfoActionItem.swift */, D0B843911DA7F13E005F29E1 /* PeerInfoDisclosureItem.swift */, D0B843D81DAAAA0C005F29E1 /* PeerInfoPeerItem.swift */, D0B843DA1DAAB138005F29E1 /* PeerInfoPeerActionItem.swift */, ); name = Components; sourceTree = ""; }; D02BE0751D9190CD000889C2 /* Grid Items */ = { isa = PBXGroup; children = ( D02BE0761D9190EF000889C2 /* GridMessageItem.swift */, D0DE76F61D91BA3D002B8809 /* GridHoleItem.swift */, D0DE77281D932923002B8809 /* GridMessageSelectionNode.swift */, ); name = "Grid Items"; sourceTree = ""; }; D03ADB461D703250005A521C /* Interface State */ = { isa = PBXGroup; children = ( D03ADB471D703268005A521C /* ChatInterfaceState.swift */, D0B417C21D7DE54E004562A4 /* ChatPresentationInterfaceState.swift */, D0D268991D79CF9F00C422DA /* ChatPanelInterfaceInteraction.swift */, D03ADB4C1D7045C9005A521C /* ChatInterfaceStateAccessoryPanels.swift */, D0BA6F841D784ECD0034826E /* ChatInterfaceStateInputPanels.swift */, D0D268661D78793B00C422DA /* ChatInterfaceStateNavigationButtons.swift */, D0DF0C941D81B063008AEB01 /* ChatInterfaceStateContextMenus.swift */, D0DF0C9D1D82141F008AEB01 /* ChatInterfaceInputContexts.swift */, D0DF0C9B1D81FFB2008AEB01 /* ChatInterfaceInputContextPanels.swift */, ); name = "Interface State"; sourceTree = ""; }; D03ADB491D704427005A521C /* Accessory Panels */ = { isa = PBXGroup; children = ( D03ADB4E1D70546B005A521C /* AccessoryPanelNode.swift */, D03ADB4A1D70443F005A521C /* ReplyAccessoryPanelNode.swift */, ); name = "Accessory Panels"; sourceTree = ""; }; D08D45281D5E340200A7428A /* Frameworks */ = { isa = PBXGroup; children = ( D0F69EA81D6B9BCB0046BCD6 /* libavcodec.a */, D0F69EA91D6B9BCB0046BCD6 /* libavformat.a */, D0F69EAA1D6B9BCB0046BCD6 /* libavutil.a */, D0F69EAB1D6B9BCB0046BCD6 /* libswresample.a */, D0F69EA61D6B9BBC0046BCD6 /* libwebp.a */, D0AB0BB61D67191C002C78E7 /* MtProtoKit.framework */, D0AB0BB71D67191C002C78E7 /* SSignalKit.framework */, D0AB0BB41D6718F1002C78E7 /* CoreMedia.framework */, D0AB0BB21D6718EB002C78E7 /* libz.tbd */, D0AB0BB01D6718DA002C78E7 /* libiconv.tbd */, D08D45291D5E340300A7428A /* AsyncDisplayKit.framework */, D08D452A1D5E340300A7428A /* Display.framework */, D08D452B1D5E340300A7428A /* Postbox.framework */, D08D452C1D5E340300A7428A /* SwiftSignalKit.framework */, D08D452D1D5E340300A7428A /* TelegramCore.framework */, ); name = Frameworks; sourceTree = ""; }; D0B7F8DF1D8A17D20045D939 /* Collection */ = { isa = PBXGroup; children = ( D0B7F8E01D8A17EE0045D939 /* Peer Media Collection */, ); name = Collection; sourceTree = ""; }; D0B7F8E01D8A17EE0045D939 /* Peer Media Collection */ = { isa = PBXGroup; children = ( D0B7F8E11D8A18070045D939 /* PeerMediaCollectionController.swift */, D0B7F8E71D8A1F5F0045D939 /* PeerMediaCollectionControllerNode.swift */, D0DE76FD1D92EFF2002B8809 /* PeerMediaCollectionTitleView.swift */, D0DE77221D932043002B8809 /* PeerMediaCollectionInterfaceState.swift */, D0DE77241D93225E002B8809 /* PeerMediaCollectionInterfaceStateButtons.swift */, D0DE772A1D932E16002B8809 /* PeerMediaCollectionModeSelectionNode.swift */, ); name = "Peer Media Collection"; sourceTree = ""; }; D0B844541DAC3ADF005F29E1 /* Strings */ = { isa = PBXGroup; children = ( D0B844551DAC3AEE005F29E1 /* PresenceStrings.swift */, ); name = Strings; sourceTree = ""; }; D0BA6F811D784C3A0034826E /* Input Panels */ = { isa = PBXGroup; children = ( D0BA6F821D784C520034826E /* ChatInputPanelNode.swift */, D0F69E3F1D6B8B6B0046BCD6 /* Text Input */, D0BA6F871D784F880034826E /* ChatMessageSelectionInputPanelNode.swift */, D0105D591D80B957008755D8 /* ChatChannelSubscriberInputPanelNode.swift */, ); name = "Input Panels"; sourceTree = ""; }; D0D2686A1D788F6600C422DA /* Navigation Accessory Panels */ = { isa = PBXGroup; children = ( D0D2686B1D788F8200C422DA /* NavigationAccessoryPanelNode.swift */, ); name = "Navigation Accessory Panels"; sourceTree = ""; }; D0D2689B1D79D31500C422DA /* Share Recipients */ = { isa = PBXGroup; children = ( D0D2689C1D79D33E00C422DA /* ShareRecipientsActionSheetController.swift */, ); name = "Share Recipients"; sourceTree = ""; }; D0DE772C1D934DCB002B8809 /* List Items */ = { isa = PBXGroup; children = ( D0DE772D1D934DD6002B8809 /* Bubbles */, D0DE772E1D934DDB002B8809 /* List */, ); name = "List Items"; sourceTree = ""; }; D0DE772D1D934DD6002B8809 /* Bubbles */ = { isa = PBXGroup; children = ( ); name = Bubbles; sourceTree = ""; }; D0DE772E1D934DDB002B8809 /* List */ = { isa = PBXGroup; children = ( D0DE772F1D934DEF002B8809 /* ListMessageItem.swift */, D07A7DA41D95783C005BCD27 /* ListMessageNode.swift */, D0DE77311D940295002B8809 /* ListMessageFileItemNode.swift */, D07A7DA21D957671005BCD27 /* ListMessageSnippetItemNode.swift */, ); name = List; sourceTree = ""; }; D0DF0C961D81FD87008AEB01 /* Input Context Panels */ = { isa = PBXGroup; children = ( D0DF0C991D81FF3F008AEB01 /* ChatInputContextPanelNode.swift */, D0DF0C9F1D8219C7008AEB01 /* Hashtags */, D0DF0CA21D82BCBC008AEB01 /* Mentions */, ); name = "Input Context Panels"; sourceTree = ""; }; D0DF0C9F1D8219C7008AEB01 /* Hashtags */ = { isa = PBXGroup; children = ( D0DF0C971D81FF28008AEB01 /* HashtagChatInputContextPanelNode.swift */, D0DF0CA01D821B28008AEB01 /* HashtagsTableCell.swift */, ); name = Hashtags; sourceTree = ""; }; D0DF0CA21D82BCBC008AEB01 /* Mentions */ = { isa = PBXGroup; children = ( D0DF0CA31D82BCD0008AEB01 /* MentionChatInputContextPanelNode.swift */, D0DF0CA51D82BCE0008AEB01 /* MentionsTableCell.swift */, ); name = Mentions; sourceTree = ""; }; D0E7A1BB1D8C17EB00C37A6F /* Chat History Node */ = { isa = PBXGroup; children = ( D0E7A1BE1D8C24B900C37A6F /* ChatHistoryViewForLocation.swift */, D0E7A1C01D8C258D00C37A6F /* ChatHistoryEntriesForView.swift */, D0E7A1C21D8C25D600C37A6F /* PreparedChatHistoryViewTransition.swift */, D0DE77261D932627002B8809 /* ChatHistoryNode.swift */, D0E7A1BC1D8C246D00C37A6F /* ChatHistoryListNode.swift */, D02BE0701D91814C000889C2 /* ChatHistoryGridNode.swift */, D0DE772C1D934DCB002B8809 /* List Items */, D02BE0751D9190CD000889C2 /* Grid Items */, ); name = "Chat History Node"; sourceTree = ""; }; D0EE97131D88BB1A006C18E1 /* Peer Info */ = { isa = PBXGroup; children = ( D003702C1DA43006004308D3 /* Components */, D0EE97141D88BB39006C18E1 /* Controller */, ); name = "Peer Info"; sourceTree = ""; }; D0EE97141D88BB39006C18E1 /* Controller */ = { isa = PBXGroup; children = ( D0B843CE1DA922AD005F29E1 /* PeerInfoEntries.swift */, D0B843D01DA922D7005F29E1 /* UserInfoEntries.swift */, D0B843D41DA95427005F29E1 /* GroupInfoEntries.swift */, D0B843D21DA922E3005F29E1 /* ChannelInfoEntries.swift */, D0B843CC1DA903BB005F29E1 /* PeerInfoController.swift */, ); name = Controller; sourceTree = ""; }; D0F69CCE1D6B87950046BCD6 /* Files */ = { isa = PBXGroup; children = ( ); name = Files; sourceTree = ""; }; D0F69DBB1D6B88330046BCD6 /* Media */ = { isa = PBXGroup; children = ( D0F69CD61D6B87D30046BCD6 /* MediaManager.swift */, D0F69CDE1D6B87D30046BCD6 /* PeerAvatar.swift */, D0F69D901D6B87EC0046BCD6 /* Cache.swift */, D0F69DBC1D6B886C0046BCD6 /* Player */, D0F69E9D1D6B8E240046BCD6 /* Resources */, ); name = Media; sourceTree = ""; }; D0F69DBC1D6B886C0046BCD6 /* Player */ = { isa = PBXGroup; children = ( D0F69CE51D6B87D30046BCD6 /* MediaFrameSource.swift */, D0F69D7F1D6B87EC0046BCD6 /* MediaPlaybackData.swift */, D0F69D021D6B87D30046BCD6 /* MediaPlayer.swift */, D0F69CD41D6B87D30046BCD6 /* MediaPlayerAudioRenderer.swift */, D0F69CDC1D6B87D30046BCD6 /* MediaPlayerNode.swift */, D0F69D1D1D6B87D30046BCD6 /* MediaTrackDecodableFrame.swift */, D0F69D711D6B87DE0046BCD6 /* MediaTrackFrame.swift */, D0F69D701D6B87DE0046BCD6 /* MediaTrackFrameBuffer.swift */, D0F69D881D6B87EC0046BCD6 /* MediaTrackFrameDecoder.swift */, D0F69CD71D6B87D30046BCD6 /* FFMpegAudioFrameDecoder.swift */, D0F69CE11D6B87D30046BCD6 /* FFMpegMediaFrameSource.swift */, D0F69CD31D6B87D30046BCD6 /* FFMpegMediaFrameSourceContext.swift */, D0F69D161D6B87D30046BCD6 /* FFMpegMediaFrameSourceContextHelpers.swift */, D0F69D871D6B87EC0046BCD6 /* FFMpegMediaVideoFrameDecoder.swift */, D0F69D6F1D6B87DE0046BCD6 /* FFMpegMediaPassthroughVideoFrameDecoder.swift */, D0F69D171D6B87D30046BCD6 /* FFMpegPacket.swift */, ); name = Player; sourceTree = ""; }; D0F69DBD1D6B897A0046BCD6 /* Components */ = { isa = PBXGroup; children = ( D0F69DBE1D6B89880046BCD6 /* Gestures */, D0F69DBF1D6B89AE0046BCD6 /* Nodes */, D0F69DD31D6B8A160046BCD6 /* Controllers */, D0E7A1BB1D8C17EB00C37A6F /* Chat History Node */, ); name = Components; sourceTree = ""; }; D0F69DBE1D6B89880046BCD6 /* Gestures */ = { isa = PBXGroup; children = ( D0F69CFB1D6B87D30046BCD6 /* TouchDownGestureRecognizer.swift */, D02958011D6F0D5F00360E5E /* TapLongTapOrDoubleTapGestureRecognizer.swift */, ); name = Gestures; sourceTree = ""; }; D0F69DBF1D6B89AE0046BCD6 /* Nodes */ = { isa = PBXGroup; children = ( D0F69DC81D6B89EB0046BCD6 /* ImageNode.swift */, D0F69DC61D6B89E70046BCD6 /* TransformImageNode.swift */, D0F69DC41D6B89E10046BCD6 /* RadialProgressNode.swift */, D0F69DC21D6B89DA0046BCD6 /* TextNode.swift */, D0F69DC01D6B89D30046BCD6 /* ListSectionHeaderNode.swift */, D0F69DF71D6B8A880046BCD6 /* AvatarNode.swift */, D0F69DCA1D6B89F20046BCD6 /* Search */, ); name = Nodes; sourceTree = ""; }; D0F69DCA1D6B89F20046BCD6 /* Search */ = { isa = PBXGroup; children = ( D0F69DCB1D6B8A0D0046BCD6 /* SearchBarNode.swift */, D0F69DCC1D6B8A0D0046BCD6 /* SearchBarPlaceholderNode.swift */, D0F69DCD1D6B8A0D0046BCD6 /* SearchDisplayController.swift */, D0F69DCE1D6B8A0D0046BCD6 /* SearchDisplayControllerContentNode.swift */, ); name = Search; sourceTree = ""; }; D0F69DD31D6B8A160046BCD6 /* Controllers */ = { isa = PBXGroup; children = ( D0F69DD71D6B8A300046BCD6 /* List */, D0F69DD41D6B8A240046BCD6 /* Alert */, ); name = Controllers; sourceTree = ""; }; D0F69DD41D6B8A240046BCD6 /* Alert */ = { isa = PBXGroup; children = ( D0F69DD51D6B8A2D0046BCD6 /* AlertController.swift */, ); name = Alert; sourceTree = ""; }; D0F69DD71D6B8A300046BCD6 /* List */ = { isa = PBXGroup; children = ( D0F69DD81D6B8A420046BCD6 /* ListController.swift */, D0F69DD91D6B8A420046BCD6 /* ListControllerButtonItem.swift */, D0F69DDA1D6B8A420046BCD6 /* ListControllerDisclosureActionItem.swift */, D0F69DDB1D6B8A420046BCD6 /* ListControllerGroupableItem.swift */, D0F69DDC1D6B8A420046BCD6 /* ListControllerItem.swift */, D0F69DDD1D6B8A420046BCD6 /* ListControllerNode.swift */, D0F69DDE1D6B8A420046BCD6 /* ListControllerSpacerItem.swift */, ); name = List; sourceTree = ""; }; D0F69DE61D6B8A4E0046BCD6 /* Controllers */ = { isa = PBXGroup; children = ( D0F69DE71D6B8A590046BCD6 /* Authorization */, D0F69DF61D6B8A720046BCD6 /* Chat List */, D0F69E0D1D6B8AB90046BCD6 /* Chat */, D0F69E4E1D6B8BB90046BCD6 /* Media */, D0F69E6C1D6B8C220046BCD6 /* Contacts */, D0EE97131D88BB1A006C18E1 /* Peer Info */, D0D2689B1D79D31500C422DA /* Share Recipients */, D0F69E791D6B8C3B0046BCD6 /* Settings */, ); name = Controllers; sourceTree = ""; }; D0F69DE71D6B8A590046BCD6 /* Authorization */ = { isa = PBXGroup; children = ( D0F69DE81D6B8A6C0046BCD6 /* AuthorizationCodeController.swift */, D0F69DE91D6B8A6C0046BCD6 /* AuthorizationCodeControllerNode.swift */, D0F69DEA1D6B8A6C0046BCD6 /* AuthorizationController.swift */, D0F69DEB1D6B8A6C0046BCD6 /* AuthorizationPasswordController.swift */, D0F69DEC1D6B8A6C0046BCD6 /* AuthorizationPasswordControllerNode.swift */, D0F69DED1D6B8A6C0046BCD6 /* AuthorizationPhoneController.swift */, D0F69DEE1D6B8A6C0046BCD6 /* AuthorizationPhoneControllerNode.swift */, ); name = Authorization; sourceTree = ""; }; D0F69DF61D6B8A720046BCD6 /* Chat List */ = { isa = PBXGroup; children = ( D0F69DF81D6B8A880046BCD6 /* ChatListController.swift */, D0F69DF91D6B8A880046BCD6 /* ChatListControllerNode.swift */, D0F69DFA1D6B8A880046BCD6 /* ChatListEmptyItem.swift */, D0F69DFB1D6B8A880046BCD6 /* ChatListHoleItem.swift */, D0F69DFC1D6B8A880046BCD6 /* ChatListItem.swift */, D0F69DFD1D6B8A880046BCD6 /* ChatListSearchItem.swift */, D0F69E051D6B8A8B0046BCD6 /* Search */, ); name = "Chat List"; sourceTree = ""; }; D0F69E051D6B8A8B0046BCD6 /* Search */ = { isa = PBXGroup; children = ( D0F69E071D6B8A9C0046BCD6 /* ChatListSearchContainerNode.swift */, D0F69E061D6B8A930046BCD6 /* Recent Peers */, ); name = Search; sourceTree = ""; }; D0F69E061D6B8A930046BCD6 /* Recent Peers */ = { isa = PBXGroup; children = ( D0F69E0B1D6B8AB10046BCD6 /* HorizontalPeerItem.swift */, D0F69E091D6B8AA60046BCD6 /* ChatListSearchRecentPeersNode.swift */, ); name = "Recent Peers"; sourceTree = ""; }; D0F69E0D1D6B8AB90046BCD6 /* Chat */ = { isa = PBXGroup; children = ( D0F69E0E1D6B8ACF0046BCD6 /* ChatController.swift */, D0F69E0F1D6B8ACF0046BCD6 /* ChatControllerInteraction.swift */, D0F69E101D6B8ACF0046BCD6 /* ChatControllerNode.swift */, D0F69E111D6B8ACF0046BCD6 /* ChatHistoryEntry.swift */, D0F69E121D6B8ACF0046BCD6 /* ChatHistoryLocation.swift */, D0D268681D78865300C422DA /* ChatAvatarNavigationNode.swift */, D0DE76FF1D92F1EB002B8809 /* ChatTitleView.swift */, D0EE97191D88BCA0006C18E1 /* ChatInfo.swift */, D0F69E181D6B8AD10046BCD6 /* Items */, D03ADB461D703250005A521C /* Interface State */, D03ADB491D704427005A521C /* Accessory Panels */, D0DF0C961D81FD87008AEB01 /* Input Context Panels */, D0D2686A1D788F6600C422DA /* Navigation Accessory Panels */, D0BA6F811D784C3A0034826E /* Input Panels */, D0F69E441D6B8B850046BCD6 /* History Navigation */, D0F69E471D6B8B9A0046BCD6 /* Input Media Action Sheet */, ); name = Chat; sourceTree = ""; }; D0F69E181D6B8AD10046BCD6 /* Items */ = { isa = PBXGroup; children = ( D0F69E1B1D6B8B030046BCD6 /* ChatMessageActionItemNode.swift */, D0F69E1C1D6B8B030046BCD6 /* ChatMessageAvatarAccessoryItem.swift */, D0F69E1D1D6B8B030046BCD6 /* ChatMessageBubbleContentCalclulateImageCorners.swift */, D0F69E1E1D6B8B030046BCD6 /* ChatMessageBubbleContentNode.swift */, D0F69E1F1D6B8B030046BCD6 /* ChatMessageBubbleItemNode.swift */, D0F69E201D6B8B030046BCD6 /* ChatMessageDateAndStatusNode.swift */, D0F69E211D6B8B030046BCD6 /* ChatMessageFileBubbleContentNode.swift */, D0F69E221D6B8B030046BCD6 /* ChatMessageForwardInfoNode.swift */, D0F69E231D6B8B030046BCD6 /* ChatMessageInteractiveFileNode.swift */, D0F69E241D6B8B030046BCD6 /* ChatMessageInteractiveMediaNode.swift */, D0F69E251D6B8B030046BCD6 /* ChatMessageItem.swift */, D0F69E261D6B8B030046BCD6 /* ChatMessageItemView.swift */, D0F69E271D6B8B030046BCD6 /* ChatMessageMediaBubbleContentNode.swift */, D0F69E281D6B8B030046BCD6 /* ChatMessageReplyInfoNode.swift */, D0F69E291D6B8B030046BCD6 /* ChatMessageStickerItemNode.swift */, D0F69E2A1D6B8B030046BCD6 /* ChatMessageTextBubbleContentNode.swift */, D0F69E2B1D6B8B030046BCD6 /* ChatMessageWebpageBubbleContentNode.swift */, D0F69E2C1D6B8B030046BCD6 /* ChatUnreadItem.swift */, D0F69E191D6B8AE60046BCD6 /* ChatHoleItem.swift */, D0D2686D1D7898A900C422DA /* ChatMessageSelectionNode.swift */, ); name = Items; sourceTree = ""; }; D0F69E3F1D6B8B6B0046BCD6 /* Text Input */ = { isa = PBXGroup; children = ( D0F69E401D6B8B7E0046BCD6 /* ChatTextInputPanelNode.swift */, D0F69E411D6B8B7E0046BCD6 /* ResizeableTextInputView.swift */, ); name = "Text Input"; sourceTree = ""; }; D0F69E441D6B8B850046BCD6 /* History Navigation */ = { isa = PBXGroup; children = ( D0F69E451D6B8B950046BCD6 /* ChatHistoryNavigationButtonNode.swift */, ); name = "History Navigation"; sourceTree = ""; }; D0F69E471D6B8B9A0046BCD6 /* Input Media Action Sheet */ = { isa = PBXGroup; children = ( D0F69E4A1D6B8BB20046BCD6 /* ChatMediaActionSheetController.swift */, D0F69E4B1D6B8BB20046BCD6 /* ChatMediaActionSheetRollItem.swift */, D0F69E481D6B8BAC0046BCD6 /* ActionSheetRollImageItem.swift */, ); name = "Input Media Action Sheet"; sourceTree = ""; }; D0F69E4E1D6B8BB90046BCD6 /* Media */ = { isa = PBXGroup; children = ( D0B7F8DF1D8A17D20045D939 /* Collection */, D0F69E4F1D6B8BC40046BCD6 /* Gallery */, D0F69E671D6B8C030046BCD6 /* Map Input */, ); name = Media; sourceTree = ""; }; D0F69E4F1D6B8BC40046BCD6 /* Gallery */ = { isa = PBXGroup; children = ( D0F69E501D6B8BDA0046BCD6 /* GalleryController.swift */, D0F69E511D6B8BDA0046BCD6 /* GalleryControllerNode.swift */, D0F69E521D6B8BDA0046BCD6 /* GalleryItem.swift */, D0F69E531D6B8BDA0046BCD6 /* GalleryItemNode.swift */, D0F69E541D6B8BDA0046BCD6 /* GalleryPagerNode.swift */, D0F69E5A1D6B8BDD0046BCD6 /* Items */, ); name = Gallery; sourceTree = ""; }; D0F69E5A1D6B8BDD0046BCD6 /* Items */ = { isa = PBXGroup; children = ( D0F69E5B1D6B8BF90046BCD6 /* ChatDocumentGalleryItem.swift */, D0F69E5C1D6B8BF90046BCD6 /* ChatHoleGalleryItem.swift */, D0F69E5D1D6B8BF90046BCD6 /* ChatImageGalleryItem.swift */, D0F69E5E1D6B8BF90046BCD6 /* ChatVideoGalleryItem.swift */, D0F69E5F1D6B8BF90046BCD6 /* ChatVideoGalleryItemScrubberView.swift */, D0F69E601D6B8BF90046BCD6 /* ZoomableContentGalleryItemNode.swift */, ); name = Items; sourceTree = ""; }; D0F69E671D6B8C030046BCD6 /* Map Input */ = { isa = PBXGroup; children = ( D0F69E681D6B8C160046BCD6 /* MapInputController.swift */, D0F69E691D6B8C160046BCD6 /* MapInputControllerNode.swift */, ); name = "Map Input"; sourceTree = ""; }; D0F69E6C1D6B8C220046BCD6 /* Contacts */ = { isa = PBXGroup; children = ( D0F69E6D1D6B8C340046BCD6 /* ContactsController.swift */, D0F69E6E1D6B8C340046BCD6 /* ContactsControllerNode.swift */, D0F69E6F1D6B8C340046BCD6 /* ContactsPeerItem.swift */, D0F69E701D6B8C340046BCD6 /* ContactsSearchContainerNode.swift */, D0F69E711D6B8C340046BCD6 /* ContactsSectionHeaderAccessoryItem.swift */, D0F69E721D6B8C340046BCD6 /* ContactsVCardItem.swift */, ); name = Contacts; sourceTree = ""; }; D0F69E791D6B8C3B0046BCD6 /* Settings */ = { isa = PBXGroup; children = ( D0F69E7A1D6B8C470046BCD6 /* SettingsAccountInfoItem.swift */, D0F69E7B1D6B8C470046BCD6 /* SettingsController.swift */, ); name = Settings; sourceTree = ""; }; D0F69E7E1D6B8C500046BCD6 /* Supporting Files */ = { isa = PBXGroup; children = ( D0F69E981D6B8D200046BCD6 /* UIImage+WebP.h */, D0F69E991D6B8D200046BCD6 /* UIImage+WebP.m */, D0F69E7F1D6B8C850046BCD6 /* FastBlur.h */, D0F69E801D6B8C850046BCD6 /* FastBlur.m */, D0F69E811D6B8C850046BCD6 /* FFMpegSwResample.h */, D0F69E821D6B8C850046BCD6 /* FFMpegSwResample.m */, D0F69E831D6B8C850046BCD6 /* FrameworkBundle.swift */, D0F69E841D6B8C850046BCD6 /* Localizable.swift */, D0F69E851D6B8C850046BCD6 /* RingBuffer.h */, D0F69E861D6B8C850046BCD6 /* RingBuffer.m */, D0F69E871D6B8C850046BCD6 /* RingByteBuffer.swift */, D0F69EA51D6B8F3E0046BCD6 /* TelegramUIIncludes.h */, ); name = "Supporting Files"; sourceTree = ""; }; D0F69E911D6B8C8E0046BCD6 /* Utils */ = { isa = PBXGroup; children = ( D0B844541DAC3ADF005F29E1 /* Strings */, D0F69E931D6B8C9B0046BCD6 /* ProgressiveImage.swift */, D0F69E941D6B8C9B0046BCD6 /* WebP.swift */, D0B844571DAC44E8005F29E1 /* PeerPresenceStatusManager.swift */, ); name = Utils; sourceTree = ""; }; D0F69E9D1D6B8E240046BCD6 /* Resources */ = { isa = PBXGroup; children = ( D0F69E9E1D6B8E380046BCD6 /* FileResources.swift */, D0F69E9F1D6B8E380046BCD6 /* PhotoResources.swift */, D0F69EA01D6B8E380046BCD6 /* StickerResources.swift */, ); name = Resources; sourceTree = ""; }; D0FC40751D5B8E7400261D9D = { isa = PBXGroup; children = ( D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */, D0AB0BBA1D6719B5002C78E7 /* Images.xcassets */, D0FC40811D5B8E7400261D9D /* TelegramUI */, D0FC408C1D5B8E7500261D9D /* TelegramUITests */, D0FC40801D5B8E7400261D9D /* Products */, D08D45281D5E340200A7428A /* Frameworks */, ); sourceTree = ""; }; D0FC40801D5B8E7400261D9D /* Products */ = { isa = PBXGroup; children = ( D0FC407F1D5B8E7400261D9D /* TelegramUI.framework */, D0FC40881D5B8E7500261D9D /* TelegramUITests.xctest */, ); name = Products; sourceTree = ""; }; D0FC40811D5B8E7400261D9D /* TelegramUI */ = { isa = PBXGroup; children = ( D0F69E911D6B8C8E0046BCD6 /* Utils */, D0F69DBB1D6B88330046BCD6 /* Media */, D0F69DBD1D6B897A0046BCD6 /* Components */, D0F69DE61D6B8A4E0046BCD6 /* Controllers */, D0F69CCE1D6B87950046BCD6 /* Files */, D0F69E7E1D6B8C500046BCD6 /* Supporting Files */, D0FC40821D5B8E7400261D9D /* TelegramUI.h */, D0FC40831D5B8E7400261D9D /* Info.plist */, ); path = TelegramUI; sourceTree = ""; }; D0FC408C1D5B8E7500261D9D /* TelegramUITests */ = { isa = PBXGroup; children = ( D0FC408D1D5B8E7500261D9D /* TelegramUITests.swift */, D0FC408F1D5B8E7500261D9D /* Info.plist */, ); path = TelegramUITests; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ D0FC407C1D5B8E7400261D9D /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( D0F69E8E1D6B8C850046BCD6 /* RingBuffer.h in Headers */, D0FC40901D5B8E7500261D9D /* TelegramUI.h in Headers */, D0F69E9A1D6B8D200046BCD6 /* UIImage+WebP.h in Headers */, D0F69E8A1D6B8C850046BCD6 /* FFMpegSwResample.h in Headers */, D0F69E881D6B8C850046BCD6 /* FastBlur.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ D0FC407E1D5B8E7400261D9D /* TelegramUI */ = { isa = PBXNativeTarget; buildConfigurationList = D0FC40931D5B8E7500261D9D /* Build configuration list for PBXNativeTarget "TelegramUI" */; buildPhases = ( D0FC407A1D5B8E7400261D9D /* Sources */, D0FC407B1D5B8E7400261D9D /* Frameworks */, D0FC407C1D5B8E7400261D9D /* Headers */, D0FC407D1D5B8E7400261D9D /* Resources */, ); buildRules = ( ); dependencies = ( ); name = TelegramUI; productName = TelegramUI; productReference = D0FC407F1D5B8E7400261D9D /* TelegramUI.framework */; productType = "com.apple.product-type.framework"; }; D0FC40871D5B8E7500261D9D /* TelegramUITests */ = { isa = PBXNativeTarget; buildConfigurationList = D0FC40961D5B8E7500261D9D /* Build configuration list for PBXNativeTarget "TelegramUITests" */; buildPhases = ( D0FC40841D5B8E7500261D9D /* Sources */, D0FC40851D5B8E7500261D9D /* Frameworks */, D0FC40861D5B8E7500261D9D /* Resources */, ); buildRules = ( ); dependencies = ( D0FC408B1D5B8E7500261D9D /* PBXTargetDependency */, ); name = TelegramUITests; productName = TelegramUITests; productReference = D0FC40881D5B8E7500261D9D /* TelegramUITests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ D0FC40761D5B8E7400261D9D /* Project object */ = { isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0800; LastUpgradeCheck = 0800; ORGANIZATIONNAME = Telegram; TargetAttributes = { D0FC407E1D5B8E7400261D9D = { CreatedOnToolsVersion = 8.0; DevelopmentTeam = X834Q8SBVP; LastSwiftMigration = 0800; ProvisioningStyle = Manual; }; D0FC40871D5B8E7500261D9D = { CreatedOnToolsVersion = 8.0; DevelopmentTeam = X834Q8SBVP; ProvisioningStyle = Automatic; }; }; }; buildConfigurationList = D0FC40791D5B8E7400261D9D /* Build configuration list for PBXProject "TelegramUI" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( en, ); mainGroup = D0FC40751D5B8E7400261D9D; productRefGroup = D0FC40801D5B8E7400261D9D /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( D0FC407E1D5B8E7400261D9D /* TelegramUI */, D0FC40871D5B8E7500261D9D /* TelegramUITests */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ D0FC407D1D5B8E7400261D9D /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( D0AB0BBB1D6719B5002C78E7 /* Images.xcassets in Resources */, D0F69DBA1D6B88190046BCD6 /* TelegramUI.xcconfig in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; D0FC40861D5B8E7500261D9D /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ D0FC407A1D5B8E7400261D9D /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( D0B417C31D7DE54E004562A4 /* ChatPresentationInterfaceState.swift in Sources */, D0F69E3C1D6B8B030046BCD6 /* ChatMessageTextBubbleContentNode.swift in Sources */, D03ADB4D1D7045C9005A521C /* ChatInterfaceStateAccessoryPanels.swift in Sources */, D0DF0C9A1D81FF3F008AEB01 /* ChatInputContextPanelNode.swift in Sources */, D0D2689D1D79D33E00C422DA /* ShareRecipientsActionSheetController.swift in Sources */, D0F69E171D6B8ACF0046BCD6 /* ChatHistoryLocation.swift in Sources */, D0F69E741D6B8C340046BCD6 /* ContactsControllerNode.swift in Sources */, D0F69EA21D6B8E380046BCD6 /* PhotoResources.swift in Sources */, D0BA6F831D784C520034826E /* ChatInputPanelNode.swift in Sources */, D0F69DC71D6B89E70046BCD6 /* TransformImageNode.swift in Sources */, D0B844581DAC44E8005F29E1 /* PeerPresenceStatusManager.swift in Sources */, D0D2686C1D788F8200C422DA /* NavigationAccessoryPanelNode.swift in Sources */, D07A7DA51D95783C005BCD27 /* ListMessageNode.swift in Sources */, D0F69E341D6B8B030046BCD6 /* ChatMessageForwardInfoNode.swift in Sources */, D0F69E561D6B8BDA0046BCD6 /* GalleryControllerNode.swift in Sources */, D0F69E4D1D6B8BB20046BCD6 /* ChatMediaActionSheetRollItem.swift in Sources */, D0F69E661D6B8BF90046BCD6 /* ZoomableContentGalleryItemNode.swift in Sources */, D0DE77001D92F1EB002B8809 /* ChatTitleView.swift in Sources */, D0F69DF01D6B8A6C0046BCD6 /* AuthorizationCodeControllerNode.swift in Sources */, D0B843DB1DAAB138005F29E1 /* PeerInfoPeerActionItem.swift in Sources */, D0F69EA11D6B8E380046BCD6 /* FileResources.swift in Sources */, D0F69D271D6B87D30046BCD6 /* FFMpegAudioFrameDecoder.swift in Sources */, D0F69D521D6B87D30046BCD6 /* MediaPlayer.swift in Sources */, D0F69E031D6B8A880046BCD6 /* ChatListItem.swift in Sources */, D0F69E081D6B8A9C0046BCD6 /* ChatListSearchContainerNode.swift in Sources */, D0DE77291D932923002B8809 /* GridMessageSelectionNode.swift in Sources */, D0F69E4C1D6B8BB20046BCD6 /* ChatMediaActionSheetController.swift in Sources */, D02BE0771D9190EF000889C2 /* GridMessageItem.swift in Sources */, D0F69DA41D6B87EC0046BCD6 /* FFMpegMediaVideoFrameDecoder.swift in Sources */, D0F69E161D6B8ACF0046BCD6 /* ChatHistoryEntry.swift in Sources */, D0F69DE01D6B8A420046BCD6 /* ListControllerButtonItem.swift in Sources */, D0F69E0C1D6B8AB10046BCD6 /* HorizontalPeerItem.swift in Sources */, D0F69E551D6B8BDA0046BCD6 /* GalleryController.swift in Sources */, D0F69E571D6B8BDA0046BCD6 /* GalleryItem.swift in Sources */, D003702E1DA43052004308D3 /* PeerInfoAvatarAndNameItem.swift in Sources */, D0F69D231D6B87D30046BCD6 /* FFMpegMediaFrameSourceContext.swift in Sources */, D0F69E431D6B8B7E0046BCD6 /* ResizeableTextInputView.swift in Sources */, D0F69E8D1D6B8C850046BCD6 /* Localizable.swift in Sources */, D02958021D6F0D5F00360E5E /* TapLongTapOrDoubleTapGestureRecognizer.swift in Sources */, D0F69E651D6B8BF90046BCD6 /* ChatVideoGalleryItemScrubberView.swift in Sources */, D03ADB4F1D70546B005A521C /* AccessoryPanelNode.swift in Sources */, D0F69E421D6B8B7E0046BCD6 /* ChatTextInputPanelNode.swift in Sources */, D0F69E1A1D6B8AE60046BCD6 /* ChatHoleItem.swift in Sources */, D0F69D9C1D6B87EC0046BCD6 /* MediaPlaybackData.swift in Sources */, D0F69D241D6B87D30046BCD6 /* MediaPlayerAudioRenderer.swift in Sources */, D0DF0CA41D82BCD0008AEB01 /* MentionChatInputContextPanelNode.swift in Sources */, D0F69D4B1D6B87D30046BCD6 /* TouchDownGestureRecognizer.swift in Sources */, D0F69E3D1D6B8B030046BCD6 /* ChatMessageWebpageBubbleContentNode.swift in Sources */, D0DF0C9E1D82141F008AEB01 /* ChatInterfaceInputContexts.swift in Sources */, D0B843CD1DA903BB005F29E1 /* PeerInfoController.swift in Sources */, D0D2686E1D7898A900C422DA /* ChatMessageSelectionNode.swift in Sources */, D0F69E8B1D6B8C850046BCD6 /* FFMpegSwResample.m in Sources */, D0B843921DA7F13E005F29E1 /* PeerInfoDisclosureItem.swift in Sources */, D0B7F8E81D8A1F5F0045D939 /* PeerMediaCollectionControllerNode.swift in Sources */, D0F69DD21D6B8A0D0046BCD6 /* SearchDisplayControllerContentNode.swift in Sources */, D0105D5A1D80B957008755D8 /* ChatChannelSubscriberInputPanelNode.swift in Sources */, D0F69DC51D6B89E10046BCD6 /* RadialProgressNode.swift in Sources */, D0F69E491D6B8BAC0046BCD6 /* ActionSheetRollImageItem.swift in Sources */, D0F69E761D6B8C340046BCD6 /* ContactsSearchContainerNode.swift in Sources */, D0B843CF1DA922AD005F29E1 /* PeerInfoEntries.swift in Sources */, D0DF0CA61D82BCE0008AEB01 /* MentionsTableCell.swift in Sources */, D0B844561DAC3AEE005F29E1 /* PresenceStrings.swift in Sources */, D0F69E011D6B8A880046BCD6 /* ChatListEmptyItem.swift in Sources */, D0F69E591D6B8BDA0046BCD6 /* GalleryPagerNode.swift in Sources */, D0F69E391D6B8B030046BCD6 /* ChatMessageMediaBubbleContentNode.swift in Sources */, D0F69D351D6B87D30046BCD6 /* MediaFrameSource.swift in Sources */, D0E7A1BD1D8C246D00C37A6F /* ChatHistoryListNode.swift in Sources */, D0F69E371D6B8B030046BCD6 /* ChatMessageItem.swift in Sources */, D00370321DA46C06004308D3 /* PeerInfoTextWithLabelItem.swift in Sources */, D0DF0C9C1D81FFB2008AEB01 /* ChatInterfaceInputContextPanels.swift in Sources */, D0DE77301D934DEF002B8809 /* ListMessageItem.swift in Sources */, D0F69E641D6B8BF90046BCD6 /* ChatVideoGalleryItem.swift in Sources */, D0DF0CA11D821B28008AEB01 /* HashtagsTableCell.swift in Sources */, D0F69E351D6B8B030046BCD6 /* ChatMessageInteractiveFileNode.swift in Sources */, D0F69E151D6B8ACF0046BCD6 /* ChatControllerNode.swift in Sources */, D0F69E001D6B8A880046BCD6 /* ChatListControllerNode.swift in Sources */, D0F69EA31D6B8E380046BCD6 /* StickerResources.swift in Sources */, D0DE77321D940295002B8809 /* ListMessageFileItemNode.swift in Sources */, D0F69E961D6B8C9B0046BCD6 /* ProgressiveImage.swift in Sources */, D0F69E621D6B8BF90046BCD6 /* ChatHoleGalleryItem.swift in Sources */, D0F69E331D6B8B030046BCD6 /* ChatMessageFileBubbleContentNode.swift in Sources */, D0F69E461D6B8B950046BCD6 /* ChatHistoryNavigationButtonNode.swift in Sources */, D03ADB481D703268005A521C /* ChatInterfaceState.swift in Sources */, D0F69D671D6B87D30046BCD6 /* FFMpegPacket.swift in Sources */, D0F69E321D6B8B030046BCD6 /* ChatMessageDateAndStatusNode.swift in Sources */, D0F69E041D6B8A880046BCD6 /* ChatListSearchItem.swift in Sources */, D0F69E611D6B8BF90046BCD6 /* ChatDocumentGalleryItem.swift in Sources */, D0F69E0A1D6B8AA60046BCD6 /* ChatListSearchRecentPeersNode.swift in Sources */, D0F69E3E1D6B8B030046BCD6 /* ChatUnreadItem.swift in Sources */, D0B7F8E21D8A18070045D939 /* PeerMediaCollectionController.swift in Sources */, D0DE76FE1D92EFF2002B8809 /* PeerMediaCollectionTitleView.swift in Sources */, D0F69D771D6B87DF0046BCD6 /* FFMpegMediaPassthroughVideoFrameDecoder.swift in Sources */, D0F69DFE1D6B8A880046BCD6 /* AvatarNode.swift in Sources */, D0F69E9B1D6B8D200046BCD6 /* UIImage+WebP.m in Sources */, D0F69E581D6B8BDA0046BCD6 /* GalleryItemNode.swift in Sources */, D0F69DAD1D6B87EC0046BCD6 /* Cache.swift in Sources */, D0F69E971D6B8C9B0046BCD6 /* WebP.swift in Sources */, D0F69E2F1D6B8B030046BCD6 /* ChatMessageBubbleContentCalclulateImageCorners.swift in Sources */, D0F69E361D6B8B030046BCD6 /* ChatMessageInteractiveMediaNode.swift in Sources */, D0F69E381D6B8B030046BCD6 /* ChatMessageItemView.swift in Sources */, D0D268671D78793B00C422DA /* ChatInterfaceStateNavigationButtons.swift in Sources */, D0F69E901D6B8C850046BCD6 /* RingByteBuffer.swift in Sources */, D0DF0C981D81FF28008AEB01 /* HashtagChatInputContextPanelNode.swift in Sources */, D0F69E731D6B8C340046BCD6 /* ContactsController.swift in Sources */, D0F69D261D6B87D30046BCD6 /* MediaManager.swift in Sources */, D0F69D2C1D6B87D30046BCD6 /* MediaPlayerNode.swift in Sources */, D0DE76F71D91BA3D002B8809 /* GridHoleItem.swift in Sources */, D0F69E311D6B8B030046BCD6 /* ChatMessageBubbleItemNode.swift in Sources */, D0E7A1C31D8C25D600C37A6F /* PreparedChatHistoryViewTransition.swift in Sources */, D0F69E021D6B8A880046BCD6 /* ChatListHoleItem.swift in Sources */, D0F69DF51D6B8A6C0046BCD6 /* AuthorizationPhoneControllerNode.swift in Sources */, D0F69E751D6B8C340046BCD6 /* ContactsPeerItem.swift in Sources */, D0F69DD61D6B8A2D0046BCD6 /* AlertController.swift in Sources */, D00370301DA43077004308D3 /* PeerInfoItem.swift in Sources */, D0F69E7D1D6B8C470046BCD6 /* SettingsController.swift in Sources */, D0F69E8C1D6B8C850046BCD6 /* FrameworkBundle.swift in Sources */, D0F69D661D6B87D30046BCD6 /* FFMpegMediaFrameSourceContextHelpers.swift in Sources */, D0B843D91DAAAA0C005F29E1 /* PeerInfoPeerItem.swift in Sources */, D0F69DD11D6B8A0D0046BCD6 /* SearchDisplayController.swift in Sources */, D0DE77271D932627002B8809 /* ChatHistoryNode.swift in Sources */, D0DF0C951D81B063008AEB01 /* ChatInterfaceStateContextMenus.swift in Sources */, D0F69DF21D6B8A6C0046BCD6 /* AuthorizationPasswordController.swift in Sources */, D0DE772B1D932E16002B8809 /* PeerMediaCollectionModeSelectionNode.swift in Sources */, D0F69E8F1D6B8C850046BCD6 /* RingBuffer.m in Sources */, D0F69DF31D6B8A6C0046BCD6 /* AuthorizationPasswordControllerNode.swift in Sources */, D0F69E131D6B8ACF0046BCD6 /* ChatController.swift in Sources */, D0F69DFF1D6B8A880046BCD6 /* ChatListController.swift in Sources */, D0E7A1C11D8C258D00C37A6F /* ChatHistoryEntriesForView.swift in Sources */, D0F69DF11D6B8A6C0046BCD6 /* AuthorizationController.swift in Sources */, D0E7A1BF1D8C24B900C37A6F /* ChatHistoryViewForLocation.swift in Sources */, D0F69E891D6B8C850046BCD6 /* FastBlur.m in Sources */, D0F69E7C1D6B8C470046BCD6 /* SettingsAccountInfoItem.swift in Sources */, D0B843D31DA922E3005F29E1 /* ChannelInfoEntries.swift in Sources */, D0B843D11DA922D7005F29E1 /* UserInfoEntries.swift in Sources */, D0F69E6A1D6B8C160046BCD6 /* MapInputController.swift in Sources */, D0F69DE51D6B8A420046BCD6 /* ListControllerSpacerItem.swift in Sources */, D0B843D51DA95427005F29E1 /* GroupInfoEntries.swift in Sources */, D0BA6F851D784ECD0034826E /* ChatInterfaceStateInputPanels.swift in Sources */, D0F69DE11D6B8A420046BCD6 /* ListControllerDisclosureActionItem.swift in Sources */, D0F69E301D6B8B030046BCD6 /* ChatMessageBubbleContentNode.swift in Sources */, D0F69DC31D6B89DA0046BCD6 /* TextNode.swift in Sources */, D0F69DC11D6B89D30046BCD6 /* ListSectionHeaderNode.swift in Sources */, D0D2689A1D79CF9F00C422DA /* ChatPanelInterfaceInteraction.swift in Sources */, D0F69E771D6B8C340046BCD6 /* ContactsSectionHeaderAccessoryItem.swift in Sources */, D0F69E631D6B8BF90046BCD6 /* ChatImageGalleryItem.swift in Sources */, D0BA6F881D784F880034826E /* ChatMessageSelectionInputPanelNode.swift in Sources */, D0F69E3B1D6B8B030046BCD6 /* ChatMessageStickerItemNode.swift in Sources */, D0F69DEF1D6B8A6C0046BCD6 /* AuthorizationCodeController.swift in Sources */, D0F69DF41D6B8A6C0046BCD6 /* AuthorizationPhoneController.swift in Sources */, D0DE77231D932043002B8809 /* PeerMediaCollectionInterfaceState.swift in Sources */, D0F69D781D6B87DF0046BCD6 /* MediaTrackFrameBuffer.swift in Sources */, D0F69DD01D6B8A0D0046BCD6 /* SearchBarPlaceholderNode.swift in Sources */, D03120F61DA534C1006A2A60 /* PeerInfoActionItem.swift in Sources */, D0F69E781D6B8C340046BCD6 /* ContactsVCardItem.swift in Sources */, D0D268691D78865300C422DA /* ChatAvatarNavigationNode.swift in Sources */, D0F69DA51D6B87EC0046BCD6 /* MediaTrackFrameDecoder.swift in Sources */, D0F69E2D1D6B8B030046BCD6 /* ChatMessageActionItemNode.swift in Sources */, D0F69DE21D6B8A420046BCD6 /* ListControllerGroupableItem.swift in Sources */, D0F69D791D6B87DF0046BCD6 /* MediaTrackFrame.swift in Sources */, D0F69DC91D6B89EB0046BCD6 /* ImageNode.swift in Sources */, D0DE77251D93225E002B8809 /* PeerMediaCollectionInterfaceStateButtons.swift in Sources */, D03ADB4B1D70443F005A521C /* ReplyAccessoryPanelNode.swift in Sources */, D0F69D311D6B87D30046BCD6 /* FFMpegMediaFrameSource.swift in Sources */, D0F69DDF1D6B8A420046BCD6 /* ListController.swift in Sources */, D0F69E3A1D6B8B030046BCD6 /* ChatMessageReplyInfoNode.swift in Sources */, D0EE971A1D88BCA0006C18E1 /* ChatInfo.swift in Sources */, D0F69DE31D6B8A420046BCD6 /* ListControllerItem.swift in Sources */, D07A7DA31D957671005BCD27 /* ListMessageSnippetItemNode.swift in Sources */, D0F69E6B1D6B8C160046BCD6 /* MapInputControllerNode.swift in Sources */, D02BE0711D91814C000889C2 /* ChatHistoryGridNode.swift in Sources */, D0F69DCF1D6B8A0D0046BCD6 /* SearchBarNode.swift in Sources */, D0F69DE41D6B8A420046BCD6 /* ListControllerNode.swift in Sources */, D0F69E2E1D6B8B030046BCD6 /* ChatMessageAvatarAccessoryItem.swift in Sources */, D0F69D2E1D6B87D30046BCD6 /* PeerAvatar.swift in Sources */, D0F69E141D6B8ACF0046BCD6 /* ChatControllerInteraction.swift in Sources */, D0F69D6D1D6B87D30046BCD6 /* MediaTrackDecodableFrame.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; D0FC40841D5B8E7500261D9D /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( D0FC408E1D5B8E7500261D9D /* TelegramUITests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ D0FC408B1D5B8E7500261D9D /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = D0FC407E1D5B8E7400261D9D /* TelegramUI */; targetProxy = D0FC408A1D5B8E7500261D9D /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ D0400EDB1D5B900A007931CE /* Hockeyapp */ = { isa = XCBuildConfiguration; baseConfigurationReference = D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_SUSPICIOUS_MOVES = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 10.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Hockeyapp; }; D0400EDC1D5B900A007931CE /* Hockeyapp */ = { isa = XCBuildConfiguration; baseConfigurationReference = D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CLANG_MODULES_AUTOLINK = NO; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = X834Q8SBVP; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = TelegramUI/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/third-party/libwebp/lib", "$(PROJECT_DIR)/third-party/FFmpeg-iOS/lib", ); OTHER_LDFLAGS = "-ObjC"; PRODUCT_BUNDLE_IDENTIFIER = org.telegram.TelegramUI; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; SWIFT_VERSION = 3.0; }; name = Hockeyapp; }; D0400EDD1D5B900A007931CE /* Hockeyapp */ = { isa = XCBuildConfiguration; baseConfigurationReference = D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; DEVELOPMENT_TEAM = X834Q8SBVP; INFOPLIST_FILE = TelegramUITests/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = org.telegram.Telegram.TelegramUITests; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 3.0; }; name = Hockeyapp; }; D0FC40911D5B8E7500261D9D /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_SUSPICIOUS_MOVES = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", "$(inherited)", ); GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 10.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; D0FC40921D5B8E7500261D9D /* Release */ = { isa = XCBuildConfiguration; baseConfigurationReference = D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_SUSPICIOUS_MOVES = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 10.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; D0FC40941D5B8E7500261D9D /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CLANG_MODULES_AUTOLINK = NO; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = X834Q8SBVP; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = TelegramUI/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/third-party/libwebp/lib", "$(PROJECT_DIR)/third-party/FFmpeg-iOS/lib", ); OTHER_LDFLAGS = "-ObjC"; OTHER_SWIFT_FLAGS = "-DDEBUG"; PRODUCT_BUNDLE_IDENTIFIER = org.telegram.TelegramUI; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 3.0; }; name = Debug; }; D0FC40951D5B8E7500261D9D /* Release */ = { isa = XCBuildConfiguration; baseConfigurationReference = D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CLANG_MODULES_AUTOLINK = NO; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = X834Q8SBVP; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = TelegramUI/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/third-party/libwebp/lib", "$(PROJECT_DIR)/third-party/FFmpeg-iOS/lib", ); OTHER_LDFLAGS = "-ObjC"; PRODUCT_BUNDLE_IDENTIFIER = org.telegram.TelegramUI; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; SWIFT_VERSION = 3.0; }; name = Release; }; D0FC40971D5B8E7500261D9D /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; DEVELOPMENT_TEAM = X834Q8SBVP; INFOPLIST_FILE = TelegramUITests/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = org.telegram.Telegram.TelegramUITests; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 3.0; }; name = Debug; }; D0FC40981D5B8E7500261D9D /* Release */ = { isa = XCBuildConfiguration; baseConfigurationReference = D0F69DB91D6B88190046BCD6 /* TelegramUI.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; DEVELOPMENT_TEAM = X834Q8SBVP; INFOPLIST_FILE = TelegramUITests/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = org.telegram.Telegram.TelegramUITests; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 3.0; }; name = Release; }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ D0FC40791D5B8E7400261D9D /* Build configuration list for PBXProject "TelegramUI" */ = { isa = XCConfigurationList; buildConfigurations = ( D0FC40911D5B8E7500261D9D /* Debug */, D0FC40921D5B8E7500261D9D /* Release */, D0400EDB1D5B900A007931CE /* Hockeyapp */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; D0FC40931D5B8E7500261D9D /* Build configuration list for PBXNativeTarget "TelegramUI" */ = { isa = XCConfigurationList; buildConfigurations = ( D0FC40941D5B8E7500261D9D /* Debug */, D0FC40951D5B8E7500261D9D /* Release */, D0400EDC1D5B900A007931CE /* Hockeyapp */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; D0FC40961D5B8E7500261D9D /* Build configuration list for PBXNativeTarget "TelegramUITests" */ = { isa = XCConfigurationList; buildConfigurations = ( D0FC40971D5B8E7500261D9D /* Debug */, D0FC40981D5B8E7500261D9D /* Release */, D0400EDD1D5B900A007931CE /* Hockeyapp */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; rootObject = D0FC40761D5B8E7400261D9D /* Project object */; }