From 075949cdcbcd2c7e7d73be8432cd20a693ccbe01 Mon Sep 17 00:00:00 2001 From: Qiu Yuzhou Date: Tue, 10 Sep 2019 14:23:26 +0800 Subject: [PATCH] Upgrade pods: Alamofire GCDWebServer MASShortcut --- Podfile.lock | 27 +- Pods/Alamofire/README.md | 12 +- Pods/Alamofire/Source/Request.swift | 4 +- Pods/Alamofire/Source/ServerTrustPolicy.swift | 2 +- Pods/Alamofire/Source/SessionManager.swift | 10 +- Pods/Alamofire/Source/TaskDelegate.swift | 2 +- .../GCDWebServer/Core/GCDWebServer.h | 25 +- .../GCDWebServer/Core/GCDWebServer.m | 192 +- .../Core/GCDWebServerConnection.h | 4 +- .../Core/GCDWebServerConnection.m | 132 +- .../GCDWebServer/Core/GCDWebServerFunctions.h | 11 +- .../GCDWebServer/Core/GCDWebServerFunctions.m | 23 +- .../Core/GCDWebServerHTTPStatusCodes.h | 2 +- .../GCDWebServer/Core/GCDWebServerPrivate.h | 12 +- .../GCDWebServer/Core/GCDWebServerRequest.h | 8 +- .../GCDWebServer/Core/GCDWebServerRequest.m | 10 +- .../GCDWebServer/Core/GCDWebServerResponse.h | 4 +- .../GCDWebServer/Core/GCDWebServerResponse.m | 10 +- .../Requests/GCDWebServerDataRequest.h | 2 +- .../Requests/GCDWebServerDataRequest.m | 4 +- .../Requests/GCDWebServerFileRequest.h | 2 +- .../Requests/GCDWebServerFileRequest.m | 4 +- .../GCDWebServerMultiPartFormRequest.h | 6 +- .../GCDWebServerMultiPartFormRequest.m | 20 +- .../GCDWebServerURLEncodedFormRequest.h | 4 +- .../GCDWebServerURLEncodedFormRequest.m | 2 +- .../Responses/GCDWebServerDataResponse.h | 6 +- .../Responses/GCDWebServerDataResponse.m | 18 +- .../Responses/GCDWebServerErrorResponse.h | 2 +- .../Responses/GCDWebServerErrorResponse.m | 10 +- .../Responses/GCDWebServerFileResponse.h | 4 +- .../Responses/GCDWebServerFileResponse.m | 12 +- .../Responses/GCDWebServerStreamedResponse.h | 2 +- .../Responses/GCDWebServerStreamedResponse.m | 8 +- Pods/GCDWebServer/README.md | 35 +- .../Framework/MASShortcut.modulemap | 6 - .../Framework/{ => Model}/MASKeyCodes.h | 2 +- .../Framework/{ => Model}/MASKeyMasks.h | 0 .../Framework/{ => Model}/MASShortcut.h | 8 +- .../Framework/{ => Model}/MASShortcut.m | 63 +- .../{ => Model}/MASShortcutValidator.h | 0 .../{ => Model}/MASShortcutValidator.m | 8 +- .../Framework/{ => Monitoring}/MASHotKey.h | 0 .../Framework/{ => Monitoring}/MASHotKey.m | 0 .../{ => Monitoring}/MASShortcutMonitor.h | 0 .../{ => Monitoring}/MASShortcutMonitor.m | 0 .../Framework/{ => UI}/MASLocalization.h | 0 .../Framework/{ => UI}/MASLocalization.m | 0 .../{ => UI}/MASShortcutView+Bindings.h | 0 .../{ => UI}/MASShortcutView+Bindings.m | 0 .../Framework/{ => UI}/MASShortcutView.h | 4 +- .../Framework/{ => UI}/MASShortcutView.m | 59 +- .../MASDictionaryTransformer.h | 0 .../MASDictionaryTransformer.m | 0 .../MASShortcutBinder.h | 0 .../MASShortcutBinder.m | 0 Pods/MASShortcut/README.md | 2 +- .../cs.lproj/Localizable.strings | 0 .../de.lproj/Localizable.strings | 0 .../en.lproj/Localizable.strings | 0 .../es.lproj/Localizable.strings | 0 .../fr.lproj/Localizable.strings | 0 .../it.lproj/Localizable.strings | 0 .../ja.lproj/Localizable.strings | 0 .../ko.lproj/Localizable.strings | 0 .../nl.lproj/Localizable.strings | 0 .../pl.lproj/Localizable.strings | 0 .../Resources/pt.lproj/Localizable.strings | 47 + .../ru.lproj/Localizable.strings | 0 .../Resources/sv.lproj/Localizable.strings | 47 + .../zh-Hans.lproj/Localizable.strings | 0 .../zh-Hant.lproj/Localizable.strings | 0 Pods/Manifest.lock | 27 +- Pods/Pods.xcodeproj/project.pbxproj | 5079 +++++++++-------- .../Alamofire/Alamofire-Info.plist | 26 + .../Alamofire/Alamofire.xcconfig | 3 +- .../BRLOptionParser/BRLOptionParser.xcconfig | 2 +- .../GCDWebServer/GCDWebServer-Info.plist | 26 + .../GCDWebServer/GCDWebServer.xcconfig | 3 +- .../MASShortcut/MASShortcut-Info.plist | 26 + .../MASShortcut/MASShortcut-umbrella.h | 12 +- .../MASShortcut/MASShortcut.xcconfig | 3 +- ...eBundle-MASShortcut-MASShortcut-Info.plist | 24 + .../Pods-ShadowsocksX-NG-Info.plist | 26 + .../Pods-ShadowsocksX-NG-frameworks.sh | 43 +- .../Pods-ShadowsocksX-NG.debug.xcconfig | 7 +- .../Pods-ShadowsocksX-NG.release.xcconfig | 7 +- .../Pods-ShadowsocksX-NGTests-Info.plist | 26 + .../Pods-ShadowsocksX-NGTests.debug.xcconfig | 5 +- ...Pods-ShadowsocksX-NGTests.release.xcconfig | 5 +- .../Pods-proxy_conf_helper.debug.xcconfig | 1 - .../Pods-proxy_conf_helper.release.xcconfig | 1 - .../RxCocoa/RxCocoa-Info.plist | 26 + .../RxCocoa/RxCocoa.xcconfig | 3 +- .../RxSwift/RxSwift-Info.plist | 26 + .../RxSwift/RxSwift.xcconfig | 3 +- ShadowsocksX-NG.xcodeproj/project.pbxproj | 80 +- 97 files changed, 3392 insertions(+), 2975 deletions(-) delete mode 100644 Pods/MASShortcut/Framework/MASShortcut.modulemap rename Pods/MASShortcut/Framework/{ => Model}/MASKeyCodes.h (96%) rename Pods/MASShortcut/Framework/{ => Model}/MASKeyMasks.h (100%) rename Pods/MASShortcut/Framework/{ => Model}/MASShortcut.h (88%) rename Pods/MASShortcut/Framework/{ => Model}/MASShortcut.m (79%) rename Pods/MASShortcut/Framework/{ => Model}/MASShortcutValidator.h (100%) rename Pods/MASShortcut/Framework/{ => Model}/MASShortcutValidator.m (95%) rename Pods/MASShortcut/Framework/{ => Monitoring}/MASHotKey.h (100%) rename Pods/MASShortcut/Framework/{ => Monitoring}/MASHotKey.m (100%) rename Pods/MASShortcut/Framework/{ => Monitoring}/MASShortcutMonitor.h (100%) rename Pods/MASShortcut/Framework/{ => Monitoring}/MASShortcutMonitor.m (100%) rename Pods/MASShortcut/Framework/{ => UI}/MASLocalization.h (100%) rename Pods/MASShortcut/Framework/{ => UI}/MASLocalization.m (100%) rename Pods/MASShortcut/Framework/{ => UI}/MASShortcutView+Bindings.h (100%) rename Pods/MASShortcut/Framework/{ => UI}/MASShortcutView+Bindings.m (100%) rename Pods/MASShortcut/Framework/{ => UI}/MASShortcutView.h (93%) rename Pods/MASShortcut/Framework/{ => UI}/MASShortcutView.m (91%) rename Pods/MASShortcut/Framework/{ => User Defaults Storage}/MASDictionaryTransformer.h (100%) rename Pods/MASShortcut/Framework/{ => User Defaults Storage}/MASDictionaryTransformer.m (100%) rename Pods/MASShortcut/Framework/{ => User Defaults Storage}/MASShortcutBinder.h (100%) rename Pods/MASShortcut/Framework/{ => User Defaults Storage}/MASShortcutBinder.m (100%) rename Pods/MASShortcut/{ => Resources}/cs.lproj/Localizable.strings (100%) rename Pods/MASShortcut/{ => Resources}/de.lproj/Localizable.strings (100%) rename Pods/MASShortcut/{ => Resources}/en.lproj/Localizable.strings (100%) rename Pods/MASShortcut/{ => Resources}/es.lproj/Localizable.strings (100%) rename Pods/MASShortcut/{ => Resources}/fr.lproj/Localizable.strings (100%) rename Pods/MASShortcut/{ => Resources}/it.lproj/Localizable.strings (100%) rename Pods/MASShortcut/{ => Resources}/ja.lproj/Localizable.strings (100%) rename Pods/MASShortcut/{ => Resources}/ko.lproj/Localizable.strings (100%) rename Pods/MASShortcut/{ => Resources}/nl.lproj/Localizable.strings (100%) rename Pods/MASShortcut/{ => Resources}/pl.lproj/Localizable.strings (100%) create mode 100644 Pods/MASShortcut/Resources/pt.lproj/Localizable.strings rename Pods/MASShortcut/{ => Resources}/ru.lproj/Localizable.strings (100%) create mode 100644 Pods/MASShortcut/Resources/sv.lproj/Localizable.strings rename Pods/MASShortcut/{ => Resources}/zh-Hans.lproj/Localizable.strings (100%) rename Pods/MASShortcut/{ => Resources}/zh-Hant.lproj/Localizable.strings (100%) create mode 100644 Pods/Target Support Files/Alamofire/Alamofire-Info.plist create mode 100644 Pods/Target Support Files/GCDWebServer/GCDWebServer-Info.plist create mode 100644 Pods/Target Support Files/MASShortcut/MASShortcut-Info.plist create mode 100644 Pods/Target Support Files/MASShortcut/ResourceBundle-MASShortcut-MASShortcut-Info.plist create mode 100644 Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-Info.plist create mode 100644 Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests-Info.plist create mode 100644 Pods/Target Support Files/RxCocoa/RxCocoa-Info.plist create mode 100644 Pods/Target Support Files/RxSwift/RxSwift-Info.plist mode change 100755 => 100644 ShadowsocksX-NG.xcodeproj/project.pbxproj diff --git a/Podfile.lock b/Podfile.lock index d204695..44a76be 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -1,10 +1,10 @@ PODS: - - Alamofire (4.7.2) + - Alamofire (4.7.3) - BRLOptionParser (0.3.1) - - GCDWebServer (3.4.2): - - GCDWebServer/Core (= 3.4.2) - - GCDWebServer/Core (3.4.2) - - MASShortcut (2.3.6) + - GCDWebServer (3.5.3): + - GCDWebServer/Core (= 3.5.3) + - GCDWebServer/Core (3.5.3) + - MASShortcut (2.4.0) - RxCocoa (4.1.2): - RxSwift (~> 4.0) - RxSwift (4.1.2) @@ -17,14 +17,23 @@ DEPENDENCIES: - RxCocoa (~> 4.1.2) - RxSwift (~> 4.1.2) +SPEC REPOS: + https://github.com/cocoapods/specs.git: + - Alamofire + - BRLOptionParser + - GCDWebServer + - MASShortcut + - RxCocoa + - RxSwift + SPEC CHECKSUMS: - Alamofire: e4fa87002c137ba2d8d634d2c51fabcda0d5c223 + Alamofire: c7287b6e5d7da964a70935e5db17046b7fde6568 BRLOptionParser: a03256a8ff003ca1f5376c55f55f210e085a3958 - GCDWebServer: 8d67ee9f634b4bb91eb4b8aee440318a5fc6debd - MASShortcut: 9c215e8a8a78f3d01ce56da48e2730ab66b538fa + GCDWebServer: c0ab22c73e1b84f358d1e2f74bf6afd1c60829f2 + MASShortcut: d9e4909e878661cc42877cc9d6efbe638273ab57 RxCocoa: d88ba0f1f6abf040011a9eb4b539324fc426843a RxSwift: e49536837d9901277638493ea537394d4b55f570 PODFILE CHECKSUM: 00940d7054f9c0a5f67a7f3be8edb28676d11545 -COCOAPODS: 1.4.0 +COCOAPODS: 1.7.3 diff --git a/Pods/Alamofire/README.md b/Pods/Alamofire/README.md index f29cfce..0208252 100644 --- a/Pods/Alamofire/README.md +++ b/Pods/Alamofire/README.md @@ -4,7 +4,7 @@ [![CocoaPods Compatible](https://img.shields.io/cocoapods/v/Alamofire.svg)](https://img.shields.io/cocoapods/v/Alamofire.svg) [![Carthage Compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![Platform](https://img.shields.io/cocoapods/p/Alamofire.svg?style=flat)](https://alamofire.github.io/Alamofire) -[![Twitter](https://img.shields.io/badge/twitter-@AlamofireSF-blue.svg?style=flat)](http://twitter.com/AlamofireSF) +[![Twitter](https://img.shields.io/badge/twitter-@AlamofireSF-blue.svg?style=flat)](https://twitter.com/AlamofireSF) [![Gitter](https://badges.gitter.im/Alamofire/Alamofire.svg)](https://gitter.im/Alamofire/Alamofire?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) Alamofire is an HTTP networking library written in Swift. @@ -68,8 +68,8 @@ In order to keep Alamofire focused specifically on core networking implementatio ## Communication -- If you **need help**, use [Stack Overflow](http://stackoverflow.com/questions/tagged/alamofire). (Tag 'alamofire') -- If you'd like to **ask a general question**, use [Stack Overflow](http://stackoverflow.com/questions/tagged/alamofire). +- If you **need help**, use [Stack Overflow](https://stackoverflow.com/questions/tagged/alamofire). (Tag 'alamofire') +- If you'd like to **ask a general question**, use [Stack Overflow](https://stackoverflow.com/questions/tagged/alamofire). - If you **found a bug**, open an issue. - If you **have a feature request**, open an issue. - If you **want to contribute**, submit a pull request. @@ -78,7 +78,7 @@ In order to keep Alamofire focused specifically on core networking implementatio ### CocoaPods -[CocoaPods](http://cocoapods.org) is a dependency manager for Cocoa projects. You can install it with the following command: +[CocoaPods](https://cocoapods.org) is a dependency manager for Cocoa projects. You can install it with the following command: ```bash $ gem install cocoapods @@ -108,7 +108,7 @@ $ pod install [Carthage](https://github.com/Carthage/Carthage) is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks. -You can install Carthage with [Homebrew](http://brew.sh/) using the following command: +You can install Carthage with [Homebrew](https://brew.sh/) using the following command: ```bash $ brew update @@ -157,7 +157,7 @@ If you prefer not to use any of the aforementioned dependency managers, you can $ git init ``` -- Add Alamofire as a git [submodule](http://git-scm.com/docs/git-submodule) by running the following command: +- Add Alamofire as a git [submodule](https://git-scm.com/docs/git-submodule) by running the following command: ```bash $ git submodule add https://github.com/Alamofire/Alamofire.git diff --git a/Pods/Alamofire/Source/Request.swift b/Pods/Alamofire/Source/Request.swift index 94e7b6e..ea43411 100644 --- a/Pods/Alamofire/Source/Request.swift +++ b/Pods/Alamofire/Source/Request.swift @@ -102,7 +102,7 @@ open class Request { open var task: URLSessionTask? { return delegate.task } /// The session belonging to the underlying task. - open let session: URLSession + public let session: URLSession /// The request sent or to be sent to the server. open var request: URLRequest? { return task?.originalRequest } @@ -184,7 +184,7 @@ open class Request { /// - parameter password: The password. /// /// - returns: A tuple with Authorization header and credential value if encoding succeeds, `nil` otherwise. - open static func authorizationHeader(user: String, password: String) -> (key: String, value: String)? { + open class func authorizationHeader(user: String, password: String) -> (key: String, value: String)? { guard let data = "\(user):\(password)".data(using: .utf8) else { return nil } let credential = data.base64EncodedString(options: []) diff --git a/Pods/Alamofire/Source/ServerTrustPolicy.swift b/Pods/Alamofire/Source/ServerTrustPolicy.swift index a644ad8..7f44c8d 100644 --- a/Pods/Alamofire/Source/ServerTrustPolicy.swift +++ b/Pods/Alamofire/Source/ServerTrustPolicy.swift @@ -27,7 +27,7 @@ import Foundation /// Responsible for managing the mapping of `ServerTrustPolicy` objects to a given host. open class ServerTrustPolicyManager { /// The dictionary of policies mapped to a particular host. - open let policies: [String: ServerTrustPolicy] + public let policies: [String: ServerTrustPolicy] /// Initializes the `ServerTrustPolicyManager` instance with the given policies. /// diff --git a/Pods/Alamofire/Source/SessionManager.swift b/Pods/Alamofire/Source/SessionManager.swift index a9d0ae6..8779efd 100644 --- a/Pods/Alamofire/Source/SessionManager.swift +++ b/Pods/Alamofire/Source/SessionManager.swift @@ -45,7 +45,7 @@ open class SessionManager { /// A default instance of `SessionManager`, used by top-level Alamofire request methods, and suitable for use /// directly for any ad hoc requests. - open static let `default`: SessionManager = { + public static let `default`: SessionManager = { let configuration = URLSessionConfiguration.default configuration.httpAdditionalHeaders = SessionManager.defaultHTTPHeaders @@ -53,7 +53,7 @@ open class SessionManager { }() /// Creates default values for the "Accept-Encoding", "Accept-Language" and "User-Agent" headers. - open static let defaultHTTPHeaders: HTTPHeaders = { + public static let defaultHTTPHeaders: HTTPHeaders = { // Accept-Encoding HTTP Header; see https://tools.ietf.org/html/rfc7230#section-4.2.3 let acceptEncoding: String = "gzip;q=1.0, compress;q=0.5" @@ -118,13 +118,13 @@ open class SessionManager { }() /// Default memory threshold used when encoding `MultipartFormData` in bytes. - open static let multipartFormDataEncodingMemoryThreshold: UInt64 = 10_000_000 + public static let multipartFormDataEncodingMemoryThreshold: UInt64 = 10_000_000 /// The underlying session. - open let session: URLSession + public let session: URLSession /// The session delegate handling all the task and session delegate callbacks. - open let delegate: SessionDelegate + public let delegate: SessionDelegate /// Whether to start requests immediately after being constructed. `true` by default. open var startRequestsImmediately: Bool = true diff --git a/Pods/Alamofire/Source/TaskDelegate.swift b/Pods/Alamofire/Source/TaskDelegate.swift index 1d537ea..8e19888 100644 --- a/Pods/Alamofire/Source/TaskDelegate.swift +++ b/Pods/Alamofire/Source/TaskDelegate.swift @@ -31,7 +31,7 @@ open class TaskDelegate: NSObject { // MARK: Properties /// The serial operation queue used to execute all operations after the task completes. - open let queue: OperationQueue + public let queue: OperationQueue /// The data returned by the server. public var data: Data? { return nil } diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServer.h b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServer.h index 59572ba..70cb70c 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServer.h +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServer.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -42,7 +42,7 @@ NS_ASSUME_NONNULL_BEGIN * GCDWebServerRequest instance created with the same basic info. * Otherwise, it simply returns nil. */ -typedef GCDWebServerRequest* _Nullable (^GCDWebServerMatchBlock)(NSString* requestMethod, NSURL* requestURL, NSDictionary* requestHeaders, NSString* urlPath, NSDictionary* urlQuery); +typedef GCDWebServerRequest* _Nullable (^GCDWebServerMatchBlock)(NSString* requestMethod, NSURL* requestURL, NSDictionary* requestHeaders, NSString* urlPath, NSDictionary* urlQuery); /** * The GCDWebServerProcessBlock is called after the HTTP request has been fully @@ -69,6 +69,13 @@ typedef GCDWebServerResponse* _Nullable (^GCDWebServerProcessBlock)(__kindof GCD typedef void (^GCDWebServerCompletionBlock)(GCDWebServerResponse* _Nullable response); typedef void (^GCDWebServerAsyncProcessBlock)(__kindof GCDWebServerRequest* request, GCDWebServerCompletionBlock completionBlock); +/** + * The GCDWebServerBuiltInLoggerBlock is used to override the built-in logger at runtime. + * The block will be passed the log level and the log message, see setLogLevel for + * documentation of the log levels for the built-in logger. + */ +typedef void (^GCDWebServerBuiltInLoggerBlock)(int level, NSString* _Nonnull message); + /** * The port used by the GCDWebServer (NSNumber / NSUInteger). * @@ -365,7 +372,7 @@ extern NSString* const GCDWebServerAuthenticationMethod_DigestAccess; * * Returns NO if the server failed to start and sets "error" argument if not NULL. */ -- (BOOL)startWithOptions:(nullable NSDictionary*)options error:(NSError** _Nullable)error; +- (BOOL)startWithOptions:(nullable NSDictionary*)options error:(NSError** _Nullable)error; /** * Stops the server and prevents it to accepts new HTTP requests. @@ -444,7 +451,7 @@ extern NSString* const GCDWebServerAuthenticationMethod_DigestAccess; * * @warning This method must be used from the main thread only. */ -- (BOOL)runWithOptions:(nullable NSDictionary*)options error:(NSError** _Nullable)error; +- (BOOL)runWithOptions:(nullable NSDictionary*)options error:(NSError** _Nullable)error; #endif @@ -573,6 +580,14 @@ extern NSString* const GCDWebServerAuthenticationMethod_DigestAccess; */ + (void)setLogLevel:(int)level; +/** + * Set a logger to be used instead of the built-in logger which logs to stderr. + * + * IMPORTANT: In order for this override to work, you should not be specifying + * a custom logger at compile time with "__GCDWEBSERVER_LOGGING_HEADER__". + */ ++ (void)setBuiltInLogger:(GCDWebServerBuiltInLoggerBlock)block; + /** * Logs a message to the logging facility at the VERBOSE level. */ @@ -613,7 +628,7 @@ extern NSString* const GCDWebServerAuthenticationMethod_DigestAccess; * * Returns the number of failed tests or -1 if server failed to start. */ -- (NSInteger)runTestsWithOptions:(nullable NSDictionary*)options inDirectory:(NSString*)path; +- (NSInteger)runTestsWithOptions:(nullable NSDictionary*)options inDirectory:(NSString*)path; @end diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServer.m b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServer.m index e52ccd4..cb1b295 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServer.m +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServer.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -85,18 +85,24 @@ static BOOL _run; #ifdef __GCDWEBSERVER_LOGGING_FACILITY_BUILTIN__ +static GCDWebServerBuiltInLoggerBlock _builtInLoggerBlock; + void GCDWebServerLogMessage(GCDWebServerLoggingLevel level, NSString* format, ...) { static const char* levelNames[] = {"DEBUG", "VERBOSE", "INFO", "WARNING", "ERROR"}; static int enableLogging = -1; if (enableLogging < 0) { enableLogging = (isatty(STDERR_FILENO) ? 1 : 0); } - if (enableLogging) { + if (_builtInLoggerBlock || enableLogging) { va_list arguments; va_start(arguments, format); NSString* message = [[NSString alloc] initWithFormat:format arguments:arguments]; va_end(arguments); - fprintf(stderr, "[%s] %s\n", levelNames[level], [message UTF8String]); + if (_builtInLoggerBlock) { + _builtInLoggerBlock(level, message); + } else { + fprintf(stderr, "[%s] %s\n", levelNames[level], [message UTF8String]); + } } } @@ -141,14 +147,14 @@ static void _ExecuteMainThreadRunLoopSources() { @implementation GCDWebServer { dispatch_queue_t _syncQueue; dispatch_group_t _sourceGroup; - NSMutableArray* _handlers; + NSMutableArray* _handlers; NSInteger _activeConnections; // Accessed through _syncQueue only BOOL _connected; // Accessed on main thread only CFRunLoopTimerRef _disconnectTimer; // Accessed on main thread only - NSDictionary* _options; - NSMutableDictionary* _authenticationBasicAccounts; - NSMutableDictionary* _authenticationDigestAccounts; + NSDictionary* _options; + NSMutableDictionary* _authenticationBasicAccounts; + NSMutableDictionary* _authenticationDigestAccounts; Class _connectionClass; CFTimeInterval _disconnectDelay; dispatch_source_t _source4; @@ -206,10 +212,8 @@ static void _ExecuteMainThreadRunLoopSources() { if (_backgroundTask == UIBackgroundTaskInvalid) { GWS_LOG_DEBUG(@"Did start background task"); _backgroundTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{ - GWS_LOG_WARNING(@"Application is being suspended while %@ is still connected", [self class]); [self _endBackgroundTask]; - }]; } else { GWS_DNOT_REACHED(); @@ -238,22 +242,20 @@ static void _ExecuteMainThreadRunLoopSources() { - (void)willStartConnection:(GCDWebServerConnection*)connection { dispatch_sync(_syncQueue, ^{ - - GWS_DCHECK(_activeConnections >= 0); - if (_activeConnections == 0) { + GWS_DCHECK(self->_activeConnections >= 0); + if (self->_activeConnections == 0) { dispatch_async(dispatch_get_main_queue(), ^{ - if (_disconnectTimer) { - CFRunLoopTimerInvalidate(_disconnectTimer); - CFRelease(_disconnectTimer); - _disconnectTimer = NULL; + if (self->_disconnectTimer) { + CFRunLoopTimerInvalidate(self->_disconnectTimer); + CFRelease(self->_disconnectTimer); + self->_disconnectTimer = NULL; } - if (_connected == NO) { + if (self->_connected == NO) { [self _didConnect]; } }); } - _activeConnections += 1; - + self->_activeConnections += 1; }); } @@ -292,22 +294,22 @@ static void _ExecuteMainThreadRunLoopSources() { - (void)didEndConnection:(GCDWebServerConnection*)connection { dispatch_sync(_syncQueue, ^{ - GWS_DCHECK(_activeConnections > 0); - _activeConnections -= 1; - if (_activeConnections == 0) { + GWS_DCHECK(self->_activeConnections > 0); + self->_activeConnections -= 1; + if (self->_activeConnections == 0) { dispatch_async(dispatch_get_main_queue(), ^{ - if ((_disconnectDelay > 0.0) && (_source4 != NULL)) { - if (_disconnectTimer) { - CFRunLoopTimerInvalidate(_disconnectTimer); - CFRelease(_disconnectTimer); + if ((self->_disconnectDelay > 0.0) && (self->_source4 != NULL)) { + if (self->_disconnectTimer) { + CFRunLoopTimerInvalidate(self->_disconnectTimer); + CFRelease(self->_disconnectTimer); } - _disconnectTimer = CFRunLoopTimerCreateWithHandler(kCFAllocatorDefault, CFAbsoluteTimeGetCurrent() + _disconnectDelay, 0.0, 0, 0, ^(CFRunLoopTimerRef timer) { + self->_disconnectTimer = CFRunLoopTimerCreateWithHandler(kCFAllocatorDefault, CFAbsoluteTimeGetCurrent() + self->_disconnectDelay, 0.0, 0, 0, ^(CFRunLoopTimerRef timer) { GWS_DCHECK([NSThread isMainThread]); [self _didDisconnect]; - CFRelease(_disconnectTimer); - _disconnectTimer = NULL; + CFRelease(self->_disconnectTimer); + self->_disconnectTimer = NULL; }); - CFRunLoopAddTimer(CFRunLoopGetMain(), _disconnectTimer, kCFRunLoopCommonModes); + CFRunLoopAddTimer(CFRunLoopGetMain(), self->_disconnectTimer, kCFRunLoopCommonModes); } else { [self _didDisconnect]; } @@ -412,19 +414,21 @@ static void _SocketCallBack(CFSocketRef s, CFSocketCallBackType type, CFDataRef } } -static inline id _GetOption(NSDictionary* options, NSString* key, id defaultValue) { +static inline id _GetOption(NSDictionary* options, NSString* key, id defaultValue) { id value = [options objectForKey:key]; return value ? value : defaultValue; } static inline NSString* _EncodeBase64(NSString* string) { NSData* data = [string dataUsingEncoding:NSUTF8StringEncoding]; -#if (TARGET_OS_IPHONE && !(__IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_7_0)) || (!TARGET_OS_IPHONE && !(__MAC_OS_X_VERSION_MIN_REQUIRED >= __MAC_10_9)) - if (![data respondsToSelector:@selector(base64EncodedDataWithOptions:)]) { - return [data base64Encoding]; - } -#endif +#if TARGET_OS_IPHONE || (__MAC_OS_X_VERSION_MIN_REQUIRED >= __MAC_10_9) return [[NSString alloc] initWithData:[data base64EncodedDataWithOptions:0] encoding:NSASCIIStringEncoding]; +#else + if (@available(macOS 10.9, *)) { + return [[NSString alloc] initWithData:[data base64EncodedDataWithOptions:0] encoding:NSASCIIStringEncoding]; + } + return [data base64Encoding]; +#endif } - (int)_createListeningSocket:(BOOL)useIPv6 @@ -469,7 +473,6 @@ static inline NSString* _EncodeBase64(NSString* string) { dispatch_group_enter(_sourceGroup); dispatch_source_t source = dispatch_source_create(DISPATCH_SOURCE_TYPE_READ, listeningSocket, 0, dispatch_get_global_queue(_dispatchQueuePriority, 0)); dispatch_source_set_cancel_handler(source, ^{ - @autoreleasepool { int result = close(listeningSocket); if (result != 0) { @@ -478,11 +481,9 @@ static inline NSString* _EncodeBase64(NSString* string) { GWS_LOG_DEBUG(@"Did close %s listening socket %i", isIPv6 ? "IPv6" : "IPv4", listeningSocket); } } - dispatch_group_leave(_sourceGroup); - + dispatch_group_leave(self->_sourceGroup); }); dispatch_source_set_event_handler(source, ^{ - @autoreleasepool { struct sockaddr_storage remoteSockAddr; socklen_t remoteAddrLen = sizeof(remoteSockAddr); @@ -503,13 +504,12 @@ static inline NSString* _EncodeBase64(NSString* string) { int noSigPipe = 1; setsockopt(socket, SOL_SOCKET, SO_NOSIGPIPE, &noSigPipe, sizeof(noSigPipe)); // Make sure this socket cannot generate SIG_PIPE - GCDWebServerConnection* connection = [[_connectionClass alloc] initWithServer:self localAddress:localAddress remoteAddress:remoteAddress socket:socket]; // Connection will automatically retain itself while opened + GCDWebServerConnection* connection = [(GCDWebServerConnection*)[self->_connectionClass alloc] initWithServer:self localAddress:localAddress remoteAddress:remoteAddress socket:socket]; // Connection will automatically retain itself while opened [connection self]; // Prevent compiler from complaining about unused variable / useless statement } else { GWS_LOG_ERROR(@"Failed accepting %s socket: %s (%i)", isIPv6 ? "IPv6" : "IPv4", strerror(errno), errno); } } - }); return source; } @@ -517,9 +517,9 @@ static inline NSString* _EncodeBase64(NSString* string) { - (BOOL)_start:(NSError**)error { GWS_DCHECK(_source4 == NULL); - NSUInteger port = [_GetOption(_options, GCDWebServerOption_Port, @0) unsignedIntegerValue]; - BOOL bindToLocalhost = [_GetOption(_options, GCDWebServerOption_BindToLocalhost, @NO) boolValue]; - NSUInteger maxPendingConnections = [_GetOption(_options, GCDWebServerOption_MaxPendingConnections, @16) unsignedIntegerValue]; + NSUInteger port = [(NSNumber*)_GetOption(_options, GCDWebServerOption_Port, @0) unsignedIntegerValue]; + BOOL bindToLocalhost = [(NSNumber*)_GetOption(_options, GCDWebServerOption_BindToLocalhost, @NO) boolValue]; + NSUInteger maxPendingConnections = [(NSNumber*)_GetOption(_options, GCDWebServerOption_MaxPendingConnections, @16) unsignedIntegerValue]; struct sockaddr_in addr4; bzero(&addr4, sizeof(addr4)); @@ -553,27 +553,27 @@ static inline NSString* _EncodeBase64(NSString* string) { return NO; } - _serverName = [_GetOption(_options, GCDWebServerOption_ServerName, NSStringFromClass([self class])) copy]; + _serverName = [(NSString*)_GetOption(_options, GCDWebServerOption_ServerName, NSStringFromClass([self class])) copy]; NSString* authenticationMethod = _GetOption(_options, GCDWebServerOption_AuthenticationMethod, nil); if ([authenticationMethod isEqualToString:GCDWebServerAuthenticationMethod_Basic]) { - _authenticationRealm = [_GetOption(_options, GCDWebServerOption_AuthenticationRealm, _serverName) copy]; + _authenticationRealm = [(NSString*)_GetOption(_options, GCDWebServerOption_AuthenticationRealm, _serverName) copy]; _authenticationBasicAccounts = [[NSMutableDictionary alloc] init]; NSDictionary* accounts = _GetOption(_options, GCDWebServerOption_AuthenticationAccounts, @{}); [accounts enumerateKeysAndObjectsUsingBlock:^(NSString* username, NSString* password, BOOL* stop) { - [_authenticationBasicAccounts setObject:_EncodeBase64([NSString stringWithFormat:@"%@:%@", username, password]) forKey:username]; + [self->_authenticationBasicAccounts setObject:_EncodeBase64([NSString stringWithFormat:@"%@:%@", username, password]) forKey:username]; }]; } else if ([authenticationMethod isEqualToString:GCDWebServerAuthenticationMethod_DigestAccess]) { - _authenticationRealm = [_GetOption(_options, GCDWebServerOption_AuthenticationRealm, _serverName) copy]; + _authenticationRealm = [(NSString*)_GetOption(_options, GCDWebServerOption_AuthenticationRealm, _serverName) copy]; _authenticationDigestAccounts = [[NSMutableDictionary alloc] init]; NSDictionary* accounts = _GetOption(_options, GCDWebServerOption_AuthenticationAccounts, @{}); [accounts enumerateKeysAndObjectsUsingBlock:^(NSString* username, NSString* password, BOOL* stop) { - [_authenticationDigestAccounts setObject:GCDWebServerComputeMD5Digest(@"%@:%@:%@", username, _authenticationRealm, password) forKey:username]; + [self->_authenticationDigestAccounts setObject:GCDWebServerComputeMD5Digest(@"%@:%@:%@", username, self->_authenticationRealm, password) forKey:username]; }]; } _connectionClass = _GetOption(_options, GCDWebServerOption_ConnectionClass, [GCDWebServerConnection class]); - _shouldAutomaticallyMapHEADToGET = [_GetOption(_options, GCDWebServerOption_AutomaticallyMapHEADToGET, @YES) boolValue]; - _disconnectDelay = [_GetOption(_options, GCDWebServerOption_ConnectedStateCoalescingInterval, @1.0) doubleValue]; - _dispatchQueuePriority = [_GetOption(_options, GCDWebServerOption_DispatchQueuePriority, @(DISPATCH_QUEUE_PRIORITY_DEFAULT)) longValue]; + _shouldAutomaticallyMapHEADToGET = [(NSNumber*)_GetOption(_options, GCDWebServerOption_AutomaticallyMapHEADToGET, @YES) boolValue]; + _disconnectDelay = [(NSNumber*)_GetOption(_options, GCDWebServerOption_ConnectedStateCoalescingInterval, @1.0) doubleValue]; + _dispatchQueuePriority = [(NSNumber*)_GetOption(_options, GCDWebServerOption_DispatchQueuePriority, @(DISPATCH_QUEUE_PRIORITY_DEFAULT)) longValue]; _source4 = [self _createDispatchSourceWithListeningSocket:listeningSocket4 isIPv6:NO]; _source6 = [self _createDispatchSourceWithListeningSocket:listeningSocket6 isIPv6:YES]; @@ -604,7 +604,7 @@ static inline NSString* _EncodeBase64(NSString* string) { } } - if ([_GetOption(_options, GCDWebServerOption_RequestNATPortMapping, @NO) boolValue]) { + if ([(NSNumber*)_GetOption(_options, GCDWebServerOption_RequestNATPortMapping, @NO) boolValue]) { DNSServiceErrorType status = DNSServiceNATPortMappingCreate(&_dnsService, 0, 0, kDNSServiceProtocol_TCP, htons(port), htons(port), 0, _DNSServiceCallBack, (__bridge void*)self); if (status == kDNSServiceErr_NoError) { CFSocketContext context = {0, (__bridge void*)self, NULL, NULL, NULL}; @@ -632,7 +632,7 @@ static inline NSString* _EncodeBase64(NSString* string) { GWS_LOG_INFO(@"%@ started on port %i and reachable at %@", [self class], (int)_port, self.serverURL); if ([_delegate respondsToSelector:@selector(webServerDidStart:)]) { dispatch_async(dispatch_get_main_queue(), ^{ - [_delegate webServerDidStart:self]; + [self->_delegate webServerDidStart:self]; }); } @@ -693,10 +693,10 @@ static inline NSString* _EncodeBase64(NSString* string) { _authenticationDigestAccounts = nil; dispatch_async(dispatch_get_main_queue(), ^{ - if (_disconnectTimer) { - CFRunLoopTimerInvalidate(_disconnectTimer); - CFRelease(_disconnectTimer); - _disconnectTimer = NULL; + if (self->_disconnectTimer) { + CFRunLoopTimerInvalidate(self->_disconnectTimer); + CFRelease(self->_disconnectTimer); + self->_disconnectTimer = NULL; [self _didDisconnect]; } }); @@ -704,7 +704,7 @@ static inline NSString* _EncodeBase64(NSString* string) { GWS_LOG_INFO(@"%@ stopped", [self class]); if ([_delegate respondsToSelector:@selector(webServerDidStop:)]) { dispatch_async(dispatch_get_main_queue(), ^{ - [_delegate webServerDidStop:self]; + [self->_delegate webServerDidStop:self]; }); } } @@ -729,11 +729,11 @@ static inline NSString* _EncodeBase64(NSString* string) { #endif -- (BOOL)startWithOptions:(NSDictionary*)options error:(NSError**)error { +- (BOOL)startWithOptions:(NSDictionary*)options error:(NSError**)error { if (_options == nil) { _options = options ? [options copy] : @{}; #if TARGET_OS_IPHONE - _suspendInBackground = [_GetOption(_options, GCDWebServerOption_AutomaticallySuspendInBackground, @YES) boolValue]; + _suspendInBackground = [(NSNumber*)_GetOption(_options, GCDWebServerOption_AutomaticallySuspendInBackground, @YES) boolValue]; if (((_suspendInBackground == NO) || ([[UIApplication sharedApplication] applicationState] != UIApplicationStateBackground)) && ![self _start:error]) #else if (![self _start:error]) @@ -840,7 +840,7 @@ static inline NSString* _EncodeBase64(NSString* string) { return [self runWithOptions:options error:NULL]; } -- (BOOL)runWithOptions:(NSDictionary*)options error:(NSError**)error { +- (BOOL)runWithOptions:(NSDictionary*)options error:(NSError**)error { GWS_DCHECK([NSThread isMainThread]); BOOL success = NO; _run = YES; @@ -876,13 +876,11 @@ static inline NSString* _EncodeBase64(NSString* string) { } - (void)addDefaultHandlerForMethod:(NSString*)method requestClass:(Class)aClass asyncProcessBlock:(GCDWebServerAsyncProcessBlock)block { - [self addHandlerWithMatchBlock:^GCDWebServerRequest*(NSString* requestMethod, NSURL* requestURL, NSDictionary* requestHeaders, NSString* urlPath, NSDictionary* urlQuery) { - + [self addHandlerWithMatchBlock:^GCDWebServerRequest*(NSString* requestMethod, NSURL* requestURL, NSDictionary* requestHeaders, NSString* urlPath, NSDictionary* urlQuery) { if (![requestMethod isEqualToString:method]) { return nil; } - return [[aClass alloc] initWithMethod:requestMethod url:requestURL headers:requestHeaders path:urlPath query:urlQuery]; - + return [(GCDWebServerRequest*)[aClass alloc] initWithMethod:requestMethod url:requestURL headers:requestHeaders path:urlPath query:urlQuery]; } asyncProcessBlock:block]; } @@ -898,16 +896,14 @@ static inline NSString* _EncodeBase64(NSString* string) { - (void)addHandlerForMethod:(NSString*)method path:(NSString*)path requestClass:(Class)aClass asyncProcessBlock:(GCDWebServerAsyncProcessBlock)block { if ([path hasPrefix:@"/"] && [aClass isSubclassOfClass:[GCDWebServerRequest class]]) { - [self addHandlerWithMatchBlock:^GCDWebServerRequest*(NSString* requestMethod, NSURL* requestURL, NSDictionary* requestHeaders, NSString* urlPath, NSDictionary* urlQuery) { - + [self addHandlerWithMatchBlock:^GCDWebServerRequest*(NSString* requestMethod, NSURL* requestURL, NSDictionary* requestHeaders, NSString* urlPath, NSDictionary* urlQuery) { if (![requestMethod isEqualToString:method]) { return nil; } if ([urlPath caseInsensitiveCompare:path] != NSOrderedSame) { return nil; } - return [[aClass alloc] initWithMethod:requestMethod url:requestURL headers:requestHeaders path:urlPath query:urlQuery]; - + return [(GCDWebServerRequest*)[aClass alloc] initWithMethod:requestMethod url:requestURL headers:requestHeaders path:urlPath query:urlQuery]; } asyncProcessBlock:block]; } else { @@ -927,8 +923,7 @@ static inline NSString* _EncodeBase64(NSString* string) { - (void)addHandlerForMethod:(NSString*)method pathRegex:(NSString*)regex requestClass:(Class)aClass asyncProcessBlock:(GCDWebServerAsyncProcessBlock)block { NSRegularExpression* expression = [NSRegularExpression regularExpressionWithPattern:regex options:NSRegularExpressionCaseInsensitive error:NULL]; if (expression && [aClass isSubclassOfClass:[GCDWebServerRequest class]]) { - [self addHandlerWithMatchBlock:^GCDWebServerRequest*(NSString* requestMethod, NSURL* requestURL, NSDictionary* requestHeaders, NSString* urlPath, NSDictionary* urlQuery) { - + [self addHandlerWithMatchBlock:^GCDWebServerRequest*(NSString* requestMethod, NSURL* requestURL, NSDictionary* requestHeaders, NSString* urlPath, NSDictionary* urlQuery) { if (![requestMethod isEqualToString:method]) { return nil; } @@ -951,10 +946,9 @@ static inline NSString* _EncodeBase64(NSString* string) { } } - GCDWebServerRequest* request = [[aClass alloc] initWithMethod:requestMethod url:requestURL headers:requestHeaders path:urlPath query:urlQuery]; + GCDWebServerRequest* request = [(GCDWebServerRequest*)[aClass alloc] initWithMethod:requestMethod url:requestURL headers:requestHeaders path:urlPath query:urlQuery]; [request setAttribute:captures forKey:GCDWebServerRequestAttribute_RegexCaptures]; return request; - } asyncProcessBlock:block]; } else { @@ -971,11 +965,9 @@ static inline NSString* _EncodeBase64(NSString* string) { path:path requestClass:[GCDWebServerRequest class] processBlock:^GCDWebServerResponse*(GCDWebServerRequest* request) { - GCDWebServerResponse* response = [GCDWebServerDataResponse responseWithData:staticData contentType:contentType]; response.cacheControlMaxAge = cacheAge; return response; - }]; } @@ -984,7 +976,6 @@ static inline NSString* _EncodeBase64(NSString* string) { path:path requestClass:[GCDWebServerRequest class] processBlock:^GCDWebServerResponse*(GCDWebServerRequest* request) { - GCDWebServerResponse* response = nil; if (allowRangeRequests) { response = [GCDWebServerFileResponse responseWithFile:filePath byteRange:request.byteRange isAttachment:isAttachment]; @@ -994,34 +985,33 @@ static inline NSString* _EncodeBase64(NSString* string) { } response.cacheControlMaxAge = cacheAge; return response; - }]; } - (GCDWebServerResponse*)_responseWithContentsOfDirectory:(NSString*)path { - NSDirectoryEnumerator* enumerator = [[NSFileManager defaultManager] enumeratorAtPath:path]; - if (enumerator == nil) { + NSArray* contents = [[[NSFileManager defaultManager] contentsOfDirectoryAtPath:path error:NULL] sortedArrayUsingSelector:@selector(localizedStandardCompare:)]; + if (contents == nil) { return nil; } NSMutableString* html = [NSMutableString string]; [html appendString:@"\n"]; [html appendString:@"\n"]; [html appendString:@"
    \n"]; - for (NSString* file in enumerator) { - if (![file hasPrefix:@"."]) { - NSString* type = [[enumerator fileAttributes] objectForKey:NSFileType]; + for (NSString* entry in contents) { + if (![entry hasPrefix:@"."]) { + NSString* type = [[[NSFileManager defaultManager] attributesOfItemAtPath:[path stringByAppendingPathComponent:entry] error:NULL] objectForKey:NSFileType]; + GWS_DCHECK(type); #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wdeprecated-declarations" - NSString* escapedFile = [file stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; + NSString* escapedFile = [entry stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; #pragma clang diagnostic pop GWS_DCHECK(escapedFile); if ([type isEqualToString:NSFileTypeRegular]) { - [html appendFormat:@"
  • %@
  • \n", escapedFile, file]; + [html appendFormat:@"
  • %@
  • \n", escapedFile, entry]; } else if ([type isEqualToString:NSFileTypeDirectory]) { - [html appendFormat:@"
  • %@/
  • \n", escapedFile, file]; + [html appendFormat:@"
  • %@/
  • \n", escapedFile, entry]; } } - [enumerator skipDescendents]; } [html appendString:@"
\n"]; [html appendString:@"\n"]; @@ -1031,8 +1021,7 @@ static inline NSString* _EncodeBase64(NSString* string) { - (void)addGETHandlerForBasePath:(NSString*)basePath directoryPath:(NSString*)directoryPath indexFilename:(NSString*)indexFilename cacheAge:(NSUInteger)cacheAge allowRangeRequests:(BOOL)allowRangeRequests { if ([basePath hasPrefix:@"/"] && [basePath hasSuffix:@"/"]) { GCDWebServer* __unsafe_unretained server = self; - [self addHandlerWithMatchBlock:^GCDWebServerRequest*(NSString* requestMethod, NSURL* requestURL, NSDictionary* requestHeaders, NSString* urlPath, NSDictionary* urlQuery) { - + [self addHandlerWithMatchBlock:^GCDWebServerRequest*(NSString* requestMethod, NSURL* requestURL, NSDictionary* requestHeaders, NSString* urlPath, NSDictionary* urlQuery) { if (![requestMethod isEqualToString:@"GET"]) { return nil; } @@ -1040,12 +1029,10 @@ static inline NSString* _EncodeBase64(NSString* string) { return nil; } return [[GCDWebServerRequest alloc] initWithMethod:requestMethod url:requestURL headers:requestHeaders path:urlPath query:urlQuery]; - } processBlock:^GCDWebServerResponse*(GCDWebServerRequest* request) { - GCDWebServerResponse* response = nil; - NSString* filePath = [directoryPath stringByAppendingPathComponent:[request.path substringFromIndex:basePath.length]]; + NSString* filePath = [directoryPath stringByAppendingPathComponent:GCDWebServerNormalizePath([request.path substringFromIndex:basePath.length])]; NSString* fileType = [[[NSFileManager defaultManager] attributesOfItemAtPath:filePath error:NULL] fileType]; if (fileType) { if ([fileType isEqualToString:NSFileTypeDirectory]) { @@ -1072,7 +1059,6 @@ static inline NSString* _EncodeBase64(NSString* string) { response = [GCDWebServerResponse responseWithStatusCode:kGCDWebServerHTTPStatusCode_NotFound]; } return response; - }]; } else { GWS_DNOT_REACHED(); @@ -1091,6 +1077,14 @@ static inline NSString* _EncodeBase64(NSString* string) { #endif } ++ (void)setBuiltInLogger:(GCDWebServerBuiltInLoggerBlock)block { +#if defined(__GCDWEBSERVER_LOGGING_FACILITY_BUILTIN__) + _builtInLoggerBlock = block; +#else + GWS_DNOT_REACHED(); // Built-in logger must be enabled in order to override +#endif +} + - (void)logVerbose:(NSString*)format, ... { va_list arguments; va_start(arguments, format); @@ -1148,9 +1142,9 @@ static CFHTTPMessageRef _CreateHTTPMessageFromPerformingRequest(NSData* inData, if (httpSocket > 0) { struct sockaddr_in addr4; bzero(&addr4, sizeof(addr4)); - addr4.sin_len = sizeof(port); + addr4.sin_len = sizeof(addr4); addr4.sin_family = AF_INET; - addr4.sin_port = htons(8080); + addr4.sin_port = htons(port); addr4.sin_addr.s_addr = htonl(INADDR_ANY); if (connect(httpSocket, (void*)&addr4, sizeof(addr4)) == 0) { if (write(httpSocket, inData.bytes, inData.length) == (ssize_t)inData.length) { @@ -1190,7 +1184,7 @@ static void _LogResult(NSString* format, ...) { fprintf(stdout, "%s\n", [message UTF8String]); } -- (NSInteger)runTestsWithOptions:(NSDictionary*)options inDirectory:(NSString*)path { +- (NSInteger)runTestsWithOptions:(NSDictionary*)options inDirectory:(NSString*)path { GWS_DCHECK([NSThread isMainThread]); NSArray* ignoredHeaders = @[ @"Date", @"Etag" ]; // Dates are always different by definition and ETags depend on file system node IDs NSInteger result = -1; @@ -1198,7 +1192,7 @@ static void _LogResult(NSString* format, ...) { _ExecuteMainThreadRunLoopSources(); result = 0; - NSArray* files = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:path error:NULL]; + NSArray* files = [[[NSFileManager defaultManager] contentsOfDirectoryAtPath:path error:NULL] sortedArrayUsingSelector:@selector(localizedStandardCompare:)]; for (NSString* requestFile in files) { if (![requestFile hasSuffix:@".request"]) { continue; @@ -1258,7 +1252,7 @@ static void _LogResult(NSString* format, ...) { if ([actualContentLength isEqualToString:expectedContentLength] && (actualBody.length > expectedBody.length)) { // Handle web browser closing connection before retrieving entire body (e.g. when playing a video file) actualBody = [actualBody subdataWithRange:NSMakeRange(0, expectedBody.length)]; } - if (![actualBody isEqualToData:expectedBody]) { + if ((actualBody && expectedBody && ![actualBody isEqualToData:expectedBody]) || (actualBody && !expectedBody) || (!actualBody && expectedBody)) { _LogResult(@" Bodies not matching:\n Expected: %lu bytes\n Actual: %lu bytes", (unsigned long)expectedBody.length, (unsigned long)actualBody.length); success = NO; #if !TARGET_OS_IPHONE diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerConnection.h b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerConnection.h index 420d12a..4d59b9f 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerConnection.h +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerConnection.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -130,7 +130,7 @@ NS_ASSUME_NONNULL_BEGIN * * The default implementation returns the original URL. */ -- (NSURL*)rewriteRequestURL:(NSURL*)url withMethod:(NSString*)method headers:(NSDictionary*)headers; +- (NSURL*)rewriteRequestURL:(NSURL*)url withMethod:(NSString*)method headers:(NSDictionary*)headers; /** * Assuming a valid HTTP request was received, this method is called before diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerConnection.m b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerConnection.m index 1fd56c3..b48edc6 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerConnection.m +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerConnection.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -193,22 +193,18 @@ NS_ASSUME_NONNULL_END CFHTTPMessageSetHeaderFieldValue(_responseMessage, CFSTR("Transfer-Encoding"), CFSTR("chunked")); } [_response.additionalHeaders enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL* stop) { - CFHTTPMessageSetHeaderFieldValue(_responseMessage, (__bridge CFStringRef)key, (__bridge CFStringRef)obj); + CFHTTPMessageSetHeaderFieldValue(self->_responseMessage, (__bridge CFStringRef)key, (__bridge CFStringRef)obj); }]; [self writeHeadersWithCompletionBlock:^(BOOL success) { - if (success) { if (hasBody) { [self writeBodyWithCompletionBlock:^(BOOL successInner) { - - [_response performClose]; // TODO: There's nothing we can do on failure as headers have already been sent - + [self->_response performClose]; // TODO: There's nothing we can do on failure as headers have already been sent }]; } } else if (hasBody) { - [_response performClose]; + [self->_response performClose]; } - }]; } else { [self abortRequest:_request withStatusCode:kGCDWebServerHTTPStatusCode_InternalServerError]; @@ -238,15 +234,13 @@ NS_ASSUME_NONNULL_END if (length) { [self readBodyWithRemainingLength:length completionBlock:^(BOOL success) { - NSError* localError = nil; - if ([_request performClose:&localError]) { + if ([self->_request performClose:&localError]) { [self _startProcessingRequest]; } else { - GWS_LOG_ERROR(@"Failed closing request body for socket %i: %@", _socket, error); - [self abortRequest:_request withStatusCode:kGCDWebServerHTTPStatusCode_InternalServerError]; + GWS_LOG_ERROR(@"Failed closing request body for socket %i: %@", self->_socket, error); + [self abortRequest:self->_request withStatusCode:kGCDWebServerHTTPStatusCode_InternalServerError]; } - }]; } else { if ([_request performClose:&error]) { @@ -269,15 +263,13 @@ NS_ASSUME_NONNULL_END NSMutableData* chunkData = [[NSMutableData alloc] initWithData:initialData]; [self readNextBodyChunk:chunkData completionBlock:^(BOOL success) { - NSError* localError = nil; - if ([_request performClose:&localError]) { + if ([self->_request performClose:&localError]) { [self _startProcessingRequest]; } else { - GWS_LOG_ERROR(@"Failed closing request body for socket %i: %@", _socket, error); - [self abortRequest:_request withStatusCode:kGCDWebServerHTTPStatusCode_InternalServerError]; + GWS_LOG_ERROR(@"Failed closing request body for socket %i: %@", self->_socket, error); + [self abortRequest:self->_request withStatusCode:kGCDWebServerHTTPStatusCode_InternalServerError]; } - }]; } @@ -286,15 +278,14 @@ NS_ASSUME_NONNULL_END NSMutableData* headersData = [[NSMutableData alloc] initWithCapacity:kHeadersReadCapacity]; [self readHeaders:headersData withCompletionBlock:^(NSData* extraData) { - if (extraData) { - NSString* requestMethod = CFBridgingRelease(CFHTTPMessageCopyRequestMethod(_requestMessage)); // Method verbs are case-sensitive and uppercase - if (_server.shouldAutomaticallyMapHEADToGET && [requestMethod isEqualToString:@"HEAD"]) { + NSString* requestMethod = CFBridgingRelease(CFHTTPMessageCopyRequestMethod(self->_requestMessage)); // Method verbs are case-sensitive and uppercase + if (self->_server.shouldAutomaticallyMapHEADToGET && [requestMethod isEqualToString:@"HEAD"]) { requestMethod = @"GET"; - _virtualHEAD = YES; + self->_virtualHEAD = YES; } - NSDictionary* requestHeaders = CFBridgingRelease(CFHTTPMessageCopyAllHeaderFields(_requestMessage)); // Header names are case-insensitive but CFHTTPMessageCopyAllHeaderFields() will standardize the common ones - NSURL* requestURL = CFBridgingRelease(CFHTTPMessageCopyRequestURL(_requestMessage)); + NSDictionary* requestHeaders = CFBridgingRelease(CFHTTPMessageCopyAllHeaderFields(self->_requestMessage)); // Header names are case-insensitive but CFHTTPMessageCopyAllHeaderFields() will standardize the common ones + NSURL* requestURL = CFBridgingRelease(CFHTTPMessageCopyRequestURL(self->_requestMessage)); if (requestURL) { requestURL = [self rewriteRequestURL:requestURL withMethod:requestMethod headers:requestHeaders]; GWS_DCHECK(requestURL); @@ -307,55 +298,53 @@ NS_ASSUME_NONNULL_END NSString* queryString = requestURL ? CFBridgingRelease(CFURLCopyQueryString((CFURLRef)requestURL, NULL)) : nil; // Don't use -[NSURL query] to make sure query is not unescaped; NSDictionary* requestQuery = queryString ? GCDWebServerParseURLEncodedForm(queryString) : @{}; if (requestMethod && requestURL && requestHeaders && requestPath && requestQuery) { - for (_handler in _server.handlers) { - _request = _handler.matchBlock(requestMethod, requestURL, requestHeaders, requestPath, requestQuery); - if (_request) { + for (self->_handler in self->_server.handlers) { + self->_request = self->_handler.matchBlock(requestMethod, requestURL, requestHeaders, requestPath, requestQuery); + if (self->_request) { break; } } - if (_request) { - _request.localAddressData = self.localAddressData; - _request.remoteAddressData = self.remoteAddressData; - if ([_request hasBody]) { - [_request prepareForWriting]; - if (_request.usesChunkedTransferEncoding || (extraData.length <= _request.contentLength)) { + if (self->_request) { + self->_request.localAddressData = self.localAddressData; + self->_request.remoteAddressData = self.remoteAddressData; + if ([self->_request hasBody]) { + [self->_request prepareForWriting]; + if (self->_request.usesChunkedTransferEncoding || (extraData.length <= self->_request.contentLength)) { NSString* expectHeader = [requestHeaders objectForKey:@"Expect"]; if (expectHeader) { if ([expectHeader caseInsensitiveCompare:@"100-continue"] == NSOrderedSame) { // TODO: Actually validate request before continuing [self writeData:_continueData withCompletionBlock:^(BOOL success) { - if (success) { - if (_request.usesChunkedTransferEncoding) { + if (self->_request.usesChunkedTransferEncoding) { [self _readChunkedBodyWithInitialData:extraData]; } else { - [self _readBodyWithLength:_request.contentLength initialData:extraData]; + [self _readBodyWithLength:self->_request.contentLength initialData:extraData]; } } - }]; } else { - GWS_LOG_ERROR(@"Unsupported 'Expect' / 'Content-Length' header combination on socket %i", _socket); - [self abortRequest:_request withStatusCode:kGCDWebServerHTTPStatusCode_ExpectationFailed]; + GWS_LOG_ERROR(@"Unsupported 'Expect' / 'Content-Length' header combination on socket %i", self->_socket); + [self abortRequest:self->_request withStatusCode:kGCDWebServerHTTPStatusCode_ExpectationFailed]; } } else { - if (_request.usesChunkedTransferEncoding) { + if (self->_request.usesChunkedTransferEncoding) { [self _readChunkedBodyWithInitialData:extraData]; } else { - [self _readBodyWithLength:_request.contentLength initialData:extraData]; + [self _readBodyWithLength:self->_request.contentLength initialData:extraData]; } } } else { - GWS_LOG_ERROR(@"Unexpected 'Content-Length' header value on socket %i", _socket); - [self abortRequest:_request withStatusCode:kGCDWebServerHTTPStatusCode_BadRequest]; + GWS_LOG_ERROR(@"Unexpected 'Content-Length' header value on socket %i", self->_socket); + [self abortRequest:self->_request withStatusCode:kGCDWebServerHTTPStatusCode_BadRequest]; } } else { [self _startProcessingRequest]; } } else { - _request = [[GCDWebServerRequest alloc] initWithMethod:requestMethod url:requestURL headers:requestHeaders path:requestPath query:requestQuery]; - GWS_DCHECK(_request); - [self abortRequest:_request withStatusCode:kGCDWebServerHTTPStatusCode_NotImplemented]; + self->_request = [[GCDWebServerRequest alloc] initWithMethod:requestMethod url:requestURL headers:requestHeaders path:requestPath query:requestQuery]; + GWS_DCHECK(self->_request); + [self abortRequest:self->_request withStatusCode:kGCDWebServerHTTPStatusCode_NotImplemented]; } } else { [self abortRequest:nil withStatusCode:kGCDWebServerHTTPStatusCode_InternalServerError]; @@ -364,7 +353,6 @@ NS_ASSUME_NONNULL_END } else { [self abortRequest:nil withStatusCode:kGCDWebServerHTTPStatusCode_InternalServerError]; } - }]; } @@ -426,7 +414,6 @@ NS_ASSUME_NONNULL_END - (void)readData:(NSMutableData*)data withLength:(NSUInteger)length completionBlock:(ReadDataCompletionBlock)block { dispatch_read(_socket, length, dispatch_get_global_queue(_server.dispatchQueuePriority, 0), ^(dispatch_data_t buffer, int error) { - @autoreleasepool { if (error == 0) { size_t size = dispatch_data_get_size(buffer); @@ -439,19 +426,18 @@ NS_ASSUME_NONNULL_END [self didReadBytes:((char*)data.bytes + originalLength) length:(data.length - originalLength)]; block(YES); } else { - if (_totalBytesRead > 0) { - GWS_LOG_ERROR(@"No more data available on socket %i", _socket); + if (self->_totalBytesRead > 0) { + GWS_LOG_ERROR(@"No more data available on socket %i", self->_socket); } else { - GWS_LOG_WARNING(@"No data received from socket %i", _socket); + GWS_LOG_WARNING(@"No data received from socket %i", self->_socket); } block(NO); } } else { - GWS_LOG_ERROR(@"Error while reading from socket %i: %s (%i)", _socket, strerror(error), error); + GWS_LOG_ERROR(@"Error while reading from socket %i: %s (%i)", self->_socket, strerror(error), error); block(NO); } } - }); } @@ -460,29 +446,27 @@ NS_ASSUME_NONNULL_END [self readData:headersData withLength:NSUIntegerMax completionBlock:^(BOOL success) { - if (success) { NSRange range = [headersData rangeOfData:_CRLFCRLFData options:0 range:NSMakeRange(0, headersData.length)]; if (range.location == NSNotFound) { [self readHeaders:headersData withCompletionBlock:block]; } else { NSUInteger length = range.location + range.length; - if (CFHTTPMessageAppendBytes(_requestMessage, headersData.bytes, length)) { - if (CFHTTPMessageIsHeaderComplete(_requestMessage)) { + if (CFHTTPMessageAppendBytes(self->_requestMessage, headersData.bytes, length)) { + if (CFHTTPMessageIsHeaderComplete(self->_requestMessage)) { block([headersData subdataWithRange:NSMakeRange(length, headersData.length - length)]); } else { - GWS_LOG_ERROR(@"Failed parsing request headers from socket %i", _socket); + GWS_LOG_ERROR(@"Failed parsing request headers from socket %i", self->_socket); block(nil); } } else { - GWS_LOG_ERROR(@"Failed appending request headers data from socket %i", _socket); + GWS_LOG_ERROR(@"Failed appending request headers data from socket %i", self->_socket); block(nil); } } } else { block(nil); } - }]; } @@ -492,11 +476,10 @@ NS_ASSUME_NONNULL_END [self readData:bodyData withLength:length completionBlock:^(BOOL success) { - if (success) { if (bodyData.length <= length) { NSError* error = nil; - if ([_request performWriteData:bodyData error:&error]) { + if ([self->_request performWriteData:bodyData error:&error]) { NSUInteger remainingLength = length - bodyData.length; if (remainingLength) { [self readBodyWithRemainingLength:remainingLength completionBlock:block]; @@ -504,18 +487,17 @@ NS_ASSUME_NONNULL_END block(YES); } } else { - GWS_LOG_ERROR(@"Failed writing request body on socket %i: %@", _socket, error); + GWS_LOG_ERROR(@"Failed writing request body on socket %i: %@", self->_socket, error); block(NO); } } else { - GWS_LOG_ERROR(@"Unexpected extra content reading request body on socket %i", _socket); + GWS_LOG_ERROR(@"Unexpected extra content reading request body on socket %i", self->_socket); block(NO); GWS_DNOT_REACHED(); } } else { block(NO); } - }]; } @@ -575,13 +557,11 @@ static inline NSUInteger _ScanHexNumber(const void* bytes, NSUInteger size) { [self readData:chunkData withLength:NSUIntegerMax completionBlock:^(BOOL success) { - if (success) { [self readNextBodyChunk:chunkData completionBlock:block]; } else { block(NO); } - }]; } @@ -594,18 +574,16 @@ static inline NSUInteger _ScanHexNumber(const void* bytes, NSUInteger size) { [data self]; // Keeps ARC from releasing data too early }); dispatch_write(_socket, buffer, dispatch_get_global_queue(_server.dispatchQueuePriority, 0), ^(dispatch_data_t remainingData, int error) { - @autoreleasepool { if (error == 0) { GWS_DCHECK(remainingData == NULL); [self didWriteBytes:data.bytes length:data.length]; block(YES); } else { - GWS_LOG_ERROR(@"Error while writing to socket %i: %s (%i)", _socket, strerror(error), error); + GWS_LOG_ERROR(@"Error while writing to socket %i: %s (%i)", self->_socket, strerror(error), error); block(NO); } } - }); #if !OS_OBJECT_USE_OBJC_RETAIN_RELEASE dispatch_release(buffer); @@ -622,15 +600,14 @@ static inline NSUInteger _ScanHexNumber(const void* bytes, NSUInteger size) { - (void)writeBodyWithCompletionBlock:(WriteBodyCompletionBlock)block { GWS_DCHECK([_response hasBody]); [_response performReadDataWithCompletion:^(NSData* data, NSError* error) { - if (data) { if (data.length) { - if (_response.usesChunkedTransferEncoding) { + if (self->_response.usesChunkedTransferEncoding) { const char* hexString = [[NSString stringWithFormat:@"%lx", (unsigned long)data.length] UTF8String]; size_t hexLength = strlen(hexString); NSData* chunk = [NSMutableData dataWithLength:(hexLength + 2 + data.length + 2)]; if (chunk == nil) { - GWS_LOG_ERROR(@"Failed allocating memory for response body chunk for socket %i: %@", _socket, error); + GWS_LOG_ERROR(@"Failed allocating memory for response body chunk for socket %i: %@", self->_socket, error); block(NO); return; } @@ -647,31 +624,26 @@ static inline NSUInteger _ScanHexNumber(const void* bytes, NSUInteger size) { } [self writeData:data withCompletionBlock:^(BOOL success) { - if (success) { [self writeBodyWithCompletionBlock:block]; } else { block(NO); } - }]; } else { - if (_response.usesChunkedTransferEncoding) { + if (self->_response.usesChunkedTransferEncoding) { [self writeData:_lastChunkData withCompletionBlock:^(BOOL success) { - block(success); - }]; } else { block(YES); } } } else { - GWS_LOG_ERROR(@"Failed reading response body for socket %i: %@", _socket, error); + GWS_LOG_ERROR(@"Failed reading response body for socket %i: %@", self->_socket, error); block(NO); } - }]; } @@ -726,7 +698,7 @@ static inline NSUInteger _ScanHexNumber(const void* bytes, NSUInteger size) { #endif } -- (NSURL*)rewriteRequestURL:(NSURL*)url withMethod:(NSString*)method headers:(NSDictionary*)headers { +- (NSURL*)rewriteRequestURL:(NSURL*)url withMethod:(NSString*)method headers:(NSDictionary*)headers { return url; } diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerFunctions.h b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerFunctions.h index 4235ecc..217fb14 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerFunctions.h +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerFunctions.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -41,7 +41,7 @@ extern "C" { * types. Keys of the dictionary must be lowercased file extensions without * the period, and the values must be the corresponding MIME types. */ -NSString* GCDWebServerGetMimeTypeForExtension(NSString* extension, NSDictionary* _Nullable overrides); +NSString* GCDWebServerGetMimeTypeForExtension(NSString* extension, NSDictionary* _Nullable overrides); /** * Add percent-escapes to a string so it can be used in a URL. @@ -60,7 +60,7 @@ NSString* _Nullable GCDWebServerUnescapeURLString(NSString* string); * "application/x-www-form-urlencoded" form. * http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.1 */ -NSDictionary* GCDWebServerParseURLEncodedForm(NSString* form); +NSDictionary* GCDWebServerParseURLEncodedForm(NSString* form); /** * On OS X, returns the IPv4 or IPv6 address as a string of the primary @@ -102,6 +102,11 @@ NSString* GCDWebServerFormatISO8601(NSDate* date); */ NSDate* _Nullable GCDWebServerParseISO8601(NSString* string); +/** + * Removes "//", "/./" and "/../" components from path as well as any trailing slash. + */ +NSString* GCDWebServerNormalizePath(NSString* path); + #ifdef __cplusplus } #endif diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerFunctions.m b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerFunctions.m index 2a1edfc..7787884 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerFunctions.m +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerFunctions.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -166,8 +166,8 @@ NSString* GCDWebServerDescribeData(NSData* data, NSString* type) { return [NSString stringWithFormat:@"<%lu bytes>", (unsigned long)data.length]; } -NSString* GCDWebServerGetMimeTypeForExtension(NSString* extension, NSDictionary* overrides) { - NSDictionary* builtInOverrides = @{ @"css" : @"text/css" }; +NSString* GCDWebServerGetMimeTypeForExtension(NSString* extension, NSDictionary* overrides) { + NSDictionary* builtInOverrides = @{@"css" : @"text/css"}; NSString* mimeType = nil; extension = [extension lowercaseString]; if (extension.length) { @@ -200,7 +200,7 @@ NSString* GCDWebServerUnescapeURLString(NSString* string) { #pragma clang diagnostic pop } -NSDictionary* GCDWebServerParseURLEncodedForm(NSString* form) { +NSDictionary* GCDWebServerParseURLEncodedForm(NSString* form) { NSMutableDictionary* parameters = [NSMutableDictionary dictionary]; NSScanner* scanner = [[NSScanner alloc] initWithString:form]; [scanner setCharactersToBeSkipped:nil]; @@ -314,3 +314,18 @@ NSString* GCDWebServerComputeMD5Digest(NSString* format, ...) { buffer[2 * CC_MD5_DIGEST_LENGTH] = 0; return (NSString*)[NSString stringWithUTF8String:buffer]; } + +NSString* GCDWebServerNormalizePath(NSString* path) { + NSMutableArray* components = [[NSMutableArray alloc] init]; + for (NSString* component in [path componentsSeparatedByString:@"/"]) { + if ([component isEqualToString:@".."]) { + [components removeLastObject]; + } else if (component.length && ![component isEqualToString:@"."]) { + [components addObject:component]; + } + } + if (path.length && ([path characterAtIndex:0] == '/')) { + return [@"/" stringByAppendingString:[components componentsJoinedByString:@"/"]]; // Preserve initial slash + } + return [components componentsJoinedByString:@"/"]; +} diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerHTTPStatusCodes.h b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerHTTPStatusCodes.h index 6e98381..12b697e 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerHTTPStatusCodes.h +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerHTTPStatusCodes.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerPrivate.h b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerPrivate.h index d726ec2..4668a97 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerPrivate.h +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerPrivate.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -170,7 +170,7 @@ static inline NSError* GCDWebServerMakePosixError(int code) { return [NSError errorWithDomain:NSPOSIXErrorDomain code:code userInfo:@{NSLocalizedDescriptionKey : (NSString*)[NSString stringWithUTF8String:strerror(code)]}]; } -extern void GCDWebServerInitializeFunctions(); +extern void GCDWebServerInitializeFunctions(void); extern NSString* _Nullable GCDWebServerNormalizeHeaderValue(NSString* _Nullable value); extern NSString* _Nullable GCDWebServerTruncateHeaderValue(NSString* _Nullable value); extern NSString* _Nullable GCDWebServerExtractHeaderValueParameter(NSString* _Nullable value, NSString* attribute); @@ -185,11 +185,11 @@ extern NSString* GCDWebServerStringFromSockAddr(const struct sockaddr* addr, BOO @end @interface GCDWebServer () -@property(nonatomic, readonly) NSMutableArray* handlers; +@property(nonatomic, readonly) NSMutableArray* handlers; @property(nonatomic, readonly, nullable) NSString* serverName; @property(nonatomic, readonly, nullable) NSString* authenticationRealm; -@property(nonatomic, readonly, nullable) NSMutableDictionary* authenticationBasicAccounts; -@property(nonatomic, readonly, nullable) NSMutableDictionary* authenticationDigestAccounts; +@property(nonatomic, readonly, nullable) NSMutableDictionary* authenticationBasicAccounts; +@property(nonatomic, readonly, nullable) NSMutableDictionary* authenticationDigestAccounts; @property(nonatomic, readonly) BOOL shouldAutomaticallyMapHEADToGET; @property(nonatomic, readonly) dispatch_queue_priority_t dispatchQueuePriority; - (void)willStartConnection:(GCDWebServerConnection*)connection; @@ -213,7 +213,7 @@ extern NSString* GCDWebServerStringFromSockAddr(const struct sockaddr* addr, BOO @end @interface GCDWebServerResponse () -@property(nonatomic, readonly) NSDictionary* additionalHeaders; +@property(nonatomic, readonly) NSDictionary* additionalHeaders; @property(nonatomic, readonly) BOOL usesChunkedTransferEncoding; - (void)prepareForReading; - (BOOL)performOpen:(NSError**)error; diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerRequest.h b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerRequest.h index 3fe9029..79b446a 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerRequest.h +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerRequest.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -102,7 +102,7 @@ extern NSString* const GCDWebServerRequestAttribute_RegexCaptures; /** * Returns the HTTP headers for the request. */ -@property(nonatomic, readonly) NSDictionary* headers; +@property(nonatomic, readonly) NSDictionary* headers; /** * Returns the path component of the URL for the request. @@ -114,7 +114,7 @@ extern NSString* const GCDWebServerRequestAttribute_RegexCaptures; * * @warning This property will be nil if there is no query in the URL. */ -@property(nonatomic, readonly, nullable) NSDictionary* query; +@property(nonatomic, readonly, nullable) NSDictionary* query; /** * Returns the content type for the body of the request parsed from the @@ -186,7 +186,7 @@ extern NSString* const GCDWebServerRequestAttribute_RegexCaptures; /** * This method is the designated initializer for the class. */ -- (instancetype)initWithMethod:(NSString*)method url:(NSURL*)url headers:(NSDictionary*)headers path:(NSString*)path query:(nullable NSDictionary*)query; +- (instancetype)initWithMethod:(NSString*)method url:(NSURL*)url headers:(NSDictionary*)headers path:(NSString*)path query:(nullable NSDictionary*)query; /** * Convenience method that checks if the contentType property is defined. diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerRequest.m b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerRequest.m index 05988cd..5648eff 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerRequest.m +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerRequest.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -136,12 +136,12 @@ NSString* const GCDWebServerRequestAttribute_RegexCaptures = @"GCDWebServerReque @implementation GCDWebServerRequest { BOOL _opened; - NSMutableArray* _decoders; + NSMutableArray* _decoders; id __unsafe_unretained _writer; - NSMutableDictionary* _attributes; + NSMutableDictionary* _attributes; } -- (instancetype)initWithMethod:(NSString*)method url:(NSURL*)url headers:(NSDictionary*)headers path:(NSString*)path query:(NSDictionary*)query { +- (instancetype)initWithMethod:(NSString*)method url:(NSURL*)url headers:(NSDictionary*)headers path:(NSString*)path query:(NSDictionary*)query { if ((self = [super init])) { _method = [method copy]; _URL = url; @@ -188,7 +188,7 @@ NSString* const GCDWebServerRequestAttribute_RegexCaptures = @"GCDWebServerReque if ([rangeHeader hasPrefix:@"bytes="]) { NSArray* components = [[rangeHeader substringFromIndex:6] componentsSeparatedByString:@","]; if (components.count == 1) { - components = [[components firstObject] componentsSeparatedByString:@"-"]; + components = [(NSString*)[components firstObject] componentsSeparatedByString:@"-"]; if (components.count == 2) { NSString* startString = [components objectAtIndex:0]; NSInteger startValue = [startString integerValue]; diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerResponse.h b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerResponse.h index 1e5e8c9..2e1365b 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerResponse.h +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerResponse.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -33,7 +33,7 @@ NS_ASSUME_NONNULL_BEGIN * The GCDWebServerBodyReaderCompletionBlock is passed by GCDWebServer to the * GCDWebServerBodyReader object when reading data from it asynchronously. */ -typedef void (^GCDWebServerBodyReaderCompletionBlock)(NSData* data, NSError* _Nullable error); +typedef void (^GCDWebServerBodyReaderCompletionBlock)(NSData* _Nullable data, NSError* _Nullable error); /** * This protocol is used by the GCDWebServerConnection to communicate with diff --git a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerResponse.m b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerResponse.m index 9153ff6..46042b2 100644 --- a/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerResponse.m +++ b/Pods/GCDWebServer/GCDWebServer/Core/GCDWebServerResponse.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -150,12 +150,12 @@ @implementation GCDWebServerResponse { BOOL _opened; - NSMutableArray* _encoders; + NSMutableArray* _encoders; id __unsafe_unretained _reader; } + (instancetype)response { - return [[[self class] alloc] init]; + return [(GCDWebServerResponse*)[[self class] alloc] init]; } - (instancetype)init { @@ -259,11 +259,11 @@ @implementation GCDWebServerResponse (Extensions) + (instancetype)responseWithStatusCode:(NSInteger)statusCode { - return [[self alloc] initWithStatusCode:statusCode]; + return [(GCDWebServerResponse*)[self alloc] initWithStatusCode:statusCode]; } + (instancetype)responseWithRedirect:(NSURL*)location permanent:(BOOL)permanent { - return [[self alloc] initWithRedirect:location permanent:permanent]; + return [(GCDWebServerResponse*)[self alloc] initWithRedirect:location permanent:permanent]; } - (instancetype)initWithStatusCode:(NSInteger)statusCode { diff --git a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerDataRequest.h b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerDataRequest.h index f21a4b7..b105ce7 100644 --- a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerDataRequest.h +++ b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerDataRequest.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerDataRequest.m b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerDataRequest.m index 3ea9bba..fcb2932 100644 --- a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerDataRequest.m +++ b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerDataRequest.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -48,7 +48,7 @@ } if (_data == nil) { if (error) { - *error = [NSError errorWithDomain:kGCDWebServerErrorDomain code:-1 userInfo:@{ NSLocalizedDescriptionKey : @"Failed allocating memory" }]; + *error = [NSError errorWithDomain:kGCDWebServerErrorDomain code:-1 userInfo:@{NSLocalizedDescriptionKey : @"Failed allocating memory"}]; } return NO; } diff --git a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerFileRequest.h b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerFileRequest.h index 8aceae4..3c6a6d2 100644 --- a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerFileRequest.h +++ b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerFileRequest.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerFileRequest.m b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerFileRequest.m index 8a47fcc..0845d5e 100644 --- a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerFileRequest.m +++ b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerFileRequest.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -35,7 +35,7 @@ int _file; } -- (instancetype)initWithMethod:(NSString*)method url:(NSURL*)url headers:(NSDictionary*)headers path:(NSString*)path query:(NSDictionary*)query { +- (instancetype)initWithMethod:(NSString*)method url:(NSURL*)url headers:(NSDictionary*)headers path:(NSString*)path query:(NSDictionary*)query { if ((self = [super initWithMethod:method url:url headers:headers path:path query:query])) { _temporaryPath = [NSTemporaryDirectory() stringByAppendingPathComponent:[[NSProcessInfo processInfo] globallyUniqueString]]; } diff --git a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.h b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.h index 93ac179..cbe838e 100644 --- a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.h +++ b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -107,13 +107,13 @@ NS_ASSUME_NONNULL_BEGIN * Returns the argument parts from the multipart encoded form as * name / GCDWebServerMultiPartArgument pairs. */ -@property(nonatomic, readonly) NSArray* arguments; +@property(nonatomic, readonly) NSArray* arguments; /** * Returns the files parts from the multipart encoded form as * name / GCDWebServerMultiPartFile pairs. */ -@property(nonatomic, readonly) NSArray* files; +@property(nonatomic, readonly) NSArray* files; /** * Returns the MIME type for multipart encoded forms diff --git a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.m b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.m index 4e6bf09..7550a02 100644 --- a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.m +++ b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -106,8 +106,8 @@ static NSData* _dashNewlineData = nil; NSString* _defaultcontrolName; ParserState _state; NSMutableData* _data; - NSMutableArray* _arguments; - NSMutableArray* _files; + NSMutableArray* _arguments; + NSMutableArray* _files; NSString* _controlName; NSString* _fileName; @@ -132,7 +132,7 @@ static NSData* _dashNewlineData = nil; } } -- (instancetype)initWithBoundary:(NSString* _Nonnull)boundary defaultControlName:(NSString* _Nullable)name arguments:(NSMutableArray* _Nonnull)arguments files:(NSMutableArray* _Nonnull)files { +- (instancetype)initWithBoundary:(NSString* _Nonnull)boundary defaultControlName:(NSString* _Nullable)name arguments:(NSMutableArray* _Nonnull)arguments files:(NSMutableArray* _Nonnull)files { NSData* data = boundary.length ? [[NSString stringWithFormat:@"--%@", boundary] dataUsingEncoding:NSASCIIStringEncoding] : nil; if (data == nil) { GWS_DNOT_REACHED(); @@ -312,8 +312,8 @@ static NSData* _dashNewlineData = nil; @end @interface GCDWebServerMultiPartFormRequest () -@property(nonatomic) NSMutableArray* arguments; -@property(nonatomic) NSMutableArray* files; +@property(nonatomic) NSMutableArray* arguments; +@property(nonatomic) NSMutableArray* files; @end @implementation GCDWebServerMultiPartFormRequest { @@ -324,7 +324,7 @@ static NSData* _dashNewlineData = nil; return @"multipart/form-data"; } -- (instancetype)initWithMethod:(NSString*)method url:(NSURL*)url headers:(NSDictionary*)headers path:(NSString*)path query:(NSDictionary*)query { +- (instancetype)initWithMethod:(NSString*)method url:(NSURL*)url headers:(NSDictionary*)headers path:(NSString*)path query:(NSDictionary*)query { if ((self = [super initWithMethod:method url:url headers:headers path:path query:query])) { _arguments = [[NSMutableArray alloc] init]; _files = [[NSMutableArray alloc] init]; @@ -337,7 +337,7 @@ static NSData* _dashNewlineData = nil; _parser = [[GCDWebServerMIMEStreamParser alloc] initWithBoundary:boundary defaultControlName:nil arguments:_arguments files:_files]; if (_parser == nil) { if (error) { - *error = [NSError errorWithDomain:kGCDWebServerErrorDomain code:-1 userInfo:@{ NSLocalizedDescriptionKey : @"Failed starting to parse multipart form data" }]; + *error = [NSError errorWithDomain:kGCDWebServerErrorDomain code:-1 userInfo:@{NSLocalizedDescriptionKey : @"Failed starting to parse multipart form data"}]; } return NO; } @@ -347,7 +347,7 @@ static NSData* _dashNewlineData = nil; - (BOOL)writeData:(NSData*)data error:(NSError**)error { if (![_parser appendBytes:data.bytes length:data.length]) { if (error) { - *error = [NSError errorWithDomain:kGCDWebServerErrorDomain code:-1 userInfo:@{ NSLocalizedDescriptionKey : @"Failed continuing to parse multipart form data" }]; + *error = [NSError errorWithDomain:kGCDWebServerErrorDomain code:-1 userInfo:@{NSLocalizedDescriptionKey : @"Failed continuing to parse multipart form data"}]; } return NO; } @@ -359,7 +359,7 @@ static NSData* _dashNewlineData = nil; _parser = nil; if (!atEnd) { if (error) { - *error = [NSError errorWithDomain:kGCDWebServerErrorDomain code:-1 userInfo:@{ NSLocalizedDescriptionKey : @"Failed finishing to parse multipart form data" }]; + *error = [NSError errorWithDomain:kGCDWebServerErrorDomain code:-1 userInfo:@{NSLocalizedDescriptionKey : @"Failed finishing to parse multipart form data"}]; } return NO; } diff --git a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.h b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.h index fcf177e..c0168b7 100644 --- a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.h +++ b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -42,7 +42,7 @@ NS_ASSUME_NONNULL_BEGIN * The text encoding used to interpret the data is extracted from the * "Content-Type" header or defaults to UTF-8. */ -@property(nonatomic, readonly) NSDictionary* arguments; +@property(nonatomic, readonly) NSDictionary* arguments; /** * Returns the MIME type for URL encoded forms diff --git a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.m b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.m index 7e0137f..d4d89e4 100644 --- a/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.m +++ b/Pods/GCDWebServer/GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerDataResponse.h b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerDataResponse.h index 783f596..e5121c3 100644 --- a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerDataResponse.h +++ b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerDataResponse.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -64,7 +64,7 @@ NS_ASSUME_NONNULL_BEGIN * Creates a data response from an HTML template encoded using UTF-8. * See -initWithHTMLTemplate:variables: for details. */ -+ (nullable instancetype)responseWithHTMLTemplate:(NSString*)path variables:(NSDictionary*)variables; ++ (nullable instancetype)responseWithHTMLTemplate:(NSString*)path variables:(NSDictionary*)variables; /** * Creates a data response from a serialized JSON object and the default @@ -94,7 +94,7 @@ NS_ASSUME_NONNULL_BEGIN * All occurences of "%variable%" within the HTML template are replaced with * their corresponding values. */ -- (nullable instancetype)initWithHTMLTemplate:(NSString*)path variables:(NSDictionary*)variables; +- (nullable instancetype)initWithHTMLTemplate:(NSString*)path variables:(NSDictionary*)variables; /** * Initializes a data response from a serialized JSON object and the default diff --git a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerDataResponse.m b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerDataResponse.m index b496847..2ea2ce9 100644 --- a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerDataResponse.m +++ b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerDataResponse.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -39,7 +39,7 @@ @dynamic contentType; + (instancetype)responseWithData:(NSData*)data contentType:(NSString*)type { - return [[[self class] alloc] initWithData:data contentType:type]; + return [(GCDWebServerDataResponse*)[[self class] alloc] initWithData:data contentType:type]; } - (instancetype)initWithData:(NSData*)data contentType:(NSString*)type { @@ -75,23 +75,23 @@ @implementation GCDWebServerDataResponse (Extensions) + (instancetype)responseWithText:(NSString*)text { - return [[self alloc] initWithText:text]; + return [(GCDWebServerDataResponse*)[self alloc] initWithText:text]; } + (instancetype)responseWithHTML:(NSString*)html { - return [[self alloc] initWithHTML:html]; + return [(GCDWebServerDataResponse*)[self alloc] initWithHTML:html]; } -+ (instancetype)responseWithHTMLTemplate:(NSString*)path variables:(NSDictionary*)variables { - return [[self alloc] initWithHTMLTemplate:path variables:variables]; ++ (instancetype)responseWithHTMLTemplate:(NSString*)path variables:(NSDictionary*)variables { + return [(GCDWebServerDataResponse*)[self alloc] initWithHTMLTemplate:path variables:variables]; } + (instancetype)responseWithJSONObject:(id)object { - return [[self alloc] initWithJSONObject:object]; + return [(GCDWebServerDataResponse*)[self alloc] initWithJSONObject:object]; } + (instancetype)responseWithJSONObject:(id)object contentType:(NSString*)type { - return [[self alloc] initWithJSONObject:object contentType:type]; + return [(GCDWebServerDataResponse*)[self alloc] initWithJSONObject:object contentType:type]; } - (instancetype)initWithText:(NSString*)text { @@ -112,7 +112,7 @@ return [self initWithData:data contentType:@"text/html; charset=utf-8"]; } -- (instancetype)initWithHTMLTemplate:(NSString*)path variables:(NSDictionary*)variables { +- (instancetype)initWithHTMLTemplate:(NSString*)path variables:(NSDictionary*)variables { NSMutableString* html = [[NSMutableString alloc] initWithContentsOfFile:path encoding:NSUTF8StringEncoding error:NULL]; [variables enumerateKeysAndObjectsUsingBlock:^(NSString* key, NSString* value, BOOL* stop) { [html replaceOccurrencesOfString:[NSString stringWithFormat:@"%%%@%%", key] withString:value options:0 range:NSMakeRange(0, html.length)]; diff --git a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerErrorResponse.h b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerErrorResponse.h index 92c834c..7e10d5b 100644 --- a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerErrorResponse.h +++ b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerErrorResponse.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerErrorResponse.m b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerErrorResponse.m index f1cd202..ab3788f 100644 --- a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerErrorResponse.m +++ b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerErrorResponse.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -37,7 +37,7 @@ GWS_DCHECK(((NSInteger)errorCode >= 400) && ((NSInteger)errorCode < 500)); va_list arguments; va_start(arguments, format); - GCDWebServerErrorResponse* response = [[self alloc] initWithStatusCode:errorCode underlyingError:nil messageFormat:format arguments:arguments]; + GCDWebServerErrorResponse* response = [(GCDWebServerErrorResponse*)[self alloc] initWithStatusCode:errorCode underlyingError:nil messageFormat:format arguments:arguments]; va_end(arguments); return response; } @@ -46,7 +46,7 @@ GWS_DCHECK(((NSInteger)errorCode >= 500) && ((NSInteger)errorCode < 600)); va_list arguments; va_start(arguments, format); - GCDWebServerErrorResponse* response = [[self alloc] initWithStatusCode:errorCode underlyingError:nil messageFormat:format arguments:arguments]; + GCDWebServerErrorResponse* response = [(GCDWebServerErrorResponse*)[self alloc] initWithStatusCode:errorCode underlyingError:nil messageFormat:format arguments:arguments]; va_end(arguments); return response; } @@ -55,7 +55,7 @@ GWS_DCHECK(((NSInteger)errorCode >= 400) && ((NSInteger)errorCode < 500)); va_list arguments; va_start(arguments, format); - GCDWebServerErrorResponse* response = [[self alloc] initWithStatusCode:errorCode underlyingError:underlyingError messageFormat:format arguments:arguments]; + GCDWebServerErrorResponse* response = [(GCDWebServerErrorResponse*)[self alloc] initWithStatusCode:errorCode underlyingError:underlyingError messageFormat:format arguments:arguments]; va_end(arguments); return response; } @@ -64,7 +64,7 @@ GWS_DCHECK(((NSInteger)errorCode >= 500) && ((NSInteger)errorCode < 600)); va_list arguments; va_start(arguments, format); - GCDWebServerErrorResponse* response = [[self alloc] initWithStatusCode:errorCode underlyingError:underlyingError messageFormat:format arguments:arguments]; + GCDWebServerErrorResponse* response = [(GCDWebServerErrorResponse*)[self alloc] initWithStatusCode:errorCode underlyingError:underlyingError messageFormat:format arguments:arguments]; va_end(arguments); return response; } diff --git a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerFileResponse.h b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerFileResponse.h index 9403835..78931bc 100644 --- a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerFileResponse.h +++ b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerFileResponse.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -101,7 +101,7 @@ NS_ASSUME_NONNULL_BEGIN * file extensions without the period, and the values must be the corresponding * MIME types. */ -- (nullable instancetype)initWithFile:(NSString*)path byteRange:(NSRange)range isAttachment:(BOOL)attachment mimeTypeOverrides:(nullable NSDictionary*)overrides; +- (nullable instancetype)initWithFile:(NSString*)path byteRange:(NSRange)range isAttachment:(BOOL)attachment mimeTypeOverrides:(nullable NSDictionary*)overrides; @end diff --git a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerFileResponse.m b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerFileResponse.m index bd07518..7823306 100644 --- a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerFileResponse.m +++ b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerFileResponse.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -45,19 +45,19 @@ @dynamic contentType, lastModifiedDate, eTag; + (instancetype)responseWithFile:(NSString*)path { - return [[[self class] alloc] initWithFile:path]; + return [(GCDWebServerFileResponse*)[[self class] alloc] initWithFile:path]; } + (instancetype)responseWithFile:(NSString*)path isAttachment:(BOOL)attachment { - return [[[self class] alloc] initWithFile:path isAttachment:attachment]; + return [(GCDWebServerFileResponse*)[[self class] alloc] initWithFile:path isAttachment:attachment]; } + (instancetype)responseWithFile:(NSString*)path byteRange:(NSRange)range { - return [[[self class] alloc] initWithFile:path byteRange:range]; + return [(GCDWebServerFileResponse*)[[self class] alloc] initWithFile:path byteRange:range]; } + (instancetype)responseWithFile:(NSString*)path byteRange:(NSRange)range isAttachment:(BOOL)attachment { - return [[[self class] alloc] initWithFile:path byteRange:range isAttachment:attachment mimeTypeOverrides:nil]; + return [(GCDWebServerFileResponse*)[[self class] alloc] initWithFile:path byteRange:range isAttachment:attachment mimeTypeOverrides:nil]; } - (instancetype)initWithFile:(NSString*)path { @@ -76,7 +76,7 @@ static inline NSDate* _NSDateFromTimeSpec(const struct timespec* t) { return [NSDate dateWithTimeIntervalSince1970:((NSTimeInterval)t->tv_sec + (NSTimeInterval)t->tv_nsec / 1000000000.0)]; } -- (instancetype)initWithFile:(NSString*)path byteRange:(NSRange)range isAttachment:(BOOL)attachment mimeTypeOverrides:(NSDictionary*)overrides { +- (instancetype)initWithFile:(NSString*)path byteRange:(NSRange)range isAttachment:(BOOL)attachment mimeTypeOverrides:(NSDictionary*)overrides { struct stat info; if (lstat([path fileSystemRepresentation], &info) || !(info.st_mode & S_IFREG)) { GWS_DNOT_REACHED(); diff --git a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerStreamedResponse.h b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerStreamedResponse.h index bb48e66..211f630 100644 --- a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerStreamedResponse.h +++ b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerStreamedResponse.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerStreamedResponse.m b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerStreamedResponse.m index 9387263..c05e91b 100644 --- a/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerStreamedResponse.m +++ b/Pods/GCDWebServer/GCDWebServer/Responses/GCDWebServerStreamedResponse.m @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015, Pierre-Olivier Latour + Copyright (c) 2012-2019, Pierre-Olivier Latour All rights reserved. Redistribution and use in source and binary forms, with or without @@ -38,21 +38,19 @@ @dynamic contentType; + (instancetype)responseWithContentType:(NSString*)type streamBlock:(GCDWebServerStreamBlock)block { - return [[[self class] alloc] initWithContentType:type streamBlock:block]; + return [(GCDWebServerStreamedResponse*)[[self class] alloc] initWithContentType:type streamBlock:block]; } + (instancetype)responseWithContentType:(NSString*)type asyncStreamBlock:(GCDWebServerAsyncStreamBlock)block { - return [[[self class] alloc] initWithContentType:type asyncStreamBlock:block]; + return [(GCDWebServerStreamedResponse*)[[self class] alloc] initWithContentType:type asyncStreamBlock:block]; } - (instancetype)initWithContentType:(NSString*)type streamBlock:(GCDWebServerStreamBlock)block { return [self initWithContentType:type asyncStreamBlock:^(GCDWebServerBodyReaderCompletionBlock completionBlock) { - NSError* error = nil; NSData* data = block(&error); completionBlock(data, error); - }]; } diff --git a/Pods/GCDWebServer/README.md b/Pods/GCDWebServer/README.md index b22211a..4cbaccf 100644 --- a/Pods/GCDWebServer/README.md +++ b/Pods/GCDWebServer/README.md @@ -6,7 +6,7 @@ Overview [![Platform](http://cocoapod-badges.herokuapp.com/p/GCDWebServer/badge.png)](https://github.com/swisspol/GCDWebServer) [![License](http://img.shields.io/cocoapods/l/GCDWebServer.svg)](LICENSE) -GCDWebServer is a modern and lightweight GCD based HTTP 1.1 server designed to be embedded in OS X & iOS apps. It was written from scratch with the following goals in mind: +GCDWebServer is a modern and lightweight GCD based HTTP 1.1 server designed to be embedded in iOS, macOS & tvOS apps. It was written from scratch with the following goals in mind: * Elegant and easy to use architecture with only 4 core classes: server, connection, request and response (see "Understanding GCDWebServer's Architecture" below) * Well designed API with fully documented headers for easy integration and customization * Entirely built with an event-driven design using [Grand Central Dispatch](http://en.wikipedia.org/wiki/Grand_Central_Dispatch) for best performance and concurrency @@ -28,23 +28,22 @@ Extra built-in features: Included extensions: * [GCDWebUploader](GCDWebUploader/GCDWebUploader.h): subclass of ```GCDWebServer``` that implements an interface for uploading and downloading files using a web browser -* [GCDWebDAVServer](GCDWebDAVServer/GCDWebDAVServer.h): subclass of ```GCDWebServer``` that implements a class 1 [WebDAV](https://en.wikipedia.org/wiki/WebDAV) server (with partial class 2 support for OS X Finder) +* [GCDWebDAVServer](GCDWebDAVServer/GCDWebDAVServer.h): subclass of ```GCDWebServer``` that implements a class 1 [WebDAV](https://en.wikipedia.org/wiki/WebDAV) server (with partial class 2 support for macOS Finder) What's not supported (but not really required from an embedded HTTP server): * Keep-alive connections * HTTPS Requirements: -* OS X 10.7 or later (x86_64) +* macOS 10.7 or later (x86_64) * iOS 8.0 or later (armv7, armv7s or arm64) -* ARC memory management only (if you need MRC support use GCDWebServer 3.1 and earlier) +* tvOS 9.0 or later (arm64) +* ARC memory management only (if you need MRC support use GCDWebServer 3.1 or earlier) Getting Started =============== -Download or check out the [latest release](https://github.com/swisspol/GCDWebServer/releases) of GCDWebServer then add the entire "GCDWebServer" subfolder to your Xcode project. If you intend to use one of the extensions like GCDWebDAVServer or GCDWebUploader, add these subfolders as well. - -If you add the files directly then (1) link to `libz` (via Target > Build Phases > Link Binary With Libraries) and (2) add `$(SDKROOT)/usr/include/libxml2` to your header search paths (via Target > Build Settings > HEADER_SEARCH_PATHS). +Download or check out the [latest release](https://github.com/swisspol/GCDWebServer/releases) of GCDWebServer then add the entire "GCDWebServer" subfolder to your Xcode project. If you intend to use one of the extensions like GCDWebDAVServer or GCDWebUploader, add these subfolders as well. Finally link to `libz` (via Target > Build Phases > Link Binary With Libraries) and add `$(SDKROOT)/usr/include/libxml2` to your header search paths (via Target > Build Settings > HEADER_SEARCH_PATHS). Alternatively, you can install GCDWebServer using [CocoaPods](http://cocoapods.org/) by simply adding this line to your Podfile: ``` @@ -82,7 +81,7 @@ These code snippets show how to implement a custom HTTP server that runs on port **IMPORTANT:** If not using CocoaPods, be sure to add the `libz` shared system library to the Xcode target for your app. -**OS X version (command line tool):** +**macOS version (command line tool):** ```objectivec #import "GCDWebServer.h" #import "GCDWebServerDataResponse.h" @@ -148,7 +147,7 @@ int main(int argc, const char* argv[]) { @end ``` -**OS X Swift version (command line tool):** +**macOS Swift version (command line tool):** ***webServer.swift*** ```swift @@ -159,12 +158,12 @@ func initWebServer() { let webServer = GCDWebServer() - webServer.addDefaultHandlerForMethod("GET", requestClass: GCDWebServerRequest.self, processBlock: {request in - return GCDWebServerDataResponse(HTML:"

Hello World

") + webServer.addDefaultHandler(forMethod: "GET", request: GCDWebServerRequest.self, processBlock: {request in + return GCDWebServerDataResponse(html:"

Hello World

") + + }) - }) - - webServer.runWithPort(8080, bonjourName: "GCD Web Server") + webServer.start(withPort: 8080, bonjourName: "GCD Web Server") print("Visit \(webServer.serverURL) in your web browser") } @@ -209,7 +208,7 @@ WebDAV Server in iOS Apps GCDWebDAVServer is a subclass of ```GCDWebServer``` that provides a class 1 compliant [WebDAV](https://en.wikipedia.org/wiki/WebDAV) server. This lets users upload, download, delete files and create directories from a directory inside your iOS app's sandbox using any WebDAV client like [Transmit](https://panic.com/transmit/) (Mac), [ForkLift](http://binarynights.com/forklift/) (Mac) or [CyberDuck](http://cyberduck.io/) (Mac / Windows). -GCDWebDAVServer should also work with the [OS X Finder](http://support.apple.com/kb/PH13859) as it is partially class 2 compliant (but only when the client is the OS X WebDAV implementation). +GCDWebDAVServer should also work with the [macOS Finder](http://support.apple.com/kb/PH13859) as it is partially class 2 compliant (but only when the client is the macOS WebDAV implementation). Simply instantiate and run a ```GCDWebDAVServer``` instance then connect to ```http://{YOUR-IOS-DEVICE-IP-ADDRESS}/``` using a WebDAV client: @@ -239,7 +238,7 @@ Serving a Static Website GCDWebServer includes a built-in handler that can recursively serve a directory (it also lets you control how the ["Cache-Control"](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) header should be set): -**OS X version (command line tool):** +**macOS version (command line tool):** ```objectivec #import "GCDWebServer.h" @@ -350,8 +349,8 @@ GCDWebServer & Background Mode for iOS Apps When doing networking operations in iOS apps, you must handle carefully [what happens when iOS puts the app in the background](https://developer.apple.com/library/ios/technotes/tn2277/_index.html). Typically you must stop any network servers while the app is in the background and restart them when the app comes back to the foreground. This can become quite complex considering servers might have ongoing connections when they need to be stopped. Fortunately, GCDWebServer does all of this automatically for you: -- GCDWebServer begins a [background task](https://developer.apple.com/library/ios/documentation/iphone/conceptual/iphoneosprogrammingguide/ManagingYourApplicationsFlow/ManagingYourApplicationsFlow.html) whenever the first HTTP connection is opened and ends it only when the last one is closed. This prevents iOS from suspending the app after it goes in the background, which would immediately kill HTTP connections to the client. - - While the app is in the background, as long as new HTTP connections keep being initiated, the background task will continue to exist and iOS will not suspend the app (unless under sudden and unexpected memory pressure). +- GCDWebServer begins a [background task](https://developer.apple.com/library/archive/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html) whenever the first HTTP connection is opened and ends it only when the last one is closed. This prevents iOS from suspending the app after it goes in the background, which would immediately kill HTTP connections to the client. + - While the app is in the background, as long as new HTTP connections keep being initiated, the background task will continue to exist and iOS will not suspend the app **for up to 10 minutes** (unless under sudden and unexpected memory pressure). - If the app is still in the background when the last HTTP connection is closed, GCDWebServer will suspend itself and stop accepting new connections as if you had called ```-stop``` (this behavior can be disabled with the ```GCDWebServerOption_AutomaticallySuspendInBackground``` option). - If the app goes in the background while no HTTP connections are opened, GCDWebServer will immediately suspend itself and stop accepting new connections as if you had called ```-stop``` (this behavior can be disabled with the ```GCDWebServerOption_AutomaticallySuspendInBackground``` option). - If the app comes back to the foreground and GCDWebServer had been suspended, it will automatically resume itself and start accepting again new HTTP connections as if you had called ```-start```. diff --git a/Pods/MASShortcut/Framework/MASShortcut.modulemap b/Pods/MASShortcut/Framework/MASShortcut.modulemap deleted file mode 100644 index e6307a1..0000000 --- a/Pods/MASShortcut/Framework/MASShortcut.modulemap +++ /dev/null @@ -1,6 +0,0 @@ -framework module MASShortcut { - umbrella header "Shortcut.h" - - export * - module * { export * } -} diff --git a/Pods/MASShortcut/Framework/MASKeyCodes.h b/Pods/MASShortcut/Framework/Model/MASKeyCodes.h similarity index 96% rename from Pods/MASShortcut/Framework/MASKeyCodes.h rename to Pods/MASShortcut/Framework/Model/MASKeyCodes.h index b89cd3c..4c000b1 100644 --- a/Pods/MASShortcut/Framework/MASKeyCodes.h +++ b/Pods/MASShortcut/Framework/Model/MASKeyCodes.h @@ -3,7 +3,7 @@ #import "MASKeyMasks.h" // These glyphs are missed in Carbon.h -enum { +typedef NS_ENUM(unsigned short, kMASShortcutGlyph) { kMASShortcutGlyphEject = 0x23CF, kMASShortcutGlyphClear = 0x2715, kMASShortcutGlyphDeleteLeft = 0x232B, diff --git a/Pods/MASShortcut/Framework/MASKeyMasks.h b/Pods/MASShortcut/Framework/Model/MASKeyMasks.h similarity index 100% rename from Pods/MASShortcut/Framework/MASKeyMasks.h rename to Pods/MASShortcut/Framework/Model/MASKeyMasks.h diff --git a/Pods/MASShortcut/Framework/MASShortcut.h b/Pods/MASShortcut/Framework/Model/MASShortcut.h similarity index 88% rename from Pods/MASShortcut/Framework/MASShortcut.h rename to Pods/MASShortcut/Framework/Model/MASShortcut.h index 8f420e4..1b7d76b 100644 --- a/Pods/MASShortcut/Framework/MASShortcut.h +++ b/Pods/MASShortcut/Framework/Model/MASShortcut.h @@ -16,14 +16,14 @@ Hardware independent, same as in `NSEvent`. See `Events.h` in the HIToolbox framework for a complete list, or Command-click this symbol: `kVK_ANSI_A`. */ -@property (nonatomic, readonly) NSUInteger keyCode; +@property (nonatomic, readonly) NSInteger keyCode; /** Cocoa keyboard modifier flags. Same as in `NSEvent`: `NSCommandKeyMask`, `NSAlternateKeyMask`, etc. */ -@property (nonatomic, readonly) NSUInteger modifierFlags; +@property (nonatomic, readonly) NSEventModifierFlags modifierFlags; /** Same as `keyCode`, just a different type. @@ -68,8 +68,8 @@ */ @property (nonatomic, readonly) NSString *modifierFlagsString; -- (instancetype)initWithKeyCode:(NSUInteger)code modifierFlags:(NSUInteger)flags; -+ (instancetype)shortcutWithKeyCode:(NSUInteger)code modifierFlags:(NSUInteger)flags; +- (instancetype)initWithKeyCode:(NSInteger)code modifierFlags:(NSEventModifierFlags)flags; ++ (instancetype)shortcutWithKeyCode:(NSInteger)code modifierFlags:(NSEventModifierFlags)flags; /** Creates a new shortcut from an `NSEvent` object. diff --git a/Pods/MASShortcut/Framework/MASShortcut.m b/Pods/MASShortcut/Framework/Model/MASShortcut.m similarity index 79% rename from Pods/MASShortcut/Framework/MASShortcut.m rename to Pods/MASShortcut/Framework/Model/MASShortcut.m index 511f2b2..1a029a9 100644 --- a/Pods/MASShortcut/Framework/MASShortcut.m +++ b/Pods/MASShortcut/Framework/Model/MASShortcut.m @@ -8,7 +8,7 @@ static NSString *const MASShortcutModifierFlags = @"ModifierFlags"; #pragma mark Initialization -- (instancetype)initWithKeyCode:(NSUInteger)code modifierFlags:(NSUInteger)flags +- (instancetype)initWithKeyCode:(NSInteger)code modifierFlags:(NSEventModifierFlags)flags { self = [super init]; if (self) { @@ -18,7 +18,7 @@ static NSString *const MASShortcutModifierFlags = @"ModifierFlags"; return self; } -+ (instancetype)shortcutWithKeyCode:(NSUInteger)code modifierFlags:(NSUInteger)flags ++ (instancetype)shortcutWithKeyCode:(NSInteger)code modifierFlags:(NSEventModifierFlags)flags { return [[self alloc] initWithKeyCode:code modifierFlags:flags]; } @@ -48,33 +48,34 @@ static NSString *const MASShortcutModifierFlags = @"ModifierFlags"; - (NSString *)keyCodeStringForKeyEquivalent { NSString *keyCodeString = self.keyCodeString; - if (keyCodeString.length > 1) { - switch (self.keyCode) { - case kVK_F1: return NSStringFromMASKeyCode(0xF704); - case kVK_F2: return NSStringFromMASKeyCode(0xF705); - case kVK_F3: return NSStringFromMASKeyCode(0xF706); - case kVK_F4: return NSStringFromMASKeyCode(0xF707); - case kVK_F5: return NSStringFromMASKeyCode(0xF708); - case kVK_F6: return NSStringFromMASKeyCode(0xF709); - case kVK_F7: return NSStringFromMASKeyCode(0xF70a); - case kVK_F8: return NSStringFromMASKeyCode(0xF70b); - case kVK_F9: return NSStringFromMASKeyCode(0xF70c); - case kVK_F10: return NSStringFromMASKeyCode(0xF70d); - case kVK_F11: return NSStringFromMASKeyCode(0xF70e); - case kVK_F12: return NSStringFromMASKeyCode(0xF70f); - // From this point down I am guessing F13 etc come sequentially, I don't have a keyboard to test. - case kVK_F13: return NSStringFromMASKeyCode(0xF710); - case kVK_F14: return NSStringFromMASKeyCode(0xF711); - case kVK_F15: return NSStringFromMASKeyCode(0xF712); - case kVK_F16: return NSStringFromMASKeyCode(0xF713); - case kVK_F17: return NSStringFromMASKeyCode(0xF714); - case kVK_F18: return NSStringFromMASKeyCode(0xF715); - case kVK_F19: return NSStringFromMASKeyCode(0xF716); - case kVK_Space: return NSStringFromMASKeyCode(0x20); - default: return @""; - } + + if (keyCodeString.length <= 1) { + return keyCodeString.lowercaseString; + } + + switch (self.keyCode) { + case kVK_F1: return NSStringFromMASKeyCode(NSF1FunctionKey); + case kVK_F2: return NSStringFromMASKeyCode(NSF2FunctionKey); + case kVK_F3: return NSStringFromMASKeyCode(NSF3FunctionKey); + case kVK_F4: return NSStringFromMASKeyCode(NSF4FunctionKey); + case kVK_F5: return NSStringFromMASKeyCode(NSF5FunctionKey); + case kVK_F6: return NSStringFromMASKeyCode(NSF6FunctionKey); + case kVK_F7: return NSStringFromMASKeyCode(NSF7FunctionKey); + case kVK_F8: return NSStringFromMASKeyCode(NSF8FunctionKey); + case kVK_F9: return NSStringFromMASKeyCode(NSF9FunctionKey); + case kVK_F10: return NSStringFromMASKeyCode(NSF10FunctionKey); + case kVK_F11: return NSStringFromMASKeyCode(NSF11FunctionKey); + case kVK_F12: return NSStringFromMASKeyCode(NSF12FunctionKey); + case kVK_F13: return NSStringFromMASKeyCode(NSF13FunctionKey); + case kVK_F14: return NSStringFromMASKeyCode(NSF14FunctionKey); + case kVK_F15: return NSStringFromMASKeyCode(NSF15FunctionKey); + case kVK_F16: return NSStringFromMASKeyCode(NSF16FunctionKey); + case kVK_F17: return NSStringFromMASKeyCode(NSF17FunctionKey); + case kVK_F18: return NSStringFromMASKeyCode(NSF18FunctionKey); + case kVK_F19: return NSStringFromMASKeyCode(NSF19FunctionKey); + case kVK_Space: return NSStringFromMASKeyCode(0x20); + default: return @""; } - return keyCodeString.lowercaseString; } - (NSString *)keyCodeString @@ -132,7 +133,7 @@ static NSString *const MASShortcutModifierFlags = @"ModifierFlags"; case kVK_ANSI_KeypadClear: return NSStringFromMASKeyCode(kMASShortcutGlyphPadClear); case kVK_ANSI_KeypadDivide: return @"/"; case kVK_ANSI_KeypadEnter: return NSStringFromMASKeyCode(kMASShortcutGlyphReturn); - case kVK_ANSI_KeypadMinus: return @"–"; + case kVK_ANSI_KeypadMinus: return @"-"; case kVK_ANSI_KeypadEquals: return @"="; // Hardcode @@ -210,7 +211,7 @@ static NSString *const MASShortcutModifierFlags = @"ModifierFlags"; - (void)encodeWithCoder:(NSCoder *)coder { - [coder encodeInteger:(self.keyCode != NSNotFound ? (NSInteger)self.keyCode : - 1) forKey:MASShortcutKeyCode]; + [coder encodeInteger:(self.keyCode != NSNotFound ? self.keyCode : - 1) forKey:MASShortcutKeyCode]; [coder encodeInteger:(NSInteger)self.modifierFlags forKey:MASShortcutModifierFlags]; } @@ -219,7 +220,7 @@ static NSString *const MASShortcutModifierFlags = @"ModifierFlags"; self = [super init]; if (self) { NSInteger code = [decoder decodeIntegerForKey:MASShortcutKeyCode]; - _keyCode = (code < 0 ? NSNotFound : (NSUInteger)code); + _keyCode = (code < 0) ? NSNotFound : code; _modifierFlags = [decoder decodeIntegerForKey:MASShortcutModifierFlags]; } return self; diff --git a/Pods/MASShortcut/Framework/MASShortcutValidator.h b/Pods/MASShortcut/Framework/Model/MASShortcutValidator.h similarity index 100% rename from Pods/MASShortcut/Framework/MASShortcutValidator.h rename to Pods/MASShortcut/Framework/Model/MASShortcutValidator.h diff --git a/Pods/MASShortcut/Framework/MASShortcutValidator.m b/Pods/MASShortcut/Framework/Model/MASShortcutValidator.m similarity index 95% rename from Pods/MASShortcut/Framework/MASShortcutValidator.m rename to Pods/MASShortcut/Framework/Model/MASShortcutValidator.m index b14815c..01f21b7 100644 --- a/Pods/MASShortcut/Framework/MASShortcutValidator.m +++ b/Pods/MASShortcut/Framework/Model/MASShortcutValidator.m @@ -15,8 +15,8 @@ - (BOOL) isShortcutValid: (MASShortcut*) shortcut { - NSUInteger keyCode = [shortcut keyCode]; - NSUInteger modifiers = [shortcut modifierFlags]; + NSInteger keyCode = [shortcut keyCode]; + NSEventModifierFlags modifiers = [shortcut modifierFlags]; // Allow any function key with any combination of modifiers BOOL includesFunctionKey = ((keyCode == kVK_F1) || (keyCode == kVK_F2) || (keyCode == kVK_F3) || (keyCode == kVK_F4) || @@ -53,7 +53,7 @@ - (BOOL) isShortcut: (MASShortcut*) shortcut alreadyTakenInMenu: (NSMenu*) menu explanation: (NSString**) explanation { NSString *keyEquivalent = [shortcut keyCodeStringForKeyEquivalent]; - NSUInteger flags = [shortcut modifierFlags]; + NSEventModifierFlags flags = [shortcut modifierFlags]; for (NSMenuItem *menuItem in menu.itemArray) { if (menuItem.hasSubmenu && [self isShortcut:shortcut alreadyTakenInMenu:[menuItem submenu] explanation:explanation]) return YES; @@ -91,7 +91,7 @@ CFNumberRef flags = CFDictionaryGetValue(hotKeyInfo, kHISymbolicHotKeyModifiers); CFNumberRef enabled = CFDictionaryGetValue(hotKeyInfo, kHISymbolicHotKeyEnabled); - if (([(__bridge NSNumber *)code unsignedIntegerValue] == [shortcut keyCode]) && + if (([(__bridge NSNumber *)code integerValue] == [shortcut keyCode]) && ([(__bridge NSNumber *)flags unsignedIntegerValue] == [shortcut carbonFlags]) && ([(__bridge NSNumber *)enabled boolValue])) { diff --git a/Pods/MASShortcut/Framework/MASHotKey.h b/Pods/MASShortcut/Framework/Monitoring/MASHotKey.h similarity index 100% rename from Pods/MASShortcut/Framework/MASHotKey.h rename to Pods/MASShortcut/Framework/Monitoring/MASHotKey.h diff --git a/Pods/MASShortcut/Framework/MASHotKey.m b/Pods/MASShortcut/Framework/Monitoring/MASHotKey.m similarity index 100% rename from Pods/MASShortcut/Framework/MASHotKey.m rename to Pods/MASShortcut/Framework/Monitoring/MASHotKey.m diff --git a/Pods/MASShortcut/Framework/MASShortcutMonitor.h b/Pods/MASShortcut/Framework/Monitoring/MASShortcutMonitor.h similarity index 100% rename from Pods/MASShortcut/Framework/MASShortcutMonitor.h rename to Pods/MASShortcut/Framework/Monitoring/MASShortcutMonitor.h diff --git a/Pods/MASShortcut/Framework/MASShortcutMonitor.m b/Pods/MASShortcut/Framework/Monitoring/MASShortcutMonitor.m similarity index 100% rename from Pods/MASShortcut/Framework/MASShortcutMonitor.m rename to Pods/MASShortcut/Framework/Monitoring/MASShortcutMonitor.m diff --git a/Pods/MASShortcut/Framework/MASLocalization.h b/Pods/MASShortcut/Framework/UI/MASLocalization.h similarity index 100% rename from Pods/MASShortcut/Framework/MASLocalization.h rename to Pods/MASShortcut/Framework/UI/MASLocalization.h diff --git a/Pods/MASShortcut/Framework/MASLocalization.m b/Pods/MASShortcut/Framework/UI/MASLocalization.m similarity index 100% rename from Pods/MASShortcut/Framework/MASLocalization.m rename to Pods/MASShortcut/Framework/UI/MASLocalization.m diff --git a/Pods/MASShortcut/Framework/MASShortcutView+Bindings.h b/Pods/MASShortcut/Framework/UI/MASShortcutView+Bindings.h similarity index 100% rename from Pods/MASShortcut/Framework/MASShortcutView+Bindings.h rename to Pods/MASShortcut/Framework/UI/MASShortcutView+Bindings.h diff --git a/Pods/MASShortcut/Framework/MASShortcutView+Bindings.m b/Pods/MASShortcut/Framework/UI/MASShortcutView+Bindings.m similarity index 100% rename from Pods/MASShortcut/Framework/MASShortcutView+Bindings.m rename to Pods/MASShortcut/Framework/UI/MASShortcutView+Bindings.m diff --git a/Pods/MASShortcut/Framework/MASShortcutView.h b/Pods/MASShortcut/Framework/UI/MASShortcutView.h similarity index 93% rename from Pods/MASShortcut/Framework/MASShortcutView.h rename to Pods/MASShortcut/Framework/UI/MASShortcutView.h index 656f4e4..75d4eb3 100644 --- a/Pods/MASShortcut/Framework/MASShortcutView.h +++ b/Pods/MASShortcut/Framework/UI/MASShortcutView.h @@ -2,12 +2,12 @@ extern NSString *const MASShortcutBinding; -typedef enum { +typedef NS_ENUM(NSInteger, MASShortcutViewStyle) { MASShortcutViewStyleDefault = 0, // Height = 19 px MASShortcutViewStyleTexturedRect, // Height = 25 px MASShortcutViewStyleRounded, // Height = 43 px MASShortcutViewStyleFlat -} MASShortcutViewStyle; +}; @interface MASShortcutView : NSView diff --git a/Pods/MASShortcut/Framework/MASShortcutView.m b/Pods/MASShortcut/Framework/UI/MASShortcutView.m similarity index 91% rename from Pods/MASShortcut/Framework/MASShortcutView.m rename to Pods/MASShortcut/Framework/UI/MASShortcutView.m index 8540e61..3a44df4 100644 --- a/Pods/MASShortcut/Framework/MASShortcutView.m +++ b/Pods/MASShortcut/Framework/UI/MASShortcutView.m @@ -24,7 +24,7 @@ static const CGFloat MASButtonFontSize = 11; NSInteger _shortcutToolTipTag; NSInteger _hintToolTipTag; NSTrackingArea *_hintArea; - BOOL _acceptsFirstResponder; + BOOL _acceptsFirstResponder; } #pragma mark - @@ -60,7 +60,7 @@ static const CGFloat MASButtonFontSize = 11; _shortcutValidator = [MASShortcutValidator sharedValidator]; _enabled = YES; _showsDeleteButton = YES; - _acceptsFirstResponder = NO; + _acceptsFirstResponder = NO; [self resetShortcutCellStyle]; } @@ -78,6 +78,7 @@ static const CGFloat MASButtonFontSize = 11; _enabled = flag; [self updateTrackingAreas]; self.recording = NO; + [self invalidateIntrinsicContentSize]; [self setNeedsDisplay:YES]; } } @@ -87,6 +88,7 @@ static const CGFloat MASButtonFontSize = 11; if (_style != newStyle) { _style = newStyle; [self resetShortcutCellStyle]; + [self invalidateIntrinsicContentSize]; [self setNeedsDisplay:YES]; } } @@ -135,6 +137,7 @@ static const CGFloat MASButtonFontSize = 11; [self resetToolTips]; [self activateEventMonitoring:_recording]; [self activateResignObserver:_recording]; + [self invalidateIntrinsicContentSize]; [self setNeedsDisplay:YES]; // Give VoiceOver users feedback on the result. Requires at least 10.9 to run. @@ -161,6 +164,7 @@ static const CGFloat MASButtonFontSize = 11; { _shortcutValue = shortcutValue; [self resetToolTips]; + [self invalidateIntrinsicContentSize]; [self setNeedsDisplay:YES]; [self propagateValue:shortcutValue forBinding:MASShortcutBinding]; @@ -172,9 +176,17 @@ static const CGFloat MASButtonFontSize = 11; - (void)setShortcutPlaceholder:(NSString *)shortcutPlaceholder { _shortcutPlaceholder = shortcutPlaceholder.copy; + [self invalidateIntrinsicContentSize]; [self setNeedsDisplay:YES]; } +#pragma mark - Appearance + +- (BOOL)allowsVibrancy +{ + return YES; +} + #pragma mark - Drawing - (BOOL)isFlipped @@ -254,6 +266,25 @@ static const CGFloat MASButtonFontSize = 11; } } + +- (NSSize)intrinsicContentSize +{ + NSSize cellSize = _shortcutCell.cellSize; + + // Use a "fake" value for width. Since determining the actual width requires information + // that is not determined until drawRect: is called, it doesn't seem feasible to properly + // calculate the intrinsic size without refactoring the code. That would give better results, + // however. + + // 120 is an arbitray number that seems to be wide enough for English localization. This + // may need to be adjusted for other locales/languages. + + // NOTE: Simply returning cellSize results in a display that is sometimes correct + // and sometimes not, and changes based on whether the mouse is hovering or not. + return NSMakeSize(120, cellSize.height); +} + + #pragma mark - Mouse handling - (void)getShortcutRect:(CGRect *)shortcutRectRef hintRect:(CGRect *)hintRectRef @@ -344,6 +375,7 @@ static const CGFloat MASButtonFontSize = 11; { if (_hinting != flag) { _hinting = flag; + [self invalidateIntrinsicContentSize]; [self setNeedsDisplay:YES]; } } @@ -364,10 +396,12 @@ void *kUserDataHint = &kUserDataHint; - (void)resetToolTips { if (_shortcutToolTipTag) { - [self removeToolTip:_shortcutToolTipTag], _shortcutToolTipTag = 0; + [self removeToolTip:_shortcutToolTipTag]; + _shortcutToolTipTag = 0; } if (_hintToolTipTag) { - [self removeToolTip:_hintToolTipTag], _hintToolTipTag = 0; + [self removeToolTip:_hintToolTipTag]; + _hintToolTipTag = 0; } if ((self.shortcutValue == nil) || self.recording || !self.enabled) return; @@ -386,7 +420,7 @@ void *kUserDataHint = &kUserDataHint; else if (data == kUserDataHint) { return MASLocalizedString(@"Delete shortcut", @"Tooltip for hint button near the non-empty shortcut"); } - return nil; + return @""; } #pragma mark - Event monitoring @@ -432,10 +466,10 @@ void *kUserDataHint = &kUserDataHint; else { // Verify possible shortcut if (shortcut.keyCodeString.length > 0) { - if ([_shortcutValidator isShortcutValid:shortcut]) { + if (!weakSelf.shortcutValidator || [weakSelf.shortcutValidator isShortcutValid:shortcut]) { // Verify that shortcut is not used NSString *explanation = nil; - if ([_shortcutValidator isShortcutAlreadyTakenBySystem:shortcut explanation:&explanation]) { + if ([weakSelf.shortcutValidator isShortcutAlreadyTakenBySystem:shortcut explanation:&explanation]) { // Prevent cancel of recording when Alert window is key [weakSelf activateResignObserver:NO]; [weakSelf activateEventMonitoring:NO]; @@ -545,11 +579,6 @@ void *kUserDataHint = &kUserDataHint; #pragma mark - Accessibility -- (BOOL)accessibilityIsIgnored -{ - return NO; -} - - (NSString *)accessibilityHelp { return MASLocalizedString(@"To record a new shortcut, click this button, and then type the" @@ -582,22 +611,24 @@ void *kUserDataHint = &kUserDataHint; - (BOOL)acceptsFirstResponder { - return _acceptsFirstResponder; + return _acceptsFirstResponder; } - (void)setAcceptsFirstResponder:(BOOL)value { - _acceptsFirstResponder = value; + _acceptsFirstResponder = value; } - (BOOL)becomeFirstResponder { + [self invalidateIntrinsicContentSize]; [self setNeedsDisplay:YES]; return [super becomeFirstResponder]; } - (BOOL)resignFirstResponder { + [self invalidateIntrinsicContentSize]; [self setNeedsDisplay:YES]; return [super resignFirstResponder]; } diff --git a/Pods/MASShortcut/Framework/MASDictionaryTransformer.h b/Pods/MASShortcut/Framework/User Defaults Storage/MASDictionaryTransformer.h similarity index 100% rename from Pods/MASShortcut/Framework/MASDictionaryTransformer.h rename to Pods/MASShortcut/Framework/User Defaults Storage/MASDictionaryTransformer.h diff --git a/Pods/MASShortcut/Framework/MASDictionaryTransformer.m b/Pods/MASShortcut/Framework/User Defaults Storage/MASDictionaryTransformer.m similarity index 100% rename from Pods/MASShortcut/Framework/MASDictionaryTransformer.m rename to Pods/MASShortcut/Framework/User Defaults Storage/MASDictionaryTransformer.m diff --git a/Pods/MASShortcut/Framework/MASShortcutBinder.h b/Pods/MASShortcut/Framework/User Defaults Storage/MASShortcutBinder.h similarity index 100% rename from Pods/MASShortcut/Framework/MASShortcutBinder.h rename to Pods/MASShortcut/Framework/User Defaults Storage/MASShortcutBinder.h diff --git a/Pods/MASShortcut/Framework/MASShortcutBinder.m b/Pods/MASShortcut/Framework/User Defaults Storage/MASShortcutBinder.m similarity index 100% rename from Pods/MASShortcut/Framework/MASShortcutBinder.m rename to Pods/MASShortcut/Framework/User Defaults Storage/MASShortcutBinder.m diff --git a/Pods/MASShortcut/README.md b/Pods/MASShortcut/README.md index dc83c1a..d10ba1a 100644 --- a/Pods/MASShortcut/README.md +++ b/Pods/MASShortcut/README.md @@ -17,7 +17,7 @@ Features: * Can be configured to be compatible with Shortcut Recorder * Can be installed both through CocoaPods and as a Git submodule * Mac App Store friendly -* Works on OS X 10.6 and up +* Works on OS X 10.10 and up * Hacking-friendly codebase covered with tests Partially done: diff --git a/Pods/MASShortcut/cs.lproj/Localizable.strings b/Pods/MASShortcut/Resources/cs.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/cs.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/cs.lproj/Localizable.strings diff --git a/Pods/MASShortcut/de.lproj/Localizable.strings b/Pods/MASShortcut/Resources/de.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/de.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/de.lproj/Localizable.strings diff --git a/Pods/MASShortcut/en.lproj/Localizable.strings b/Pods/MASShortcut/Resources/en.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/en.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/en.lproj/Localizable.strings diff --git a/Pods/MASShortcut/es.lproj/Localizable.strings b/Pods/MASShortcut/Resources/es.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/es.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/es.lproj/Localizable.strings diff --git a/Pods/MASShortcut/fr.lproj/Localizable.strings b/Pods/MASShortcut/Resources/fr.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/fr.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/fr.lproj/Localizable.strings diff --git a/Pods/MASShortcut/it.lproj/Localizable.strings b/Pods/MASShortcut/Resources/it.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/it.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/it.lproj/Localizable.strings diff --git a/Pods/MASShortcut/ja.lproj/Localizable.strings b/Pods/MASShortcut/Resources/ja.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/ja.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/ja.lproj/Localizable.strings diff --git a/Pods/MASShortcut/ko.lproj/Localizable.strings b/Pods/MASShortcut/Resources/ko.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/ko.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/ko.lproj/Localizable.strings diff --git a/Pods/MASShortcut/nl.lproj/Localizable.strings b/Pods/MASShortcut/Resources/nl.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/nl.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/nl.lproj/Localizable.strings diff --git a/Pods/MASShortcut/pl.lproj/Localizable.strings b/Pods/MASShortcut/Resources/pl.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/pl.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/pl.lproj/Localizable.strings diff --git a/Pods/MASShortcut/Resources/pt.lproj/Localizable.strings b/Pods/MASShortcut/Resources/pt.lproj/Localizable.strings new file mode 100644 index 0000000..0d4dfde --- /dev/null +++ b/Pods/MASShortcut/Resources/pt.lproj/Localizable.strings @@ -0,0 +1,47 @@ +/* Cancel action button in recording state */ +"Cancel" = "Cancelar"; + +/* Tooltip for non-empty shortcut button */ +"Click to record new shortcut" ="Clique para gravar o atalho"; + +/* Tooltip for hint button near the non-empty shortcut */ +"Delete shortcut" = "Apagar atalho"; + +/* VoiceOver title */ +"keyboard shortcut" = "atalho de teclado"; + +/* Alert button when shortcut is already used */ +"OK" = "OK"; + +/* Empty shortcut button in normal state */ +"Record Shortcut" = "Gravar Atalho"; + +/* VoiceOver: Shortcut cleared */ +"Shortcut cleared" = "Atalho limpo"; + +/* VoiceOver: Shortcut set */ +"Shortcut set" = "Atalho definido"; + +/* Shortcut glyph name for SPACE key */ +"Space" = "Espaço"; + +/* Title for alert when shortcut is already used */ +"The key combination %@ cannot be used" = "A combinação de teclas “%@” não pode ser usada"; + +/* Message for alert when shortcut is already used by the system */ +"This combination cannot be used because it is already used by a system-wide keyboard shortcut.\nIf you really want to use this key combination, most shortcuts can be changed in the Keyboard & Mouse panel in System Preferences." = "Esta combinação não pode ser usada porque ela já é usada por um atalho global do sistema.\nA maioria dos atalhos pode ser alterada no painel Teclado das Preferências do Sistema, caso realmente deseje usar esta combinação."; + +/* Message for alert when shortcut is already used */ +"This shortcut cannot be used because it is already used by the menu item ‘%@’." = "Este atalho não pode ser usado porque ele já é usado pelo item de menu “%@”."; + +/* VoiceOver shortcut help */ +"To record a new shortcut, click this button, and then type the new shortcut, or press delete to clear an existing shortcut." = "Para gravar um atalho novo, clique neste botão e digite o novo atalho ou pressione apagar para limpar um atalho existente."; + +/* Non-empty shortcut button in recording state */ +"Type New Shortcut" = "Digite o atalho"; + +/* Empty shortcut button in recording state */ +"Type Shortcut" = "Digite o atalho"; + +/* Cancel action button for non-empty shortcut in recording state */ +"Use Old Shortcut" = "Usar atalho antigo"; diff --git a/Pods/MASShortcut/ru.lproj/Localizable.strings b/Pods/MASShortcut/Resources/ru.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/ru.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/ru.lproj/Localizable.strings diff --git a/Pods/MASShortcut/Resources/sv.lproj/Localizable.strings b/Pods/MASShortcut/Resources/sv.lproj/Localizable.strings new file mode 100644 index 0000000..e8bb31d --- /dev/null +++ b/Pods/MASShortcut/Resources/sv.lproj/Localizable.strings @@ -0,0 +1,47 @@ +/* Cancel action button in recording state */ +"Cancel" = "Avbryt"; + +/* Tooltip for non-empty shortcut button */ +"Click to record new shortcut" = "Klicka för att registrera ny kortkommando"; + +/* Tooltip for hint button near the non-empty shortcut */ +"Delete shortcut" = "Ta bort en kortkommando"; + +/* VoiceOver title */ +"keyboard shortcut" = "Tangentbordskortkommando"; + +/* Alert button when shortcut is already used */ +"OK" = "OK"; + +/* Empty shortcut button in normal state */ +"Record Shortcut" = "Registrera kortkommando"; + +/* VoiceOver: Shortcut cleared */ +"Shortcut cleared" = "Kortkommando rensas"; + +/* VoiceOver: Shortcut set */ +"Shortcut set" = "Kortkommando uppsättning"; + +/* Shortcut glyph name for SPACE key */ +"Space" = "Utrymme"; + +/* Title for alert when shortcut is already used */ +"The key combination %@ cannot be used" = "Tangentkombinationen %@ kan inte användas"; + +/* Message for alert when shortcut is already used by the system */ +"This combination cannot be used because it is already used by a system-wide keyboard shortcut.\nIf you really want to use this key combination, most shortcuts can be changed in the Keyboard & Mouse panel in System Preferences." = "Den här kombinationen kan inte användas eftersom den redan används som en tangentbordskortkommando. Om du verkligen vill använda den här tangentkombinationen kan de flesta genvägar ändras under Tangentbord & Mus i Systeminställningar."; + +/* Message for alert when shortcut is already used */ +"This shortcut cannot be used because it is already used by the menu item ‘%@’." = "Denna kortkommando kan inte användas eftersom det redan används av ett menyalternativ ‘%@’."; + +/* VoiceOver shortcut help */ +"To record a new shortcut, click this button, and then type the new shortcut, or press delete to clear an existing shortcut." = "För att registrera en ny kortkommando, klicka på den här knappen och skriv sedan in den nya kortkommando, eller tryck på radera för att rensa en befintlig kortkommando."; + +/* Non-empty shortcut button in recording state */ +"Type New Shortcut" = "Skriv Ny Kortkommando"; + +/* Empty shortcut button in recording state */ +"Type Shortcut" = "Skriv Kortkommando"; + +/* Cancel action button for non-empty shortcut in recording state */ +"Use Old Shortcut" = "Använd Gammal Kortkommando"; diff --git a/Pods/MASShortcut/zh-Hans.lproj/Localizable.strings b/Pods/MASShortcut/Resources/zh-Hans.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/zh-Hans.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/zh-Hans.lproj/Localizable.strings diff --git a/Pods/MASShortcut/zh-Hant.lproj/Localizable.strings b/Pods/MASShortcut/Resources/zh-Hant.lproj/Localizable.strings similarity index 100% rename from Pods/MASShortcut/zh-Hant.lproj/Localizable.strings rename to Pods/MASShortcut/Resources/zh-Hant.lproj/Localizable.strings diff --git a/Pods/Manifest.lock b/Pods/Manifest.lock index d204695..44a76be 100644 --- a/Pods/Manifest.lock +++ b/Pods/Manifest.lock @@ -1,10 +1,10 @@ PODS: - - Alamofire (4.7.2) + - Alamofire (4.7.3) - BRLOptionParser (0.3.1) - - GCDWebServer (3.4.2): - - GCDWebServer/Core (= 3.4.2) - - GCDWebServer/Core (3.4.2) - - MASShortcut (2.3.6) + - GCDWebServer (3.5.3): + - GCDWebServer/Core (= 3.5.3) + - GCDWebServer/Core (3.5.3) + - MASShortcut (2.4.0) - RxCocoa (4.1.2): - RxSwift (~> 4.0) - RxSwift (4.1.2) @@ -17,14 +17,23 @@ DEPENDENCIES: - RxCocoa (~> 4.1.2) - RxSwift (~> 4.1.2) +SPEC REPOS: + https://github.com/cocoapods/specs.git: + - Alamofire + - BRLOptionParser + - GCDWebServer + - MASShortcut + - RxCocoa + - RxSwift + SPEC CHECKSUMS: - Alamofire: e4fa87002c137ba2d8d634d2c51fabcda0d5c223 + Alamofire: c7287b6e5d7da964a70935e5db17046b7fde6568 BRLOptionParser: a03256a8ff003ca1f5376c55f55f210e085a3958 - GCDWebServer: 8d67ee9f634b4bb91eb4b8aee440318a5fc6debd - MASShortcut: 9c215e8a8a78f3d01ce56da48e2730ab66b538fa + GCDWebServer: c0ab22c73e1b84f358d1e2f74bf6afd1c60829f2 + MASShortcut: d9e4909e878661cc42877cc9d6efbe638273ab57 RxCocoa: d88ba0f1f6abf040011a9eb4b539324fc426843a RxSwift: e49536837d9901277638493ea537394d4b55f570 PODFILE CHECKSUM: 00940d7054f9c0a5f67a7f3be8edb28676d11545 -COCOAPODS: 1.4.0 +COCOAPODS: 1.7.3 diff --git a/Pods/Pods.xcodeproj/project.pbxproj b/Pods/Pods.xcodeproj/project.pbxproj index e346dcb..bfce5f8 100644 --- a/Pods/Pods.xcodeproj/project.pbxproj +++ b/Pods/Pods.xcodeproj/project.pbxproj @@ -7,1583 +7,1542 @@ objects = { /* Begin PBXBuildFile section */ - 008D88E94858B0B8190DD42951253AD2 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA9A1A86E1594EEC96C2B7214E16E50F /* Cocoa.framework */; }; - 010E5C9355217455596792A83A1A86AD /* SubscribeOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4E00A40F2D4DE3318F31F4BD19FC986 /* SubscribeOn.swift */; }; - 015A2D47B6DA8E170E4E64108EC177CA /* GCDWebServerFileRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = BEA567412780FF078C4F7D7AEEA21AD2 /* GCDWebServerFileRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 027E63B83CAF0C92F57B9AB56674EB04 /* GroupBy.swift in Sources */ = {isa = PBXBuildFile; fileRef = E18663B7E781172BDC6EFC5AC77BA4FF /* GroupBy.swift */; }; - 03810806C0578A750613717248DC37CC /* GCDWebServerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = BDAA1AF05A1F0B1B7C16588267607FE1 /* GCDWebServerPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; }; - 04C0394D629A610FA6BE32906A9772C5 /* KVORepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 284942F9AAC3AFDD49598A09EEBAF5FE /* KVORepresentable.swift */; }; - 0551162B7568A0F3028CF7CE13E9C1C7 /* GCDWebServerURLEncodedFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = D27F9B49B02CDF00CFD1E0CF066445B2 /* GCDWebServerURLEncodedFormRequest.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 05EFEC2BDEDBF30BF56C3F2DB0AE7A56 /* HistoricalScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28409654F83C1BED4A04990DF2A46117 /* HistoricalScheduler.swift */; }; - 0616475CEB33DAF817FA5A06022D5D7B /* Scan.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF846AE7A2DE452AE4DCDE6EFBEC8B26 /* Scan.swift */; }; - 06E53ABF634928697CF55B2D6DD415F4 /* Dematerialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87372668A1EA52537C962C8365145B96 /* Dematerialize.swift */; }; - 08067F41CEECB56CE74FFCA481092E8D /* RxCocoaRuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FF66DB8174612DE3868CD61F0C25E75 /* RxCocoaRuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 098AA417A5494FC829E777DC5CF06ECC /* GCDWebServerURLEncodedFormRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 399E2B8BEE8E886EE4016D87C5C85C63 /* GCDWebServerURLEncodedFormRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 09A6B67CF6F6BDAF375261535340DD3A /* DelaySubscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0F9D84DF77D8398558F3D4F5FD606DB /* DelaySubscription.swift */; }; - 0A402C97D8A2855E4F69D8E2BFEE752E /* BRLOptionParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 49D4DB0A334289080782A137D04524BE /* BRLOptionParser.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 0A80FDAE7915EE476A38C9CCC68FAC69 /* RecursiveLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE7D4EDDDDBC9A8284DF4316C7F919EB /* RecursiveLock.swift */; }; - 0B24DF0C1B8DFEC4738DE16AE0467553 /* Disposables.swift in Sources */ = {isa = PBXBuildFile; fileRef = 218389799BBF34D96B7BDE06ECC09CD9 /* Disposables.swift */; }; - 0B8140968914C908CFB4949F67745DD7 /* GCDWebServerFileResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 00208F1C08F49846BFE1A47C2AD5C562 /* GCDWebServerFileResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 0C68821E6FFBD9B3D36F863B392E9D1E /* StartWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1910F3BA8275DA306C03AAF91366CA17 /* StartWith.swift */; }; - 0C8240D6CEBBEEA043891D3FC5B6583D /* AnonymousDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB8E26A34CAE0B693F1F2C52465402C3 /* AnonymousDisposable.swift */; }; - 0CD517FAACCA346523AC5681E5451D4A /* SynchronizedUnsubscribeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43D1F9A72CB74DED14E390F65E400A19 /* SynchronizedUnsubscribeType.swift */; }; - 0E5DDCC45FFD8714E2DCB955C83D4130 /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B662771CEFD0C752DAF2C38021A7EB /* Timer.swift */; }; - 0FFA1CFFE797C9500D68689C5D9AE025 /* DisposeBag.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1FECC6066F8385524F9B523590A82C8 /* DisposeBag.swift */; }; - 0FFB5E639F74E4ADCEA6B4691231D788 /* Binder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82B40C2141EAEBD3F4738B4EF37F735E /* Binder.swift */; }; - 10EB23E9ECC4B33E16933BB1EA560B6A /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 219ED455E5F4B8EBAC276EB23D845469 /* Timeline.swift */; }; - 113A11F61DC88927204A3B8024EEDEE5 /* AsyncSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B62CFED1E64A9E67642177FF31ADAB0 /* AsyncSubject.swift */; }; - 12149EA10608B7DE38879E6242D2826C /* ko.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 42C5B04BED868BDFDAD6B1B4CEF885F1 /* ko.lproj */; }; - 12498A71D7F9769F2686E137BEE742A4 /* PriorityQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE9523A3F66C7512A04D217B9485ED49 /* PriorityQueue.swift */; }; - 1306B351B70FAEA38005826E3E0B7F3A /* KVORepresentable+CoreGraphics.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA2390463C1EED454182AA10546F90EE /* KVORepresentable+CoreGraphics.swift */; }; - 141D65E8D754B3CD6053D152E60EBCC7 /* Platform.Linux.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08CE7BAE0F6A7178D9136F1DBE9CE0D3 /* Platform.Linux.swift */; }; - 1568BC317134F1902AB76EE65E0A18CE /* GCDWebServerDataResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = DB253165A9F6EDB8299D6D115FAEBD42 /* GCDWebServerDataResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 157AE1FBA8F6C3B710CDE90F86492010 /* MASShortcut.m in Sources */ = {isa = PBXBuildFile; fileRef = 94D1A921D2DDCB6ADE167A6D9F9FC69D /* MASShortcut.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 16C4E1D2700082128AEFB0A56E339123 /* ControlProperty+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = F998ED9B73E72761135D03EABEA4CF52 /* ControlProperty+Driver.swift */; }; - 172294F530504F23FBD67243FC416996 /* Take.swift in Sources */ = {isa = PBXBuildFile; fileRef = 121D3DED6F325810B808C962150FDF6B /* Take.swift */; }; - 17BD24642744FE2260FA6811B165388B /* Buffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = E334CC8401F5E9485DACD3CF7F789B90 /* Buffer.swift */; }; - 1AB0577134E333EA71DCCE332191A260 /* Pods-ShadowsocksX-NGTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 46662EB64876AD1C891F548C69A89E89 /* Pods-ShadowsocksX-NGTests-dummy.m */; }; - 1B9EDEDC964E6B08F78920B4F4B9DB84 /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = D77C4845A393085D1F7FF68A785D6A6B /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 1C68805E7E2B3594CB435A185A6C7A6B /* ToArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = A604573634B3B440BAC80E6185340643 /* ToArray.swift */; }; - 1D51BDA7275CF818A0072751DE5EF399 /* InvocableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FF3E0A37CDE9554E186BAE00CD9C197 /* InvocableType.swift */; }; - 1EF1D9B948C91F3CAD0F2998F3765D8B /* GCDWebServerErrorResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DD66E9E374587EE9AC648D811B5042E /* GCDWebServerErrorResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 1F60D3DB469D63B9ACB07A1C8C322879 /* PublishRelay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A04D2678FFF63F78747A96526C32525 /* PublishRelay.swift */; }; - 1FC45BAE1645E857B19EBB05E0CBA244 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78755706F21BACDBA952EF615AE4223F /* Errors.swift */; }; - 203CA8CA9FC10517AD691B4CD2D35B40 /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAA642364AC03341491D3F3B2B55D566 /* Event.swift */; }; - 20887597017160017549465EBFB7E977 /* zh-Hant.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 30E4F3002967D50F222222D209A56B79 /* zh-Hant.lproj */; }; - 2184836F18B35AAF94E8BE8B40206F15 /* Generate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 920735A244F39A83F52DF97FA4E7427B /* Generate.swift */; }; - 2356019614669E69E722D77C43A90A07 /* Single.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9308FACB56EF2744A5DF058B75203AE6 /* Single.swift */; }; - 23A86C508AE8C5C1615208352A05ABC4 /* VirtualTimeConverterType.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA4CD1F6811E9C48888466AB8169A09B /* VirtualTimeConverterType.swift */; }; - 2527F62CEADDA5CE60852E0C067D3438 /* GCDWebServerResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = DD640DDC7E829A09ED1072907C443481 /* GCDWebServerResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 2545E11592C408516EA9AC047FFD47FD /* BRLOptionParser-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B4CB86E9D779A444876EA5C4C68A3FBD /* BRLOptionParser-dummy.m */; }; - 277E1C593CBC2FC2935E8377ADCB4F9D /* DisposeBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B8C0CBA55B2D8C521EC4555A764C4A3 /* DisposeBase.swift */; }; - 286A79B0F2405FD08804042FE30407B1 /* GCDWebServerMultiPartFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 83A9CCC244BECF2D84BC459532DA1B78 /* GCDWebServerMultiPartFormRequest.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 2942BED5614FBEF4C6D07C7B9C746F1F /* RecursiveScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52EE2194BA2C33781397BBEB8F4C9276 /* RecursiveScheduler.swift */; }; - 2A1DB4D085BAA9578B77458893659DDC /* NSControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = D20F25597538DF7C1290E5ECF3BA6073 /* NSControl+Rx.swift */; }; - 2BB6D185FB842C820E5EAC08FDB3A19F /* PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5D00060FD1C8FC81DFDD4EAD1FC02BD /* PrimitiveSequence.swift */; }; - 2C16189485F3647493E5E74E8C629E54 /* Pods-ShadowsocksX-NG-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 14A9EC2BB1EC6484018A5EB4B9B2C231 /* Pods-ShadowsocksX-NG-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 2D0D484C1ED547F456B759214405D595 /* NSView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83268468D9194D59FF72E067422BC173 /* NSView+Rx.swift */; }; - 2DBAC0452D6B85DF3E41E3AEFB4EEC16 /* Pods-ShadowsocksX-NGTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = D7E8128F302CF60BEF206008CE11F6D3 /* Pods-ShadowsocksX-NGTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 2DC07EB6B16990A067D1D053382C1573 /* First.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D4898D741BB7A3E63AD3625C5913FF4 /* First.swift */; }; - 2F9F38633F6ED088810B32CD54529D84 /* TailRecursiveSink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C82EAFB5F96FA6732152002CA4666CC /* TailRecursiveSink.swift */; }; - 305A214BC25347F3EF3994A5DE5C5F25 /* ObservableConvertibleType+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = C12D136B18E0E7F8F564601A28FFF96F /* ObservableConvertibleType+Driver.swift */; }; - 3076DFAD05E4F7F0356153478F071D74 /* MASShortcut-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = ABEF7628490A51F0ED3BE67393DEB56E /* MASShortcut-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 30E2A73CDE464DC6C23D3524F07FBB9F /* GCDWebServer-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AECA5396C8BF81522F020F67B5051752 /* GCDWebServer-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 317DE7777E93EDA37B798E4778E8AF24 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B96C6614EE1F3536C3C06892684F2657 /* Disposable.swift */; }; - 31DE016EE6C90B9498B1F08BC34CDC9B /* SingleAssignmentDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C65BFED56C12E4DDC34449B0F00BC4D8 /* SingleAssignmentDisposable.swift */; }; - 32F59423331F13E53E93207A23CAB81A /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE8A310F9FBC0D6FDD4C8E3D891605E1 /* Optional.swift */; }; - 33669A1E8FF6BB34131FB94871DDF908 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA9A1A86E1594EEC96C2B7214E16E50F /* Cocoa.framework */; }; - 33A3CD60ECC4477B864CD8463A4179C0 /* SkipWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C851BCF7777F05B23845D5F3B42477A /* SkipWhile.swift */; }; - 350B80BF6F26209C3BD76F4FD3E93E3F /* ObservableConvertibleType.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9A3C739C0FF5F8BD8B24A9AF4939DC2 /* ObservableConvertibleType.swift */; }; - 35B3DA850A250223EE5CEB9DB04D1FC4 /* GCDWebServerResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 02C1C424F1F955C157E2AD0DF9DA85CA /* GCDWebServerResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 3626B94094672CB1C9DEA32B9F9502E1 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18D47804A6E897EF20B93DDAE8450B08 /* TaskDelegate.swift */; }; - 363B6BA64ABF7E326581E60BF57E9E73 /* BehaviorRelay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2845A68913E943BC36DC30691EC2767F /* BehaviorRelay.swift */; }; - 36E0FA5FE4424D20F0215B1C2CD85D90 /* GCDWebServerRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 4E035F93086E0E9404B6C0C525F9F238 /* GCDWebServerRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 37F45802E36DFB8D332DE998347FC8EB /* Lock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23A3D60EBC5FA9D3A2E4ACFAD6428316 /* Lock.swift */; }; - 382EEA9832CF0E0860B998EAD0EE66E1 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4FEC4B8DFE8753A9B1DE598293568F30 /* SystemConfiguration.framework */; }; - 38974DB132715266ADE00F2E3DFBB320 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA9A1A86E1594EEC96C2B7214E16E50F /* Cocoa.framework */; }; - 3A9F650F4A2FC5D727FF281AAC625171 /* WithLatestFrom.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FD412C15BC617CC38E190F17BB06655 /* WithLatestFrom.swift */; }; - 3B89F320811AC31E66E7B14CDF9046CB /* NSSlider+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 115DA97253EAAD8E69D0C8D6A825B18D /* NSSlider+Rx.swift */; }; - 3C507AB95BF1F4AC2F692FE5CADA9CB2 /* Materialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1791718F5CC919CF52642A71FE4AAAF /* Materialize.swift */; }; - 3D22B1CDCC3977BC8CF2B71D3645386B /* SynchronizedDisposeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98923078307F200863DB7C59FCFC7002 /* SynchronizedDisposeType.swift */; }; - 3DD0362B0B6B939B5D087A150121A4B1 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA9A1A86E1594EEC96C2B7214E16E50F /* Cocoa.framework */; }; - 3E715DFE443524EB6ADE892E4A676224 /* GCDWebServerMultiPartFormRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 82AB01A10760A9DBC7F68ACDB184CB9F /* GCDWebServerMultiPartFormRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 4021AF3A4FAF79BB86F80005B72627BE /* SchedulerType+SharedSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEC68B3F3AAE886E35269B85EAAAA4A2 /* SchedulerType+SharedSequence.swift */; }; - 4101FFED5C58EEB5FFF2F58ACDE18AD9 /* TakeWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = D37B5D016E968A982C96D680E27224E7 /* TakeWhile.swift */; }; - 4165379A8A38766F01C8DCA38C1636EF /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12628820AE714729D03F0AEE969EB3CD /* Logging.swift */; }; - 41FD1695AFDC553E66D35A26AB0E14E0 /* SchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 41C0048A00AC76527EB7E552AC524DAC /* SchedulerType.swift */; }; - 420D4C0DA53B332CDDAA294AE3E7B740 /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68F3C7D40CA579EFBF45E9BDF4844714 /* Error.swift */; }; - 42B758DEB73A71CFEE6AB0091A4D51FA /* ConnectableObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44F80D944345E3B50B5CFF78E7C4E4D9 /* ConnectableObservableType.swift */; }; - 4540E2CEAA8B2C8A52C60707F64C9952 /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = C57692BA24E650520C1D877523C0A5F0 /* Queue.swift */; }; - 45E690B4908CA6A5E5903A62C51B4813 /* TextInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = B140252F1C653182982BDDFA6F4DFFEF /* TextInput.swift */; }; - 46BF838ED5099DE5FF962D68D79D2349 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22693A1922310B1DDCE8D9B91AA49677 /* Filter.swift */; }; - 4708A1DA6FBEAAC23B4535D8770289E3 /* Platform.Linux.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC7D06D7C30521ACFE2CB8810BAD6EB4 /* Platform.Linux.swift */; }; - 4818C1BB29E7C2BF255D9941737665EA /* MASShortcut.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 711B62B6A01799BBCBA4F90D70C6AF28 /* MASShortcut.bundle */; }; - 48FE45BD7BF4ABB32A024550ED96B4C6 /* GCDWebServerStreamedResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 987AC2089C4B4C35C212D30E0C0E7B9A /* GCDWebServerStreamedResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 490B8F69828862C7939BE0F47D6DB89C /* GroupedObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28578489FE91CF078CD23E26E04E3BBB /* GroupedObservable.swift */; }; - 4A4408FFA76EAF3E6C82888069FA74BA /* AddRef.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9589591754500401F219D9EC60BB6AD7 /* AddRef.swift */; }; - 4A6AF0A712D4C473177BE88389D15D2A /* MASDictionaryTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 56904622AEC39DA2CC3FFE7AC03DEEA7 /* MASDictionaryTransformer.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 4B011F87C4CD25363F21DEF2C9581B25 /* DispatchQueueConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0141E6A6B4EB3619B0171F6D6AF2EE49 /* DispatchQueueConfiguration.swift */; }; - 4E7600A3BA0F81B1973B887E025DF056 /* Sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2977417D444B5687C65F2845036F130C /* Sequence.swift */; }; - 4EA7780B43C03F302BC16E613600AEE6 /* Completable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F5083A9395E7BC273257A316BA5D517 /* Completable.swift */; }; - 4EDE49009B5B68074CD71F8B362F0DDC /* GCDWebServerDataRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = D80BBC49309E8C0FFEE8339DD05B1420 /* GCDWebServerDataRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 500E908BCC57EF5E1F7F918B9876CE23 /* Throttle.swift in Sources */ = {isa = PBXBuildFile; fileRef = D883EB96731562A3DB6A5D9BB316164D /* Throttle.swift */; }; - 51358F3E24AC8F1A4172E388769FF1FA /* MASShortcutView.h in Headers */ = {isa = PBXBuildFile; fileRef = A0BF6605792D11FF8BA02337532C154B /* MASShortcutView.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 532068C53B54FD7232B59B5DB2D9EF77 /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABCEC9093299246040636BFC7D014387 /* SwiftSupport.swift */; }; - 5387216E723A3C68E851CA15573CDD71 /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = F58912C1C682D706B91088B2E3E28849 /* Request.swift */; }; - 53D63A17DB43C044EFBAA17337600276 /* GCDWebServerRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1C6FF8174AF3551817D3375622AD00A6 /* GCDWebServerRequest.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 54D6EC90DA6336155F9A83D7F630E4EC /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BC3571EE031A7539BB287EFCD666847 /* InfiniteSequence.swift */; }; - 572B991A35A12B7D033F2DC67451FC0B /* Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E7682153DC4B4654DC8897B52E1C68A /* Signal.swift */; }; - 58CE04D9C6CAC7243825ABF4AB20EF32 /* MASShortcutValidator.m in Sources */ = {isa = PBXBuildFile; fileRef = B9FD186DCB0C2486656EE428FDF24E95 /* MASShortcutValidator.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 58D21664187909739FA5E11A5AC1EB04 /* Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC9CBF3F42BE77A6A4156483F6E7A677 /* Driver.swift */; }; - 5A30DAB76BB1814664FA7DC30939DA24 /* MASShortcutBinder.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F78B857D0E9107E4AC4BE639CB5FDB5 /* MASShortcutBinder.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 5AB4432DDFDFFBAF30B04131BEA65884 /* BinaryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C143DF478B2ECD2870DC326426CCA893 /* BinaryDisposable.swift */; }; - 5CC209128C782B168EEBF07741EA406C /* NSLayoutConstraint+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3A10808A0957AA2EC5EB7D1A77E4B27 /* NSLayoutConstraint+Rx.swift */; }; - 5E04C336772C75B4BD3DE0FDC9D7F082 /* BehaviorSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = D88C03DD8DB2FDBDB751F6E0573A19DF /* BehaviorSubject.swift */; }; - 5F1FA9D431587CD257C703AF16134030 /* ja.lproj in Resources */ = {isa = PBXBuildFile; fileRef = BF25BEA59068FC2091F298B09B53F9A0 /* ja.lproj */; }; - 5FF7D42F51FEAEB192E61355AAEAC6DE /* MASShortcutMonitor.h in Headers */ = {isa = PBXBuildFile; fileRef = 7A842F5AB01E533C407EF9F939D43654 /* MASShortcutMonitor.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 61200D01A1855D7920CEF835C8BE00B0 /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 420BCA1748F9506534FB0A233C6EB49A /* DispatchQueue+Alamofire.swift */; }; - 612281D2096564D60D241186DCAE5706 /* ObservableType+PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51298DE535C414C093FA9AEE5A210C4E /* ObservableType+PrimitiveSequence.swift */; }; - 6135396E25194755B2FCFC03C62263B3 /* DistinctUntilChanged.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8289A948846D9CADF1D390856F40AF89 /* DistinctUntilChanged.swift */; }; - 618D3C71663174E07B65950421C46D48 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 139134EE845E284F4B3ED2EF2F9A302B /* AppKit.framework */; }; - 623781D4B229E4D819BF3997A2F6F954 /* ObservableConvertibleType+SharedSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = E4824FF61369273279E9C73FAE118858 /* ObservableConvertibleType+SharedSequence.swift */; }; - 6252C2B00AFB3FC879D405191C4F8A4C /* Concat.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5BEEA74769B7463104E20202E1A465D /* Concat.swift */; }; - 626A7B01D3D6B6EA0869551ACE82FB8B /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA9A1A86E1594EEC96C2B7214E16E50F /* Cocoa.framework */; }; - 62B5F416D74F8147F7DF9151B9CB0A96 /* Deferred.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1EA13DE495837C31F4526D7FA1F7795 /* Deferred.swift */; }; - 62F65AD8DC4F0F9610F4B8B4738EC094 /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = F41F3F896039E0F2EE235A159F853B08 /* ServerTrustPolicy.swift */; }; - 6303F577E7E204EDD3290341645A3C93 /* BooleanDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7849EB1549B76C509FCE0465C3EC6585 /* BooleanDisposable.swift */; }; - 63BE27B8249C72EC539F4F5367E9DCF5 /* NSObject+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B43F76AA34F7FD88FC35F826FE0911E /* NSObject+Rx.swift */; }; - 640BB2DA5629DF979311584E6F4AC09B /* SerialDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D0E7B6D1939F2FFB2328BAA55AB8D33 /* SerialDisposable.swift */; }; - 66AD0D86950A5C05121AE482F5257717 /* GCDWebServerConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = B7C8CD3DFA056CB378EA8126D471FE4D /* GCDWebServerConnection.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 66DEB394C39F5DCCD70A27ECEF274983 /* de.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 5B35B3E1CD06D484F53A3E476AA3686D /* de.lproj */; }; - 67257E0D79F725528DFE2B3DCC0293D5 /* SwitchIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CA83DA1CEDBDC939542356592B40AB3 /* SwitchIfEmpty.swift */; }; - 67D8ED58AD2C8315F19FB3F7DD968893 /* RetryWhen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7566FCCEEDFE8B433D83AD311795E367 /* RetryWhen.swift */; }; - 6854825AC3848196270B428A36FBB043 /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0A874527BA87240185BA903D136C3AF /* Merge.swift */; }; - 6A64206CD6836AC8FEF84C6156CD8BEA /* ConcurrentDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 740D1DD30811098DBF267CA2EBAF0448 /* ConcurrentDispatchQueueScheduler.swift */; }; - 6A7F23D172685A59F7890947DE5B288A /* Signal+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D3C210247CB8CE3DF722B8D487265EB /* Signal+Subscription.swift */; }; - 6B26270D538BBE32EC979CE071CC218D /* Driver+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F79F86B3A28700C995D5AC30EC550D6 /* Driver+Subscription.swift */; }; - 6B4361F5ADC6268E7953732371174FE9 /* MASShortcut-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C54EAA06C0712228D110E5F33FD72EC9 /* MASShortcut-dummy.m */; }; - 6C62ACD1AF9B80626023D3E654D3E77B /* GCDWebServerStreamedResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 5F53F9BE0FC6F1436AD8032E8FF6D80D /* GCDWebServerStreamedResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 6C70E6D376363F78D7BEA000B5A1C309 /* AsyncLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA0D68D388D0343FA7D9603F2972F301 /* AsyncLock.swift */; }; - 6C97654D360B43FE6AF6582D4E27FB55 /* Sample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82C92E152F7133108027B5F35A4EA2F6 /* Sample.swift */; }; - 6CE3F1A01E6DE8F58A874B780C66A6FA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA9A1A86E1594EEC96C2B7214E16E50F /* Cocoa.framework */; }; - 6D1B82733CCD35C7B720D8B306969DB2 /* _RXObjCRuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = 03F1DFC052C8E6481E56E12D5099A620 /* _RXObjCRuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 70D7281997BAECEADCC60D9DEDCE4FC3 /* TakeLast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A0D3BBA7497A389734E9EEFBAE2464D /* TakeLast.swift */; }; - 71E974A4435358B0B1B371FFA5EF58C7 /* ConcurrentMainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BF437276A9A9AD2789D809F09705992 /* ConcurrentMainScheduler.swift */; }; - 720E93B2FE64C66DC3CFA6088DD40A2E /* Producer.swift in Sources */ = {isa = PBXBuildFile; fileRef = F63A805EDA3A375F4453D75E39B46EC1 /* Producer.swift */; }; - 73D927F9EA3335CEB0C45239F31A9A79 /* VirtualTimeScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB5D3778780DA8CAF8A3068FF9DFDC57 /* VirtualTimeScheduler.swift */; }; - 7487316C5EAAC9C271C7B797E99D3D22 /* NSImageView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C42E3C6553CD86CA08CB17F055E2FD1 /* NSImageView+Rx.swift */; }; - 74EFCC6DC65CEBCF60B106F7FBB14EA2 /* MASShortcutMonitor.m in Sources */ = {isa = PBXBuildFile; fileRef = 3725898C57B3547AF4E212E583C75CE2 /* MASShortcutMonitor.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 751AC207B038ADC338015FD80AA54B76 /* MASLocalization.h in Headers */ = {isa = PBXBuildFile; fileRef = 2AB0C03C6DE868D798024FA98E343764 /* MASLocalization.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 75780983A83E65A597525566173E3C7C /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B792280B7BC7CA44B5D7090C8F732A0D /* RxSwift.framework */; }; - 76537FCDFF46E2EAA84E9632DB6A21ED /* MASKeyMasks.h in Headers */ = {isa = PBXBuildFile; fileRef = 9BA0976D52E0B1BE7C75718D8F34D6D7 /* MASKeyMasks.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 774A0ED04EAE9326B4CE4E588A87C32E /* ControlEvent+Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 81BA4BA48C5140576A6D93FB9EF7C2C1 /* ControlEvent+Signal.swift */; }; - 775A47C2CC9C252F6F612BC52258D549 /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B940616A1513AFB926A1625599603BF /* InfiniteSequence.swift */; }; - 7866C369C49972E30DD646C16447C682 /* OperationQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = C38541370FCAF5848E3402B758806B42 /* OperationQueueScheduler.swift */; }; - 7A88AD6D91DEB45F24205AB36E456007 /* BRLOptionParser.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D1F46FBDCCCDDD5DD811F74DF066657 /* BRLOptionParser.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 7AD32C4A8B13DDEFF05DCF521E89B9E5 /* AnonymousObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF773B3F1B1F670D5A56FC9AC6EBE4D2 /* AnonymousObserver.swift */; }; - 7B42E31B60FD9B8235C6AE41B32931B2 /* RxCocoa-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = DD070E26B8B863382F7AA226CF6D5794 /* RxCocoa-dummy.m */; }; - 7B4C3C45E92DB455C98680E229867CE9 /* DeprecationWarner.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4D23B3353252A87A2DFCBE6BCAC355C /* DeprecationWarner.swift */; }; - 7B5FE28C7EA4122B0598738E54DBEBD8 /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = E39B6AE9C7DBAF6F7102DDE428C6D4DA /* SessionDelegate.swift */; }; - 7B70A32CB535894B889DC0400D0DE4B5 /* GCDWebServerDataRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF79E5957660D27729BE2711F7510D5 /* GCDWebServerDataRequest.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 7BB8ED49DD0593318DBAB158D154AEC4 /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1221D61D7EDFE6C6834C60D4AFAD701A /* Queue.swift */; }; - 7C46C6DFBF9F5A96C6BCE1C93052B63D /* GCDWebServerHTTPStatusCodes.h in Headers */ = {isa = PBXBuildFile; fileRef = 88223CC64D20FAA41D33B56DA90F1829 /* GCDWebServerHTTPStatusCodes.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7C74AC76B4D748648227C86121B08243 /* ShareReplayScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DDB54ED8FEE2C1E06EFC2F722F8735C /* ShareReplayScope.swift */; }; - 7D8CC01E8C9EFFF9F4D65406CDE0AB66 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B9730D65B8F0B8AE3F7A91E58EB6705 /* Result.swift */; }; - 7D9AEF684D4E202E7D4D08DB26362A63 /* SkipUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2A1585CB16C85AE91BDB4B9405928A2 /* SkipUntil.swift */; }; - 7DCF1C20B4759A0D61B023AAEE75BAA1 /* Multicast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D3126A27429E648B79C41215C88F13B /* Multicast.swift */; }; - 7DE11B1BFD40161461B75775ACEA53D4 /* _RX.m in Sources */ = {isa = PBXBuildFile; fileRef = 94BAE73C588EBC604DCE573EBE4A04AB /* _RX.m */; }; - 7E20F5346ADC8F4F5C069EDDE10897FD /* MASShortcut.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F8A0E045BE3B86CD42FE28A50C51A3F /* MASShortcut.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7E7F8834C1CEC6FC91F47FD16545AC6B /* ControlTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8443ACD9BB292ED1C07002A2677C9A6 /* ControlTarget.swift */; }; - 7F7AD0AEE5FEC490EAC6DA63559A6E3C /* ObserveOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EB0F48DB0F38B80DF2708AB2292F08B /* ObserveOn.swift */; }; - 7F9313D68927235417B8703B0B4FC5E0 /* ObserverBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = C15620E5544258EF1AEC163EC547C2E3 /* ObserverBase.swift */; }; - 80C368BB52E090970B402E0BA9D8B088 /* ScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 617D6EBFA395952801772F1383AB8AAE /* ScheduledItem.swift */; }; - 80D8BB858F559DD7483D2488BF11E820 /* SynchronizedOnType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0716C7A069A21844C312E62BBD3AC258 /* SynchronizedOnType.swift */; }; - 80F39A93408F43D4234F807D51686664 /* AnyObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22ECE1CB75987611F39ADE574AA7352C /* AnyObserver.swift */; }; - 81B6397FECC803695902CEDB37CB4DFA /* MASShortcutBinder.h in Headers */ = {isa = PBXBuildFile; fileRef = 3F5864100C7FDE5370D2A9D47B635CA3 /* MASShortcutBinder.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 820C8506D425B8392259E83BAD962B3E /* Empty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62C6E1F6DE2D3160BDD5B13FBF1DD877 /* Empty.swift */; }; - 8240214BBCE95C6957ED5D6DC5D97550 /* RxTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 117E3E5CB18C4C8895AEDCB96CBFF566 /* RxTarget.swift */; }; - 83311F362776862EBDE3EA84F204F11D /* Platform.Darwin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BF7CE3A988F181B6A3CCFCDAA25B69E /* Platform.Darwin.swift */; }; - 83E17A8F8042821DBFE379B8E721D9D3 /* DeprecationWarner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C4E2B96284BE7E91A2FAC7A35722534 /* DeprecationWarner.swift */; }; - 8635269F248F424E4EECB84EAA5025FA /* Cancelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4498044F24BEEA463A62F313DBAF34A /* Cancelable.swift */; }; - 86F7FE179A98E2787500CA0DD68F2574 /* _RX.h in Headers */ = {isa = PBXBuildFile; fileRef = 8CE15615F891AE84CC28B31DD1DFED34 /* _RX.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 8738EB95B710731B66BECC5468B235C1 /* Range.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09A7C38F0BA34490FE74D086703D0869 /* Range.swift */; }; - 87DF52BA9D6A9A8A28DA38395FD6E52A /* ReplaySubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FD70811FA75DA891378A68B3B6B4E2E /* ReplaySubject.swift */; }; - 886E89D85907BBD7A8C8BAA088D23E3D /* GCDWebServerFileResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 4FEDBA21F3681BC1FBEB4E058BDEF1E4 /* GCDWebServerFileResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 88FBCBFFE4425441DC4AED87182340F3 /* ElementAt.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EA75FB12559EF9F38DE81CA6685BE6C /* ElementAt.swift */; }; - 891AF67A55755172995A43569453491A /* ScheduledItemType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A1C35E455A2F2765CD140138D5A1EEF /* ScheduledItemType.swift */; }; - 8949803FBCD4E3F9D862412EC64C1B2A /* PublishRelay+Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5BC8CC3D75BE1CAA9F4B2902AAF6A7F /* PublishRelay+Signal.swift */; }; - 897F13577AAA8382269EC194094D0916 /* _RXDelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 95CD99AE9A1C290252A419DD48B2A263 /* _RXDelegateProxy.m */; }; - 89B177904145220E5B578A6EFEE5D5A2 /* Observable+Bind.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2761A1137851210C3B778227D6BA8376 /* Observable+Bind.swift */; }; - 8ACEEFF8AA92153C984BCD3E6FEEFDD1 /* Zip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B3420B97151695E8A4E232D9A929713 /* Zip.swift */; }; - 8C5EA18EEE22A60BF10955E38F0D3A75 /* MASShortcutValidator.h in Headers */ = {isa = PBXBuildFile; fileRef = 57895F669A6A45DBE1808ECFCA7E6DE8 /* MASShortcutValidator.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 8F6CC2B52C9EDF0C6F87877E25AB523E /* Catch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48FCACAB173ADA2C6A483176B8C97F66 /* Catch.swift */; }; - 8FEBDE87BFA67E4AD0EC88774A1097F2 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA9A1A86E1594EEC96C2B7214E16E50F /* Cocoa.framework */; }; - 8FFA3A6A77962B3A36B009A49634D081 /* MASHotKey.m in Sources */ = {isa = PBXBuildFile; fileRef = 8BE1FB4F6E66271CE86F1B9F3B10C4B2 /* MASHotKey.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 9046C1C876045990B2EA13AAC3595F3A /* ControlEvent+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4E3D27538532E6FBE6335CF89442070 /* ControlEvent+Driver.swift */; }; - 91C0EF4EEBFE321C2F441FA4F4C11B10 /* Debounce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12173B3EF2DB80B33497504CD28D0D25 /* Debounce.swift */; }; - 92BA6B417A495F5740EE5C3C35CC86A6 /* SharedSequence+Operators+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = C69F2408EF8B0C3BB7419872996ED01C /* SharedSequence+Operators+arity.swift */; }; - 97B374490F695A6ECB06271EF080EB6C /* nl.lproj in Resources */ = {isa = PBXBuildFile; fileRef = B2929F5EBA6B563EE116F09A01CE8D7B /* nl.lproj */; }; - 984CFED13106FED5980C072A6BE6A8ED /* HistoricalSchedulerTimeConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B61C725932BE55BD3F51C1611F4C00E1 /* HistoricalSchedulerTimeConverter.swift */; }; - 9A551C74F80912EFDFC942535ECA28BE /* RxCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 3FB4990CA1A63AF517A7F5A32C6EE3EB /* RxCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9B428D0BA1F182F5113B861921972176 /* ControlProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59CB3865143E8097440FEC7F48AF17D7 /* ControlProperty.swift */; }; - 9DB91F7B392D045AB8451F515D20D649 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA9A1A86E1594EEC96C2B7214E16E50F /* Cocoa.framework */; }; - 9ED2BB2981896E0A39EFA365503F58CE /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 822A32C67318B2171827F9F276472026 /* AFError.swift */; }; - A03ADA7F9A7D390E62A9367B65B29D95 /* SubjectType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3CB0942D626105573A56A84ACEC555FE /* SubjectType.swift */; }; - A141E74893719F61806F5D6F6BF78A5C /* RxSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A10E8E2BEA43547BD31F4D396909B1C /* RxSwift-dummy.m */; }; - A27AE5C98C89D359EF8B6E8A6A0C805E /* RefCountDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F7B1AB25111B41EA516AC2B26F16FB4 /* RefCountDisposable.swift */; }; - A2A6F71B727312BD45CC7A4AAD7B0AB7 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F59435F621E888DE7C2D34F05907491 /* NetworkReachabilityManager.swift */; }; - A305AF2A15236E49B1F690DB9E8DEDB3 /* Reactive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04D3D547F7C9D93D846B18B3598139D0 /* Reactive.swift */; }; - A47881E900B27D5C9E6201B96C6F9B40 /* KVORepresentable+Swift.swift in Sources */ = {isa = PBXBuildFile; fileRef = E40D5C853F53872A9EDD51E2438864BC /* KVORepresentable+Swift.swift */; }; - A4DBF0AB2E88B1A9D1078042F47618B0 /* ru.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 9C124E5083A1C670ECBA0CC803184E03 /* ru.lproj */; }; - A4DCFC022D92D0731971797EFFEE46DC /* SharedSequence+Operators.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF30D62954A12098DAC3C27FB43EC7E /* SharedSequence+Operators.swift */; }; - A66B49B60C9D0471B8E41130A01C1807 /* String+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B1C0E5A2AF56FCCFCBBA2373F04E7C8 /* String+Rx.swift */; }; - A7873C6DF1BF7D59F9412A098EFE1D7B /* TakeUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6756FEC1B269A6CF56EF4D67F08E050B /* TakeUntil.swift */; }; - A8DBD1857EC662A08D54BBA95E42E2D5 /* Completable+AndThen.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1FE5441218FAE87F6E57A87233B4A0F /* Completable+AndThen.swift */; }; - A903683F7163C5A9A7E5C592A1E46803 /* RxCocoaObjCRuntimeError+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D17DBC203AF5B8E02A628E6920BEC64B /* RxCocoaObjCRuntimeError+Extensions.swift */; }; - A984AE396834F1EF8C1063A1B658151C /* Just.swift in Sources */ = {isa = PBXBuildFile; fileRef = F69A770E45055FD854F3FBD6979FC418 /* Just.swift */; }; - A9EEEA7477981DEEBC72432DE9990A4B /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 06FF1E1D8696715F0476C721349ABF4A /* Alamofire-dummy.m */; }; - AA7CDF00DFA1EAFF7F28CAF33FE5BC37 /* MASHotKey.h in Headers */ = {isa = PBXBuildFile; fileRef = 14527C0C3B63CC337E971AE1EE047A07 /* MASHotKey.h */; settings = {ATTRIBUTES = (Public, ); }; }; - AC297FE8A2A32B699310FD27F624C8C9 /* SerialDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 454DCFB400BFCA2DD8E4C2EC61190701 /* SerialDispatchQueueScheduler.swift */; }; - AC7D8A725626167C483F03B8BDBACF4E /* Reduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = A96B9F66608C047F1379AAE238F18C2A /* Reduce.swift */; }; - ACBE29C4BF8BAEA483D6EEA940FE5314 /* MASShortcutView+Bindings.m in Sources */ = {isa = PBXBuildFile; fileRef = 8090A9366A6F313575595425BA5B7C5F /* MASShortcutView+Bindings.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - ADE45FBACDF07286A544DC20605FE624 /* Pods-proxy_conf_helper-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = CE50445A73ECB9A2ED31A6FF93D45808 /* Pods-proxy_conf_helper-dummy.m */; }; - AE1EF48399533730D0066E04B22CA2D6 /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0DD3EF9C6F47C3257FC0151069723CD1 /* SessionManager.swift */; }; - AE4469ABED69AF5CCDA9F79F39CEC4D9 /* Never.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40EA3D109B9CB1C1BBDC2E9255B38366 /* Never.swift */; }; - AEA4F5986FE7926A033E0AF86F931282 /* Platform.Darwin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A5F9295B64270BDF4807BAED9FDCCF1 /* Platform.Darwin.swift */; }; - AF9067B9CDA7BD3E92AB740E2B4D4313 /* CombineLatest+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53901D4BDA021937287E33B4491AA200 /* CombineLatest+arity.swift */; }; - B09D2E9A8525D7217DA1233D0D3D3163 /* BehaviorRelay+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51EC586F86D6864B74B5211875AF2253 /* BehaviorRelay+Driver.swift */; }; - B253253B456FF86F30E0295D61253313 /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = AECFBD9B4972BED36C6D3ACC0177E0E5 /* Observable.swift */; }; - B2D921758B432E5510A4916377700E9C /* DelegateProxyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F9FFF0AB40ABBC9CD22047B6E5CC748 /* DelegateProxyType.swift */; }; - B2E47D0CDCC58CD8D3193EAD385B3D54 /* RxCocoa.swift in Sources */ = {isa = PBXBuildFile; fileRef = 729746443824EABA89E3E1088EB4F53B /* RxCocoa.swift */; }; - B5B98C960E1620AF04F5EB54A6F94060 /* Switch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 91E0555770D3BEC1183279EBBF63B6EB /* Switch.swift */; }; - B5C5B8AD50BA9EF13CF2FCC39D233BEA /* DispatchQueue+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B234AB54ABD1C374D34665C3DCD649E /* DispatchQueue+Extensions.swift */; }; - B64418D3CA2AEEF18D0EC5AD9331418F /* Do.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3413B9348C850EE5AE49C8B95B12943D /* Do.swift */; }; - B65FCF589DA398C3EFE0128064E510EC /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 970A1485E6688625754970DC8BBC7072 /* MultipartFormData.swift */; }; - B6B64BA6DF509EBBCDDA2E3D0FFD15BF /* CurrentThreadScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 938FC605EEA4041CA074FE17C4D53535 /* CurrentThreadScheduler.swift */; }; - B6D7EC205EBE545C0FFC283C99959B88 /* ObservableConvertibleType+Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53D3CF439796CD1B84572CBCBAAE5BA9 /* ObservableConvertibleType+Signal.swift */; }; - B7645B89B4EA9E40E73FE8453A104EEB /* ObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF3BEDFBB2197809F6BDAF649F36F20D /* ObservableType.swift */; }; - B7EF65DA3A34ABF3B41F50ADCD198BDC /* GCDWebServerFunctions.h in Headers */ = {isa = PBXBuildFile; fileRef = 1056A640AEFE50B38D2344C0B944DC50 /* GCDWebServerFunctions.h */; settings = {ATTRIBUTES = (Public, ); }; }; - B8B5444B935D4EB27FB9043B91B7051E /* LockOwnerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2F7E00EE5AC554A4695B58D3E0EEC68 /* LockOwnerType.swift */; }; - B9ABFFC64C4C6D69E54B241E66628A05 /* RecursiveLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = B55BFBC972E986BB01725A95A9860DA2 /* RecursiveLock.swift */; }; - B9C213FE3345C49943F292D94145CBC2 /* Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88AACF5B7E188D3448847253899BFC8F /* Delay.swift */; }; - BA323A31F89C4B1236C98E5E097BE573 /* PublishSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 79369DACA0CF3D56E9D4D213125DD2D2 /* PublishSubject.swift */; }; - BBEFE2F9CEB73DC7BD97FFA66A0D9D4F /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEF0E141DA73C02E3495E9BC4F3BCB79 /* Validation.swift */; }; - BE5C67A07E289FE1F9BE27335B159997 /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C658B994B5D0A61D71450AAF4863AC8 /* ParameterEncoding.swift */; }; - BF4EBAA751C53BA5462FF75957BF1A89 /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3031DA85910A1DEDA7065204F6B9BBE1 /* Deprecated.swift */; }; - BF9A718095FF8B6D50B86CE5E49D2806 /* Enumerated.swift in Sources */ = {isa = PBXBuildFile; fileRef = F77DE488C839A9ACAE7A7BF4C24036BC /* Enumerated.swift */; }; - C05242C7AD45BFA7D14EEA269E8F77F8 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E5ED856E0033C185BB3A1CFF513A42C /* Bag.swift */; }; - C06EE84D23391E9FA94864DEDE34F548 /* fr.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 68B50473C6A5B2B637DC2178073B139B /* fr.lproj */; }; - C35E5A2FB5AF7879770EA0DFF62DDB8F /* PriorityQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 466571AD788ED5DE02B15FD2D5AB0E3D /* PriorityQueue.swift */; }; - C3DE1F5F412BB52D0D46E179A69B0D58 /* AsMaybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D0C71FC59A714120E705919A119EB9C /* AsMaybe.swift */; }; - C3E79028E8D9C078CCC8F7B5F6B63624 /* SharedSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68A72BF8AF1DC1EC8C18BFA79BE3799F /* SharedSequence.swift */; }; - C48FFAB1DDCF9FDEE249D169DD3AB317 /* NSTextField+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 877FB023C6C79A9CB7DD34AAFEEB6434 /* NSTextField+Rx.swift */; }; - C4BF841C95A8E72CC6FF74F77BD92F0C /* NSButton+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB8175F2ECF55A3974C3B9F8F610B7E4 /* NSButton+Rx.swift */; }; - C50FA5B211B8916770FBE55623B83DA4 /* MASLocalization.m in Sources */ = {isa = PBXBuildFile; fileRef = 6DA5EAC6F4067B7529AE728323D52317 /* MASLocalization.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - C5ACAD7575831DEE4FF98E4372CF0BEF /* SchedulerServices+Emulation.swift in Sources */ = {isa = PBXBuildFile; fileRef = E356F07902E984F6D1B28C8BCA923455 /* SchedulerServices+Emulation.swift */; }; - C6B65F4F3D935F320EB1186D15FCD725 /* Sink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88AC45588E239E491BA98259039A6802 /* Sink.swift */; }; - C7E42F03821DCAD169FB9E5C2663C873 /* _RXObjCRuntime.m in Sources */ = {isa = PBXBuildFile; fileRef = AE6FE24DA6B6C599439A0CD35E6C0C39 /* _RXObjCRuntime.m */; }; - C96E54153198E59FF0F8B9F7408523E0 /* GCDWebServerDataResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 25BD92FA972425CD9706F8177394D7DF /* GCDWebServerDataResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - CB6D60925223897FFA2662667DF83E8A /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 874D86BD8C4CCD8EC1708994A7C75D5A /* Response.swift */; }; - CD97073476795E5EAA07C91A7F7890D2 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA9A1A86E1594EEC96C2B7214E16E50F /* Cocoa.framework */; }; - CE3433577AC6A3A699828941BED494AD /* InvocableScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1384B3A09ECFD78F3EFC1FE31AF7DE8D /* InvocableScheduledItem.swift */; }; - CE72C87BA2E459F034007E66425F212A /* Maybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = F735EC7A418D45C70CE0818AC93B4BA3 /* Maybe.swift */; }; - D047C60851BFC9D2C493A36A4EF177E6 /* CombineLatest+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = B98A2E7455847993E52C3245DF62ACCE /* CombineLatest+Collection.swift */; }; - D14843F20202C1CD6FC26520F816EC1E /* NSObject+Rx+RawRepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B4668396025D7B53E3928CAD15C1E28 /* NSObject+Rx+RawRepresentable.swift */; }; - D2B04C075D6CA6AF10C35D8BF7DEF0D3 /* GCDWebServerFileRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 125D906DA6D12CC4B558691B8F324B0F /* GCDWebServerFileRequest.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - D486060C6A0F9300A1680DC208841BE8 /* Bag+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDECDC826427AB1333B1485F32A721A3 /* Bag+Rx.swift */; }; - D491E71A28D78BC00368C3F5EFA16EF6 /* NotificationCenter+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = FCAC7C3176AFDC0CD3DD5D9184E33909 /* NotificationCenter+Rx.swift */; }; - D4A99917EBD151044BFA8E751E1250E7 /* ObserverType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C4B04EEA1AC1BE33D71036DEBEBF937 /* ObserverType.swift */; }; - D5AD134F7DB2BF3A1ADEAED307320E0F /* NSObject+Rx+KVORepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFF605517B8B672280D85EF59BDBBF89 /* NSObject+Rx+KVORepresentable.swift */; }; - D63E514E26A060F7C90A92AE8E9B49F9 /* GCDWebServer-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 549C9311455C020E76C0D8304E77DCBB /* GCDWebServer-dummy.m */; }; - D698FD4BE7CDC647AF0875009AEF8F75 /* Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 91CE07E2C296F1B3388DC2668BAB1341 /* Zip+arity.swift */; }; - D6EA93219364CDC135BAFE63084F6361 /* es.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 517A68D17E290C18DFC53F4AECCE8C21 /* es.lproj */; }; - D7524216B4C0994A50624825DFB7CB6B /* GCDWebServerConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = B458372D1D2009A7FDC10C7A5379CF07 /* GCDWebServerConnection.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - D80D125190DBE2395B2038A0E58CE8B1 /* SubscriptionDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6958C5792CD090D53D51F45E3FC8391 /* SubscriptionDisposable.swift */; }; - D9C652378242BAE39E7190AB1479615D /* DefaultIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = D13F2EDEB0AC07D152FC818243513146 /* DefaultIfEmpty.swift */; }; - DB94D782C6F193FB6F56D52926F2A84B /* RxCocoa-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = B8FB3328120B8DA4A4A0E2CA1B29F188 /* RxCocoa-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - DD0FAF2DB130AB4B3459135864A9A8AC /* Timeout.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF97805B59E93B8CDD1F35ADC2C1160C /* Timeout.swift */; }; - DD8CC605B5F5ADD0C2AE422ACCC55F1C /* SingleAsync.swift in Sources */ = {isa = PBXBuildFile; fileRef = 239930698028F8A7F8F0AF8660885A40 /* SingleAsync.swift */; }; - DDE3C9634B3BA4568D8BD96898046373 /* RxMutableBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7C21F7B579D31839F9317289084E4FA /* RxMutableBox.swift */; }; - DE24C629B3DB152EE4924B56E3CC59F5 /* pl.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 01EE31460870DAFD92CCDA3D6C827B67 /* pl.lproj */; }; - DE92C75444AC6056D4B04914CCE93EF9 /* Using.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA32EF7645C489DC5E33892504DE253D /* Using.swift */; }; - DEB685D908D2D7D908A292A761456A8F /* ObservableType+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48320B8075CDD3A66743F2FB1C0AEE97 /* ObservableType+Extensions.swift */; }; - DF2762B53F71DBC62F8CE6D5A89E7461 /* _RXDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = BD319BD2D6840013A6DB5A5E61C57FD6 /* _RXDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; - DFA6E4455415B3EB3BB38A9F48EEB044 /* Shortcut.h in Headers */ = {isa = PBXBuildFile; fileRef = 3F7E8032E1CE431DD241906525558580 /* Shortcut.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E00B7623181A63716524D50FB52AF9EF /* ControlEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EB40302AC6F385C4C11271681C7BE07 /* ControlEvent.swift */; }; - E0FF2B53C79DE29F557295CD66849772 /* CombineLatest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 812492787E3005F375F66430EEFEB2D3 /* CombineLatest.swift */; }; - E1D2EC0D3A8E1454CA8723F3DB19BEDD /* Window.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4591C0BC6376C1566FEA09D9C716AB84 /* Window.swift */; }; - E25A92CC625C9F817B6E30D8BA3FA362 /* MainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CF4A5D83CF4FF7422C8E7F007410BA4 /* MainScheduler.swift */; }; - E4C1BCACA652B5F16936BD89A8C8F298 /* ImmediateSchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 257A51892B0489327105FAC5C85056BB /* ImmediateSchedulerType.swift */; }; - E5312C0FED7C61135F252D3A7A112990 /* MASShortcutView.m in Sources */ = {isa = PBXBuildFile; fileRef = 02C042C63C5C999AF2FB0BFB90543584 /* MASShortcutView.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - E560A21728B29AF234BD0F37AFE16F36 /* en.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 59F05446C5A1EF95AA5BF54D2E7130C0 /* en.lproj */; }; - E5A9C51D2B5CBE025C396CDEB5900BA2 /* SectionedViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6162331FD69499451313416F088EB1C /* SectionedViewDataSourceType.swift */; }; - E62DD91C60246BD1E4E8A0AF5D7BF0E7 /* GCDWebServerErrorResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = DB7869CB7726942306727ACBE0A6CD4E /* GCDWebServerErrorResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - E66F7AFACFC665B23022A09E46815B5C /* it.lproj in Resources */ = {isa = PBXBuildFile; fileRef = F79B729FCFF408FC35D4D736823C9C54 /* it.lproj */; }; - E97573A653DE3A4CB8BAC26FB7B3E9A9 /* MASShortcutView+Bindings.h in Headers */ = {isa = PBXBuildFile; fileRef = 173CDFE8FFD9A8EF4825486DCB53A7A4 /* MASShortcutView+Bindings.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E9BA2F04B8242EBC70AD366755DDE682 /* AsSingle.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF2D048928B85C0B72DFDA760FAC837E /* AsSingle.swift */; }; - EA4470F28E55838D29E625ED1F2EDCA5 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E8515AADD6430481FAC8F2DD92FE0F8 /* Bag.swift */; }; - EA6D2E46B967F447FFC46520EC328B5E /* GCDWebServer.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C34C0B46CA55D9826447C6EF5667B77 /* GCDWebServer.h */; settings = {ATTRIBUTES = (Public, ); }; }; - EBEFF85070E25F0A581B7BA1E08138AC /* Pods-ShadowsocksX-NG-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 24B01D81E3D7058FA14A053EC19874D0 /* Pods-ShadowsocksX-NG-dummy.m */; }; - EE3A79FAA60A198321767854B60B772F /* MASDictionaryTransformer.h in Headers */ = {isa = PBXBuildFile; fileRef = E66E142759BB10864774D2C94E961514 /* MASDictionaryTransformer.h */; settings = {ATTRIBUTES = (Public, ); }; }; - EE85F313D5EC70842C812EB16038F4F2 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EFD468F10CD22B3EFAB406DAC3FCC7C9 /* Carbon.framework */; }; - EFD264FC408EBF3BA2528E70B08DDD94 /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1325C66E30F87E4F665AF154722DABD6 /* Notifications.swift */; }; - EFFA4247C90B98FD9160F30905A64569 /* cs.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 5CC3D4BB2BA8F24225B176DDE03F8307 /* cs.lproj */; }; - F00844DA1200A12EE14C14E23E2BC859 /* ScheduledDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29D5C9E52C36A6630A4B5F4A54F3666E /* ScheduledDisposable.swift */; }; - F03E764DDC08BFFE403CDE649961A182 /* Create.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABE0B812B00B54AA2F6982337A7172A2 /* Create.swift */; }; - F233490E2120C2D6637CB3F6F8737F5A /* Zip+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = C558DBA8867D3525206597226AB7FEAC /* Zip+Collection.swift */; }; - F25EB58E105AFB65A62E5B4D670EC3A4 /* Amb.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FF0F128359723A54E21FEBB2D99C657 /* Amb.swift */; }; - F2853E97BDDC82B8F91AE2954D27F775 /* RxSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = FBC4E57263B9AAECCE6AE5CA60FBB422 /* RxSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F333C550B300576B6D1872CEBF2DCA56 /* Skip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 091B320AF46DFF5E52B1CA91938163BC /* Skip.swift */; }; - F359857602B1D4C91B4AC3D1A2CDFE1B /* GCDWebServerFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = 78BF2C0D1D2976671C6F01E7CF57B7D8 /* GCDWebServerFunctions.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - F3C91131A98744C6A84091DEBE562A83 /* Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37302F3E1098B88606F9963B2BFF7A3F /* Rx.swift */; }; - F44386819D44846A436139CEF3D372A5 /* zh-Hans.lproj in Resources */ = {isa = PBXBuildFile; fileRef = E66FAB44C7A517141189FD000F9B5DF5 /* zh-Hans.lproj */; }; - F4E2663E1F8C4822B9F1CB7DF2D20D49 /* Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33710F9F62AA2B36412EA7B08233352D /* Debug.swift */; }; - F6BECD98B97CBFEBE2C96F0E9E72A6C0 /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E17FA1477E37C745A33298D5655B877 /* ResponseSerialization.swift */; }; - F765730BADD93DCC345E2DE56E6C62CA /* CompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9445256D5E0C36ADD934F62A67B04A09 /* CompositeDisposable.swift */; }; - F8B3D3092ED0417E8CDF32033F6122F5 /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11C843F0A8CC61D5B0B5CCFFC9B6EE77 /* Alamofire.swift */; }; - F94ACA6AA0DD416E5BF05E2425E5F2A6 /* MASKeyCodes.h in Headers */ = {isa = PBXBuildFile; fileRef = 814650269499C22D7A00826E5401B231 /* MASKeyCodes.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F9E086C2872C233495E02147B2EB4115 /* DelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CC38924038209EE8DA70D12014386B4 /* DelegateProxy.swift */; }; - FB6F90016D5931C84A6C6246AA8FC589 /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8EC9ECCC54FEA683BBDB8B5CD94124B1 /* Deprecated.swift */; }; - FBF219CBB84DD6F373B818708C889C9D /* GCDWebServer.m in Sources */ = {isa = PBXBuildFile; fileRef = 1C34DF9211C78641101C8029D821282C /* GCDWebServer.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - FC370E0DDDC82C67228A592097A39548 /* PrimitiveSequence+Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24D58CC8AA50BE13352501DE5BA68B94 /* PrimitiveSequence+Zip+arity.swift */; }; - FCD2C753E6D8C65EBDC798994D1CC902 /* Repeat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 94342D18D6FF2890EDEEBE3520A6E66E /* Repeat.swift */; }; - FCE8C2F9D08C36D48A6423761DEF3072 /* DispatchQueue+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B790A80F95F23886D51E59CA3075E0B7 /* DispatchQueue+Extensions.swift */; }; - FDACBD92C66F0C5D0F33FD059BCB35FD /* _RXKVOObserver.m in Sources */ = {isa = PBXBuildFile; fileRef = 0137F5061A6992367D3A03EF05697F7C /* _RXKVOObserver.m */; }; - FDD7A9BACD4F983FAF4443179C5DD53E /* NopDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 294B1F176E9A1CBCB03CF68E8A428BFB /* NopDisposable.swift */; }; - FDF45F406FE3B124880C5ABD4FC68FF5 /* URLSession+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD54960D651138A3CA4F03327ED04C1E /* URLSession+Rx.swift */; }; - FF48776622396EC0C1D7776DF09781EE /* Map.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DF905835162609C61FE7431CEAEFE06 /* Map.swift */; }; - FF647F4502B0AE29095FA14A256612EE /* _RXKVOObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = A35868FCBD5266D702CEA4A6E65DF160 /* _RXKVOObserver.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 011D8A5668D7EB19D8E3CB7D9640AA21 /* NSImageView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE4D4254E7BF6ACFAA307212458040FA /* NSImageView+Rx.swift */; }; + 01CE6BD23BB5D82B5F6488A03ABE628A /* Create.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BAB8B3384C32C2632F1C3DFA4B118F6 /* Create.swift */; }; + 01EE3DA00A9902B8F95E8F63FD9B8B58 /* RetryWhen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1612CFDD002F4B0AC395F0217039503E /* RetryWhen.swift */; }; + 023E25137FE2A7B0742E59BBC4CBA61F /* Debounce.swift in Sources */ = {isa = PBXBuildFile; fileRef = A629CDD24AF9307B7373201BB35B6ECF /* Debounce.swift */; }; + 027392317FE52FB220E6E444A24737EB /* MASShortcutValidator.m in Sources */ = {isa = PBXBuildFile; fileRef = 5E0151F462BF0AF0A35E6786D6C1F577 /* MASShortcutValidator.m */; }; + 027FF0C2F2E777CF51274107C4F63F1F /* ObservableConvertibleType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65FFAB74D3108D76318EA4F4A9992EDB /* ObservableConvertibleType.swift */; }; + 03D2C11CCA768056C2F9F003E29E201E /* DispatchQueue+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 538988DBA7181A56C802219FDCA9FA53 /* DispatchQueue+Extensions.swift */; }; + 053340CEED7468CCDEC4A6370135D8EE /* ObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3184A63618E8158F780B9479D58AF99E /* ObservableType.swift */; }; + 05A735A66C7A8B32DEED40D3B8C17C76 /* Empty.swift in Sources */ = {isa = PBXBuildFile; fileRef = F302AAABBBBE3D6EC60D1DD8CC05C6D5 /* Empty.swift */; }; + 0676E07D844D50CF4505D20DE25EBF6A /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 82EBF3FEF6DB5B33828B9043A01A98F3 /* Cocoa.framework */; }; + 0678B90AD6B6082C2A20EB9240655B76 /* ControlEvent+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1AAAFEAAB56AAD738235F68EF3B9D64A /* ControlEvent+Driver.swift */; }; + 083DFF2A8257F2E9540362657929656C /* ControlEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = D93C344C4C18CCB31E7C612CA1D9C919 /* ControlEvent.swift */; }; + 084902A36379E77E2913680DE9D104E3 /* First.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F7B3BA16C26E03976A9E118CAB3FA56 /* First.swift */; }; + 09B8793FC8FAB2B92E7DFD3FD271EBEF /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75C134F788D816D15D57A2D18B4FB891 /* Queue.swift */; }; + 0A53115AAF2399246743B41ED6E5D5A5 /* MASKeyMasks.h in Headers */ = {isa = PBXBuildFile; fileRef = DE24812E221CDFFB5205BF6E892D589F /* MASKeyMasks.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0AE51C9D714A16E946FE71BFC7500269 /* Take.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2898AB0C6A007CCDE297E41DBBE4F167 /* Take.swift */; }; + 0C20EB076556CC423E8145F5FE0B914C /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A444399B751E3F7B0426D48C6C2704A /* SwiftSupport.swift */; }; + 0C5E11DE24DAA737704B355F5F2F3426 /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 118D091E5C6B9D52CB5543E9F5EC00E1 /* ParameterEncoding.swift */; }; + 0E2E9D644BE88DB7FA74E460DA0686DD /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFAB70ED5E1150ADF0281CD817202D88 /* Observable.swift */; }; + 0E4BC1DF7EEC497DDDE361BF5AD6F880 /* SchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 471603BE2A1B99AAA1F605AD468A72F9 /* SchedulerType.swift */; }; + 11EF5C61BE19A4E3F5C1F6057D97B29B /* RxCocoa.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78FBB4CC86926BA09E37559F66D42AB1 /* RxCocoa.swift */; }; + 12FD49A8563BBEF869A9771BC62728E9 /* MASShortcut-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 21B9CC8D2D4351D1C736B96CF7352118 /* MASShortcut-dummy.m */; }; + 13283107A9C06569A786304D9A59626D /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B96E67605923D3489CF58CC32695AA2D /* SystemConfiguration.framework */; }; + 132E0F619E4338E5D1B27E4C72076B3F /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC35ACB06F35C9F9137AC022D163405C /* Notifications.swift */; }; + 13C1CE0E8AA9ECEC60B23849CF09A4E0 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 328B2C0D0C2801DEB8E1B0CB8BC2AB26 /* Carbon.framework */; }; + 16596C83B6DBE022B4470FE43C0AC722 /* ScheduledDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9713B9CAC03327DA33693BA26A0F4E62 /* ScheduledDisposable.swift */; }; + 1868345555E42BC30895DCE50D6F1310 /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C263CEED8FEBEBA9E5ED42A571DCBAC /* InfiniteSequence.swift */; }; + 1945CD5D63A1C164AEAAA9A33E85571E /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 486BEA30038CDF0DEBAD9828A2E17A9A /* Alamofire-dummy.m */; }; + 1986B50C74F1697EA43F68335C93CEB3 /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0381AFE52669B9575C47B566ACDDEDC7 /* MultipartFormData.swift */; }; + 1A93AAE263F17A9F7CCE98C9EFE312C7 /* Observable+Bind.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3412FD7CC7AFAA07876D64625DF8FA8E /* Observable+Bind.swift */; }; + 1C11628696BD0C889E0A4FC6CA4B6922 /* GCDWebServer-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0BA23B93F7078237272FE6927584FDE4 /* GCDWebServer-dummy.m */; }; + 1C12C7D2A9A258BDCA5D921F8FB43858 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 82EBF3FEF6DB5B33828B9043A01A98F3 /* Cocoa.framework */; }; + 1CE5FF63F7ACED251179D16ABC92775D /* PriorityQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59E35493E3A483184D5FFB2036E99FA3 /* PriorityQueue.swift */; }; + 1D5606C6BD48C543FA0DB2C82B8791B7 /* GCDWebServer-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = E6C3D177B65F84B696697C60F97A8DD8 /* GCDWebServer-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1ED634081035209BE23CECD2AC078AEA /* pl.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 17765F70794E8148073628BF1A46C5E9 /* pl.lproj */; }; + 1FAEB66513E2610FE37D99FDD8F9E46D /* GCDWebServerStreamedResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 4069F93F454E2A1E193E29683F09840A /* GCDWebServerStreamedResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 201ED81D2166F3968ECB6E48DE0607C0 /* AsSingle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FF3A5DDF77CE0C90C1673EC3ED4C393 /* AsSingle.swift */; }; + 220BA570F3035336F7A313E21758E285 /* pt.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 5ADB1C3BE4EFC0F467DCA4A6810149DA /* pt.lproj */; }; + 221F057199246D7709DD91C950746B7B /* GCDWebServerMultiPartFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E0796DA988C10ACA64CF57C0C03993D2 /* GCDWebServerMultiPartFormRequest.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 22E8DE42AE23B3210B04D02E0AAFB895 /* MASShortcutView.h in Headers */ = {isa = PBXBuildFile; fileRef = 17CBF34AD83F7260974C867724C5600A /* MASShortcutView.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 241B04A01368320551B43056878256E5 /* OperationQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBB4AB7E7AF099E47EDB81ED5664A10E /* OperationQueueScheduler.swift */; }; + 267D280C61427E398672B58BE896DB9E /* Map.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33D696D0068DA801EB71A910D621AAF7 /* Map.swift */; }; + 276CF2E53E542CAA090F21247E6746CA /* CurrentThreadScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 111C7DF776927720315882DB26FC5BBB /* CurrentThreadScheduler.swift */; }; + 27C9CBC711B4605657682EAB85555EDD /* NSObject+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDB4A4C063CE1EF210E254829012DB5B /* NSObject+Rx.swift */; }; + 28D2240E242A5453B94AF56E0F834402 /* DistinctUntilChanged.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52BF43E2486A183668EA2F7D38FE98F4 /* DistinctUntilChanged.swift */; }; + 28EA125E86E7D01A57419BCC1B790D2A /* SharedSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0AC97FCB44A4D1C5C8DB2728DBE8C88A /* SharedSequence.swift */; }; + 291C68FE102994BC1A97E5BF35B7D1CF /* SharedSequence+Operators+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = C492AED829C3ECE9C4CCE59D7345E275 /* SharedSequence+Operators+arity.swift */; }; + 294475DD8EA64DF850E639B4CAD2C5B2 /* de.lproj in Resources */ = {isa = PBXBuildFile; fileRef = C473238BBA46728E853ECA6DC657B55B /* de.lproj */; }; + 2C61B040BA6A9A7AE66C4D9BA26D5520 /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D4B5E26C476B344C6D8CFF6FC4A5EF7 /* SessionDelegate.swift */; }; + 2C77F4707DB0E0D53780F8F8947D6620 /* ObserveOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1CBCD2E003BDE2BAA09350A80E738BA8 /* ObserveOn.swift */; }; + 2CAD7AAC3469DC34B3228B6CDFCD775C /* SingleAssignmentDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 115ECB3550DF888C7550F302E2254242 /* SingleAssignmentDisposable.swift */; }; + 2CB9C6B952E93BEA2374852977A8DF57 /* DeprecationWarner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C6A4FC4585A5649410CE0A0227307F1 /* DeprecationWarner.swift */; }; + 2DF006CC8E3C63990204E69368A177AE /* NSTextField+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 69DFCECA2DA77DAE2A2C434E84344679 /* NSTextField+Rx.swift */; }; + 2E479B49C8875661D4FF5339810F276B /* MASHotKey.m in Sources */ = {isa = PBXBuildFile; fileRef = A225E632BA30EEAA6D5E842E4A2C9FB0 /* MASHotKey.m */; }; + 2E725CDD67785178D7A6E0E04325CD75 /* Do.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3D3469A3044026BD104951B1BEB597D /* Do.swift */; }; + 2EC203255048349AB8DD1E17BADE0513 /* it.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 0079F2FDF314ED419382C2C30DE4939A /* it.lproj */; }; + 2F557426C66280E6EB6E54710FFFCAD7 /* DefaultIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = F81B4DA916899DDFA2772E61674477E8 /* DefaultIfEmpty.swift */; }; + 301B5027AE11A8E073E40B5F51712AF6 /* Catch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 745A70C304EC58D52DC715DB747D499B /* Catch.swift */; }; + 309F2CA8FA508077A891DE3B2C8D6CA1 /* SubscriptionDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8F1ABD0F2D464C40146ACF227569C46 /* SubscriptionDisposable.swift */; }; + 3122DE9B6C1EE8C88F53AF3227A7EEF8 /* Platform.Darwin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 673490A3FF56A2DE4C2610609D218166 /* Platform.Darwin.swift */; }; + 318FD4A3D5E0CB562CDE38499BB5C041 /* Cancelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EC92D258020E5DFC351490B403DE7A0 /* Cancelable.swift */; }; + 31D26B88A9D8B32DC06D10BF1A58C186 /* TakeWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F130BAD4D802F4A724FD0C28BD40B03 /* TakeWhile.swift */; }; + 31D2FAFB0B86937EE68B2CCD8E4E7E5F /* Completable+AndThen.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFC6CB4A62F10360B227B484260F3848 /* Completable+AndThen.swift */; }; + 332CBD3F6701F04264854877FEB72F8E /* PublishRelay.swift in Sources */ = {isa = PBXBuildFile; fileRef = D303E3D83E22FD1525FB8E4D2457EC46 /* PublishRelay.swift */; }; + 341878EA7DD42586445947D23F50B1D2 /* KVORepresentable+Swift.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC264F1B6B228DB4C74BDACA8C9D8AAF /* KVORepresentable+Swift.swift */; }; + 35185C5FB8524278300EB1CB6F1D2894 /* String+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B022E3F37B012E58AB109F19D9909CF0 /* String+Rx.swift */; }; + 3571F958A3907B3A806E62D50C2550D4 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA24D82F4D58FD5CB27352BDF333E409 /* NetworkReachabilityManager.swift */; }; + 35E4F87BB80C4585C5F18B851C373A41 /* RxSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 20739FDF831BB0F4991E635F037F4D53 /* RxSwift-dummy.m */; }; + 35E691AD4674B4E9B64B837F845F1426 /* SkipWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63526E356C51A8BE1118D01C6DEA5DBA /* SkipWhile.swift */; }; + 3685E20BBC5AFEA3BC80FE12732AB269 /* GCDWebServerResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = D321BE2B3A6979DBD70099045ADF171D /* GCDWebServerResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 36DED9F6B7737F022FB0B01ECE2BB88E /* GCDWebServerFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = A41B07B49552AF24E5D407B482F05423 /* GCDWebServerFunctions.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 374C03041AE988F0C5CE2DFB025C0CB1 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2F8BAAE4D41F40C0FB9261765471538F /* AppKit.framework */; }; + 385948C0C4BD131D4903844657737769 /* DispatchQueueConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = D83F47E54C3DC54EF24BA24B2D70BA3C /* DispatchQueueConfiguration.swift */; }; + 389C439D647C134D0FEF85AC777C6BB0 /* DisposeBag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9EE18AC0191E46D8EC72777A7E7FB2E9 /* DisposeBag.swift */; }; + 3A6AC9D4496C9F008E9341C3B35EF9BA /* PublishRelay+Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = C94C26FB4F7BF070740AFEF36696885A /* PublishRelay+Signal.swift */; }; + 3AAF3373D4EE3C69461F2C356D0073E5 /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75EE51BF0C4BD5FAF40ECA0E6C5217A4 /* Merge.swift */; }; + 3B8D861404B9396C0D3A8F330D74EE7B /* MASShortcutBinder.m in Sources */ = {isa = PBXBuildFile; fileRef = 5329DC6003732A15AF3A39647D60E307 /* MASShortcutBinder.m */; }; + 3BBEC4A24B60E2276CBC26E555F64F41 /* GCDWebServerDataResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 3174248008864D7991FDA942A339917E /* GCDWebServerDataResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 3C7FF0651E1F27A9DCBA1E2354959EDB /* NSObject+Rx+RawRepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C27FEA407D98B278E6001B742691810 /* NSObject+Rx+RawRepresentable.swift */; }; + 3CF9212B8055E9F4296325D5968B29C2 /* AsMaybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6629956253480EA477A1525E57799282 /* AsMaybe.swift */; }; + 3D917B5B0C0A18BCB387B7C67176A336 /* Switch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C96563EB6945D0D606E685F804386C4 /* Switch.swift */; }; + 3DBAFD54724CDCAD09DFE55BC7D4DDF3 /* Completable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A3DC903F9DCC3992EF284E7BAF21F9A /* Completable.swift */; }; + 3E2FF4CBA1E2C3A36060CB61A25F80F7 /* BRLOptionParser-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9676CD91CE4566CA748833BF45C9E47A /* BRLOptionParser-dummy.m */; }; + 3F2178F39696663BD474D0A7FF74DA5E /* ScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8B59616294393CA99FAFFB5B1270A6E /* ScheduledItem.swift */; }; + 3FD2169D593D27C3D7748E65A940EFB7 /* Platform.Linux.swift in Sources */ = {isa = PBXBuildFile; fileRef = BAF3CA88F186E7EF40DF399A454757DC /* Platform.Linux.swift */; }; + 41AA88C160103369F8C1227E48ED5582 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0F3EB47555FFAA0DA0C139814141047 /* Bag.swift */; }; + 444F1B5C26B7B4F46158B9C54AB3D29E /* ToArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = FBE439EFC638971FD247FBB52CA99A9F /* ToArray.swift */; }; + 4704E9B042CD96198A37C0DEAA90F13D /* AnonymousObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89228EE0C2EA97AD1FF75E74968DC294 /* AnonymousObserver.swift */; }; + 4892C3EBD345FAE187A5E15D7FA19CBE /* GCDWebServerFileRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 22ACD934B2217D0B238C7FC56C3BC0A3 /* GCDWebServerFileRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4940AB8BC3936DEBDC02BF49FE5E97A1 /* GCDWebServerFileRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 63D72C07A6FFB7640878581F89B95DD0 /* GCDWebServerFileRequest.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 4B61D6280D8104C8C94D8A2E38932FD8 /* MASDictionaryTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = F4A7A90485C50CEAEBCB40B7A7AC37AE /* MASDictionaryTransformer.m */; }; + 4B9B87B95A8879430CC52C18DCEDD999 /* RxSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C040A24C79BECD83D8DAEBB732CA2C4C /* RxSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4CD392944AA69406F1AA9D7050AE6395 /* InvocableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = A482C79B8AF4BC4DCC6F41EC168ECFD6 /* InvocableType.swift */; }; + 4E1DA2C0E69E355160AB4FBD45D58B49 /* Zip+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44B1F3C611C57DE6A4D945624BD46CDA /* Zip+Collection.swift */; }; + 4E9A89CFDE8BAB82ECCF1C7F9F097EAC /* Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2903E99F494AA6ED5682829A7DD6746 /* Zip+arity.swift */; }; + 50185BA242844E837BC42B4955AD82D7 /* ru.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 9794100E1126279BFD7E0C9A3B6EA12D /* ru.lproj */; }; + 511F5B5244A4CB3ED46CEFE35E521627 /* MASShortcut.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 230F8208BE63C052A548A7D41A1158B2 /* MASShortcut.bundle */; }; + 525DB8EA2CF023DA5ECE57D0D545B70F /* _RX.m in Sources */ = {isa = PBXBuildFile; fileRef = D4BAFDA36ADAA0AE1A0AF50E9BE316D4 /* _RX.m */; }; + 53791F5E5F07400F92CFDFC89A432305 /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 336C288E815BB0146FB5044555064273 /* Validation.swift */; }; + 538B8D7C14FE9DD26B5BF85355ABB93B /* MASShortcutBinder.h in Headers */ = {isa = PBXBuildFile; fileRef = 50E4F8C1AD8BDBB264641AE0A61F660A /* MASShortcutBinder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 541EDAD462653C37513336E0FA10089F /* PriorityQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = C05663B4BAFA8BAE8DD2907768B939E5 /* PriorityQueue.swift */; }; + 54CCD54B8966A69C6B123D67F423D127 /* SynchronizedDisposeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2CBB975A64A93ADDB9C98CE015D6EC9 /* SynchronizedDisposeType.swift */; }; + 54CD223EA54101A1118255D97FEDC22B /* sv.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 7F0C1BBE64769E8DB40F570A0BFF582F /* sv.lproj */; }; + 5559786A45440341BBF5FA2C59490F94 /* Window.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75C074E6CE82F80BD31F5EF77C296905 /* Window.swift */; }; + 563BA31DA1D7982CE6ACBE2B23724F94 /* Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26A4C5501C41F777203D2271A2F2E0F6 /* Signal.swift */; }; + 5683409364F0736345FF7863835771D7 /* SharedSequence+Operators.swift in Sources */ = {isa = PBXBuildFile; fileRef = B98F8BDDE507E7BD87B849BAA6DB3EB9 /* SharedSequence+Operators.swift */; }; + 56AF76478DFF0A844D5F4FFFB6CC5B98 /* SingleAsync.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB783DCBD874ACDBC21A714E04D8F52E /* SingleAsync.swift */; }; + 591E1BC68C4667E57AC918E48BBDDA6E /* ObservableConvertibleType+SharedSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78610C90655E1113118379D3EAA0451C /* ObservableConvertibleType+SharedSequence.swift */; }; + 5989329B01C0737EFDB490C5A771FDC2 /* GCDWebServerURLEncodedFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 3EFEAEC4BB3538D1D22890B92BB6F890 /* GCDWebServerURLEncodedFormRequest.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 5A9C8B1937570C10A566CEC226A37455 /* Reduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = D86D1CC951C7C383E8872CF5549F6C8E /* Reduce.swift */; }; + 5AFF64CC5D0948C435900098C1F1AF57 /* SubscribeOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = D06011ADC7F3A1790E57DD5652824B0A /* SubscribeOn.swift */; }; + 5C99A371F14E044D11D3532C3920597B /* Producer.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD428F0756402A68D38A9EED8F928150 /* Producer.swift */; }; + 5ED12989C4D24FDA28EF9297382A2169 /* nl.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 7362E3F349600D8BAEF12104995259FF /* nl.lproj */; }; + 5F84A80201CD5399840E697218154F7B /* AnonymousDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC5ED92592EEA919122E2FBD46851375 /* AnonymousDisposable.swift */; }; + 60FD8F0AF2C5FB1A2DB03113AB3F9A6F /* Pods-proxy_conf_helper-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8752D17209EE8AAD7681107D6444113F /* Pods-proxy_conf_helper-dummy.m */; }; + 614B5FC036650C47C42C61EBA247DA7B /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A592F999686D738A8A59DF187637CA5 /* Deprecated.swift */; }; + 63108241AFEC143A7CE5A55A15B88C5C /* Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB93579EEF7A09B9E38054B8578C9D11 /* Debug.swift */; }; + 63343FFD356B9EDA573A9F4F14D01D03 /* CombineLatest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0479B8153C331BBDA5162E84458371D1 /* CombineLatest.swift */; }; + 639B436DAD36B619E19CD96EB6BEF252 /* InvocableScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3594AF696DCAF73A6B34289B67606200 /* InvocableScheduledItem.swift */; }; + 64744C911253C3E01461FAD7C935C8D7 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECED9A0B941992178458CFD2789E1C3 /* Result.swift */; }; + 6569E155FC66240D716FE118A0A38D23 /* Sample.swift in Sources */ = {isa = PBXBuildFile; fileRef = E65D8EE7AF8AF72DD4DF0CCEE4C77A37 /* Sample.swift */; }; + 66F179A156E9DD69FE7A545D9FB16566 /* AnyObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7EB722E3B048C0455FFA251225B24F9D /* AnyObserver.swift */; }; + 67F7B3E4493E34621401131D603AC048 /* NSView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 383D3A040BF1C400C324B79A7396A910 /* NSView+Rx.swift */; }; + 6809229B402FC6C91774DA8664AD4F2F /* GCDWebServerRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = FD70E833144479E2A5AA429BA6BA9C5B /* GCDWebServerRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 681004138A52D29E6E30A47B5892F239 /* MASShortcutView+Bindings.m in Sources */ = {isa = PBXBuildFile; fileRef = 79E1CB7F314AB4C9902E146240A90952 /* MASShortcutView+Bindings.m */; }; + 6812B06F1732B2AB72E539A45F778D26 /* Concat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 229E93EB9F92094DB696CEE91F99C456 /* Concat.swift */; }; + 6954B8273B86139FAEB8E0F2C8E6116E /* ElementAt.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3BC812E63EBB9A1BE8F189026115879 /* ElementAt.swift */; }; + 6A37140A2F79D99F1C39014CE9982C84 /* Using.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44EF13F321A3D94E22A90C3C1F10A3D0 /* Using.swift */; }; + 6AEE1E5DF21EEC4D1D719D16A42485A3 /* AsyncSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = A839CE99A0200CB2995E3549F9C5FBE0 /* AsyncSubject.swift */; }; + 6B43ED637D62A4C79BAF2EF7720C4747 /* ConcurrentDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EDA6C2661B5E0A2052233A8317B2FCD /* ConcurrentDispatchQueueScheduler.swift */; }; + 6B6B0744215081B56B360A8C5F205F53 /* ControlEvent+Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC0C7A7BD6EE3E64A6CABC0AC01DEA80 /* ControlEvent+Signal.swift */; }; + 6CA90C27C8BC46F957F5DFA16DE1F6DF /* RecursiveLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = E71C2EEFAC75B0322274FAD501E14B5B /* RecursiveLock.swift */; }; + 6EEF2F81A2D05CC00F27FCB98BB78E55 /* BehaviorRelay+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ACE6D9E8FB2E240CB7793D4F491AF48 /* BehaviorRelay+Driver.swift */; }; + 6F03B4DEB6E7911B4FE78F0EFAB05DA3 /* MainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 972F864D3684F69871952707323389FC /* MainScheduler.swift */; }; + 6F75BDF36BD15F6889C0C1F8F53C65F3 /* Platform.Linux.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39BF39E019699D7BF4AF2283A9934E68 /* Platform.Linux.swift */; }; + 6F7AB23C264C288E6EB82C7FB426D6D2 /* en.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 9305CF18E7BFA5FCDDF474A3A620ADEB /* en.lproj */; }; + 6FE5A36731EEA4F5D75A1DABC532A761 /* NSLayoutConstraint+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB38AA80740D5626F6C00658547F42C3 /* NSLayoutConstraint+Rx.swift */; }; + 702C4E98D87BA0D04C126E41D7053EF5 /* ControlProperty+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = A73DA8FC3EC519393FA7257C0DBC08F9 /* ControlProperty+Driver.swift */; }; + 70BE0E3BF717507FE4DD84F100179435 /* CompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5A188D8015FF2598B5B115664C8F68A /* CompositeDisposable.swift */; }; + 71E3C0D80BB9722F607C0AC2AC77AD6D /* Generate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7289A74DD8475BF9F706057FE4C2390D /* Generate.swift */; }; + 72C37916698D08B9EEA007C62556129B /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C1C1DD9817840AB191BD19AC537A360 /* Event.swift */; }; + 745C986934CF24FAA1E952B709541788 /* Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6D11F1F9EBFD924C95404221C791A6A /* Driver.swift */; }; + 752D0C96FE2144251DF2441CED062A06 /* ja.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 5FE698B84CF36F03C591400708F81380 /* ja.lproj */; }; + 7599841888359DCE8152EF1AE1B59757 /* _RXKVOObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = DB32400B5D77925D116636110300F088 /* _RXKVOObserver.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 75FDE407AE76F5B3F25862D02BF8EFDB /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C75A980446438AE106AEB35138F54A85 /* RxSwift.framework */; }; + 76981DA1EDEE940519860BDFD53F8745 /* SwitchIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2898467C057BF01170A471C2FC97CEE2 /* SwitchIfEmpty.swift */; }; + 782A03F46C3FEEB4EC333D3D458ADE29 /* Pods-ShadowsocksX-NG-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CD95085BFAA31431686824B236DB9319 /* Pods-ShadowsocksX-NG-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7874ED6812E4ECD587B3494B42649DFC /* MASShortcut-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C706D1A2AFEEDD4BA8727BF70C3CE95 /* MASShortcut-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 78F3197E081D4119D4408F82FB6EA7F2 /* BehaviorRelay.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE40E1C28C0ED004EC66B24A11D003A1 /* BehaviorRelay.swift */; }; + 795393C7220BA106B9FE98B35E260F70 /* ObservableConvertibleType+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC5891807424EE31938582ED13293B62 /* ObservableConvertibleType+Driver.swift */; }; + 7B4306650BA9D20E721F32F0583A5966 /* ko.lproj in Resources */ = {isa = PBXBuildFile; fileRef = C0C4736BB8B495059B442618BA5752DB /* ko.lproj */; }; + 7B6523D7FA42A0460FB4CE8D13F5FBFF /* BinaryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B6DD0B1129B9AB5BDBB166F65018490 /* BinaryDisposable.swift */; }; + 7BA10A26B371B9647D6084EE42793ED9 /* MASShortcutView.m in Sources */ = {isa = PBXBuildFile; fileRef = F7E7E3B6C10726C992A09070284DB7B6 /* MASShortcutView.m */; }; + 7BE30C183CA9A016F2FB88EE3084F951 /* Sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22588616BAABD051D4BB21DC9F63F0A8 /* Sequence.swift */; }; + 7C4A42A6326D52FAA6FAC33623BF5FF9 /* GroupBy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 857CE58AB90955A76A17A547DE620E7F /* GroupBy.swift */; }; + 7C503D266F5974D82BD0A60DC4225FCD /* MASShortcut.h in Headers */ = {isa = PBXBuildFile; fileRef = B609F310C49D10770B5FB391CDAA5098 /* MASShortcut.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7CB442933B3C96F58AE9A8D5866A5DD6 /* Sink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C23644E46BE19ECA6B060B686EBF945 /* Sink.swift */; }; + 7D5AE7E56AC7636F1D00076095F57745 /* GCDWebServerConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = 1B69746C147C712C959C2E7AE6C7F5C9 /* GCDWebServerConnection.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7D6E5058E1D3B79330B224B48231C787 /* ObservableConvertibleType+Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9ED8A086BE8CA5BEE3E5C0D37A2CD14F /* ObservableConvertibleType+Signal.swift */; }; + 7DED517CC9069DD03366F81383143915 /* SerialDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C7C1392947617BEB20243D3A8B5C4B4 /* SerialDispatchQueueScheduler.swift */; }; + 7EA7AB5B1F0590AF84AFB4C681259A83 /* Enumerated.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7BA1D11655FE4B30506171E2CE70246 /* Enumerated.swift */; }; + 7F07E009A22327E25AB27C0F981F8788 /* ObservableType+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 432661022A89EF8459BE8FB7D35501B4 /* ObservableType+Extensions.swift */; }; + 80E012C2A2015806F8528178FB9DF4D3 /* Disposables.swift in Sources */ = {isa = PBXBuildFile; fileRef = B422395440185D1EF83278571E9A224F /* Disposables.swift */; }; + 8190CA8AD81A524AB88704089F9C39AD /* fr.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 4FA8313797668EC93B0C98D9A8F32A93 /* fr.lproj */; }; + 83956E20859CDBBE7BC38ABADE0170FB /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D64077070F9B8085996B83FF7C2D5CD /* AFError.swift */; }; + 845592AD96CB8483DC386AEDF2D3B48F /* Buffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76BD4617B51D3A46746C741CC790E51F /* Buffer.swift */; }; + 86BEB5F3D2E0A50F79D0EDD7F9C73C8D /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DD7F564E610842CC3A8742AEDB98AC2 /* Optional.swift */; }; + 87375BFEEF5DD77711B527A21CFA0570 /* ControlTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14E6D271BA2BAC998BEC96349915043A /* ControlTarget.swift */; }; + 8737CB32F7C27B2303F2CBFD4C19D5D4 /* _RX.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BF0A688C22F29DB903EF9A236ED7348 /* _RX.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 888C585A2F8726322E0BC00DC09E72B5 /* SchedulerServices+Emulation.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBDED7E5A4595D7859247206C13E23D1 /* SchedulerServices+Emulation.swift */; }; + 88F5FF298C4C3D2CDCA5EB7B0BE2B52C /* GCDWebServerResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = E52D6747AFDC0620384A0FCEEAD0E0C5 /* GCDWebServerResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 891D066B2A3C9C4CB0AB2BF10DBCB70E /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 82EBF3FEF6DB5B33828B9043A01A98F3 /* Cocoa.framework */; }; + 8951CBBB313C8C794FA1841F34202AD4 /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 490109B32A0DDE20F5EB889696DFE805 /* InfiniteSequence.swift */; }; + 8AFDA337729B5018B01946BDCD64910F /* Driver+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE59059EEA9DD611319BD64150DB48A8 /* Driver+Subscription.swift */; }; + 8BEDC2C0D907FBB47A65EE0E01DE2A59 /* GCDWebServerDataRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = F955A1C05E2E4CD1A90F9C0D51BAE4F7 /* GCDWebServerDataRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8F51DEA2A5487C5E0294DB4D4E0156E4 /* zh-Hant.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 14A4B4A0C592EB08A8DE41B67BBB1889 /* zh-Hant.lproj */; }; + 901D8E9CC22C5E7FDB218557EBBB3559 /* GCDWebServerDataResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 77A567DE40FA2D3181D483C2E5929F11 /* GCDWebServerDataResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 90C5842904E656BF7A039C84F7FBFB32 /* cs.lproj in Resources */ = {isa = PBXBuildFile; fileRef = BB464592E309DBC6B1C32142F27DC205 /* cs.lproj */; }; + 91A9378F365989E46E76598435A650EA /* PrimitiveSequence+Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66B7C342C89B9B142E281D1DD6AD78A1 /* PrimitiveSequence+Zip+arity.swift */; }; + 931BBB8230A25161D5C37528A8F9FECF /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5931EBFD159B49E78EE1BB093CFE15B5 /* SessionManager.swift */; }; + 933FDA5970AA525D6CB92BFEBA2BAB4A /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8155B6EF42E8149F4CD7F0BC05D1950F /* Timeline.swift */; }; + 9531E77DE653809AD14A22A24211598E /* es.lproj in Resources */ = {isa = PBXBuildFile; fileRef = AF31FACAAF599D90A1D29D4D7516690C /* es.lproj */; }; + 95E4DC9EC6C3F40F6B1CE36C155930A7 /* WithLatestFrom.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2E9FD0CB124731BFBD756093E872FD1 /* WithLatestFrom.swift */; }; + 95EB285925E08BB131FF22D55C56E2FA /* ImmediateSchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A9FEE92CEA7F2A79EE5BE3CA2999508 /* ImmediateSchedulerType.swift */; }; + 960CF054CB54A14DFE94A441F50153E3 /* NSObject+Rx+KVORepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 134C64056AF906740FD1018C35BEF701 /* NSObject+Rx+KVORepresentable.swift */; }; + 97EF5791EF698C1FCBDD8B035392202E /* KVORepresentable+CoreGraphics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77962C4AC841E11BD3C119CD4360E5F2 /* KVORepresentable+CoreGraphics.swift */; }; + 987A52B558A731D9E5EAE255793EA0E6 /* DispatchQueue+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0539693C0F2FC077F09DC01D9DD9889 /* DispatchQueue+Extensions.swift */; }; + 98A929C8E9012AB167672714FFD2113C /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19E4CA80D5785F989D1F5D4C42C3FE6E /* Request.swift */; }; + 98B1F09F036284B2894F3DDA0186120F /* RefCountDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23CBBCCBDEE2DD59A590CDFEFA4CA98E /* RefCountDisposable.swift */; }; + 99ABB4C207FE146C78313E8A9A581FD6 /* GCDWebServerFileResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = A85201A2C8FCE9F2930DF6713A811387 /* GCDWebServerFileResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 99BAFF62363D520438B1E0F3448F7A4B /* ControlProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8277BA3F6A56D35A69BE1B109040BAAD /* ControlProperty.swift */; }; + 99C5C550C3E6F00811BA4C57B7D7F58F /* _RXObjCRuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = EEBE1A4DAC125D4D87965C8C63DA855E /* _RXObjCRuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9A52A556A72DB9F7BEB16B9818ED1236 /* SubjectType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35B7A19EB6F7D1969EA6A91E8AE6874D /* SubjectType.swift */; }; + 9AE25D49EBC96F6D6E68CF6D566E85D6 /* MASDictionaryTransformer.h in Headers */ = {isa = PBXBuildFile; fileRef = 04DF2DB4FF92576D769744A650441E74 /* MASDictionaryTransformer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9AE7E3531DC26BFE93CC0D52FF123B7D /* MASShortcutMonitor.m in Sources */ = {isa = PBXBuildFile; fileRef = E6B48AD4A8557828C3A241C1E1E32541 /* MASShortcutMonitor.m */; }; + 9AF34F771009CA842019CED30F0BDD3E /* NSSlider+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9580718B59112E917F818E1005D06AD5 /* NSSlider+Rx.swift */; }; + 9B185ED18916DCD9071E9F9916A9CCB2 /* TakeLast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EEF6B3F62DF72399DE21845AAB1C070 /* TakeLast.swift */; }; + 9CDFBE5ADC30DD07735EE7DBA9FD8983 /* BooleanDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3CED975AC8E9111F2EC08AADBE7354E6 /* BooleanDisposable.swift */; }; + 9CE546B41DF541383848AA3DAF0A76D6 /* HistoricalSchedulerTimeConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22AFF11BC84D7CDAE19F952ADC92C4ED /* HistoricalSchedulerTimeConverter.swift */; }; + 9D7607BC54363A90B707BDEF8EF1AA54 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 82EBF3FEF6DB5B33828B9043A01A98F3 /* Cocoa.framework */; }; + 9DE5D6962DFFA2F4FEE374E6587715FF /* RxCocoaObjCRuntimeError+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 69E916AFF16DCCD934972C769B239C3C /* RxCocoaObjCRuntimeError+Extensions.swift */; }; + 9E2F30F029D823F821E92030B1D3B3AB /* HistoricalScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 361C23F647086DDACC833FCC3EB1C884 /* HistoricalScheduler.swift */; }; + A034D9B64004D8F11B2E133B48E605A9 /* zh-Hans.lproj in Resources */ = {isa = PBXBuildFile; fileRef = FDE37E713660DC3D2F7ED930D7A70DE2 /* zh-Hans.lproj */; }; + A0D651CCF060DE95FB3AD92090C9823C /* GroupedObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26FDFC56191C8EAB43CE82F44287DE64 /* GroupedObservable.swift */; }; + A0EEE15B01577DEF666E80843804F220 /* Lock.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3E163070E4653A0771719664D8AA4B9 /* Lock.swift */; }; + A17D2C5ADA416A08995012AF143D8C51 /* DelaySubscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12E284916B03F86C68BE4E785FF39BB1 /* DelaySubscription.swift */; }; + A19FE69FE0C3137353868C40FD53A184 /* DeprecationWarner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72E9E70F6D9D7FB922AB7988077A8184 /* DeprecationWarner.swift */; }; + A4D0E970AC99503381692223C32575AB /* VirtualTimeScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A766ADC1A062AA51AAC444D9A853509 /* VirtualTimeScheduler.swift */; }; + A670B21154F12D8B6FA7D1028A7540DA /* NopDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5DEE7953759AA3173B942483CF49AC76 /* NopDisposable.swift */; }; + A6D570655609D81EF8C8B846BFCCF3B2 /* Just.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0998A461F66A98711145FD0EC7362C3E /* Just.swift */; }; + A74F2320298D8948EC5558CC7D477B4B /* TakeUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14D534F0295128746E29091E5BFC9135 /* TakeUntil.swift */; }; + A7F087A0EFC61267F7FC07DC9CD15EA5 /* NotificationCenter+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92806FA2DD6EBD0D101F4EB0F315034E /* NotificationCenter+Rx.swift */; }; + A851EAE4D6886C3C872E30ECECFE8F51 /* DelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF2675EFADCB1550AB2ABF860C0EFF1C /* DelegateProxy.swift */; }; + AA7BDC661C446D3395F51983870E88DD /* MASShortcut.m in Sources */ = {isa = PBXBuildFile; fileRef = B83DF7D23A6D5A6102B1F11A9CF28992 /* MASShortcut.m */; }; + ADFBCA3691E85C61468E1A0EBC94933E /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4514618AF4A8785D792681F9D0B5746 /* Bag.swift */; }; + AE76B4AB2F2D2F7BF228CCEC7A09B3F4 /* RxCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = A1402ED175029AB00EF213BFBA8CFD49 /* RxCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AECCE1EAA0757255BC4D722A53202DB0 /* GCDWebServer.h in Headers */ = {isa = PBXBuildFile; fileRef = 301E6AA863985EFE6C1BBAC153C3556B /* GCDWebServer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AF3A48D7C341FF115262FC6578A0A379 /* DisposeBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4E18A4DDBFBD0CA9BD0329386CDB718 /* DisposeBase.swift */; }; + AFC64B1097F7355FF423D6A73E9C7210 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6D644AA126B3EFD20AC7A640C25A460 /* TaskDelegate.swift */; }; + AFD59761FA2F298F4CF03E472A2933F4 /* DelegateProxyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 940CF5F9A64D84BB22B13B11080B86A0 /* DelegateProxyType.swift */; }; + B1205EDD5125DA3CABC1BEA0CC72887C /* ReplaySubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 854CFC71E31796D7E49B85709FBCEED4 /* ReplaySubject.swift */; }; + B15ED57BB6169227262E67AA3ECFA244 /* MASLocalization.m in Sources */ = {isa = PBXBuildFile; fileRef = 56EC5971E224F6AB7A2166FBA93FAA91 /* MASLocalization.m */; }; + B2473477B3CB132E8500A6BADA89A604 /* Dematerialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1195F6F6558CF153AF4F8F924191B893 /* Dematerialize.swift */; }; + B2C333B276395247F48EA9A9AC76E374 /* RxCocoa-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 09F3A4339E26D0176EBB9256C46EF563 /* RxCocoa-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B47372436C56EE24B909DE97D5005A64 /* GCDWebServerFunctions.h in Headers */ = {isa = PBXBuildFile; fileRef = E87B13FF718D313573F766B7CC408ED7 /* GCDWebServerFunctions.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B533E4FA12CB73346704AC7F8044EB6E /* Range.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB6AA6287CFABD7B8375E6C2E184B08C /* Range.swift */; }; + B540CDA825C4FA9E973193CFC024CB8F /* NSControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B500AB6C7812692C521D5DD14DF74004 /* NSControl+Rx.swift */; }; + B77D5473CAC0536BC81029CBC771A8F0 /* StartWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF2C8DD9A124D9A6E183D428FADF2C56 /* StartWith.swift */; }; + BA86B1FF01D04619DDB2105D122BA3DF /* ConnectableObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85B75D69B674DE36FF51A28EF7816348 /* ConnectableObservableType.swift */; }; + BBC49B5F97840EBF1C18C5E28E67A29F /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B2576F870C297CD693237AD0C3BE041 /* Timer.swift */; }; + BCE9CC03270FD3712F145791D8ED54BF /* Bag+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B43A9BF4D6C1E31117E289729BCD09A0 /* Bag+Rx.swift */; }; + BCF2F7D297EBB25A1F7E56FF0F74198B /* LockOwnerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FAADE650ACDFC94B5D96E0D54E74087 /* LockOwnerType.swift */; }; + BD379AB5D6DF4FF97EF15732D9635186 /* GCDWebServerURLEncodedFormRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = FA6E0B479C3A2FACD878521E9CBCC11D /* GCDWebServerURLEncodedFormRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BEE6B677416CA71C981D1D3F60B18C96 /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE1CB6F534B91BE694EFB4B9215B6209 /* Alamofire.swift */; }; + BF1EB892BE3CF9CDFA0DAC7F9392435C /* GCDWebServerRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D88DF93526FCDD4D54CEDF7DB4F0C74 /* GCDWebServerRequest.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + BF73874654C35AD28C8C59725C37B3E4 /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85CEDFA6110ECCC4627F7114DC0008CE /* Error.swift */; }; + C19C2288E40AAF1B7B0FFC4E9B30B28B /* SchedulerType+SharedSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB395D06F703BC5DABE7B987F87E93F4 /* SchedulerType+SharedSequence.swift */; }; + C22F0B2EA77E200D482C75D9190A431E /* AddRef.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF2326C544C1AA0946EA133E59536085 /* AddRef.swift */; }; + C26CB165F100DBF624F4906EB2EBDA7F /* Pods-ShadowsocksX-NG-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = D60357581333E7EC56952E31B2991366 /* Pods-ShadowsocksX-NG-dummy.m */; }; + C29B9EF856D077ED109CD7C9FA0B1CBF /* Single.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D9C1DD466917BEDA486C5EB25C224B /* Single.swift */; }; + C33109A82F2CA01B76C245C711BC46D8 /* ObserverBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88EB0B10C976B5429E155B7966D4224B /* ObserverBase.swift */; }; + C341FC8944C28CCA39FB9AC4B0F23763 /* GCDWebServerHTTPStatusCodes.h in Headers */ = {isa = PBXBuildFile; fileRef = 675FAF9C0AC63D45D5750450AB7DE4DA /* GCDWebServerHTTPStatusCodes.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C465894C47CD0298BA08084BA33DBB91 /* _RXKVOObserver.m in Sources */ = {isa = PBXBuildFile; fileRef = D8E11BFF20246B446C866F0E2026C462 /* _RXKVOObserver.m */; }; + C651B7E5627EFBC7E3149EA6E104E25A /* NSButton+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C03042C06157044F423F9D10F9B7EE0 /* NSButton+Rx.swift */; }; + C6DAF6C0D6F27D1DE787EBB142429D83 /* ConcurrentMainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC8A367D4E53A297FB864F34644E49B /* ConcurrentMainScheduler.swift */; }; + C74FBC45A8CC8865F2E254DC0B9F9AC6 /* MASShortcutView+Bindings.h in Headers */ = {isa = PBXBuildFile; fileRef = FEB7109F32A44D56AA05F3FB731D764A /* MASShortcutView+Bindings.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C8E0EEE042EA7C2FF22A3E452A7922EE /* Shortcut.h in Headers */ = {isa = PBXBuildFile; fileRef = 7F9D8D38BB84EDC1147440FA65F75CC1 /* Shortcut.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C9FE3365FD7CF7C8357AB027CEF051FC /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 96B29CD14467A7E410286D296BBBAA8B /* Errors.swift */; }; + CA10B3564675FD5894121E0467FBEA29 /* VirtualTimeConverterType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 154AEE55DA94FFC8A8F5C888FC2BCBDC /* VirtualTimeConverterType.swift */; }; + CA614AD744B004718A9353C70A9E7462 /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3559D9AF301168A7297F8316642A1D9 /* Logging.swift */; }; + CBC42E74E1BBB0032DFF65BE9E847C9B /* TailRecursiveSink.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD0F61B9114CEA17068358E3D198DAD8 /* TailRecursiveSink.swift */; }; + CC3AD135FB7F1E40A08F0B0F29D78DC0 /* Signal+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0994F80676488AA08BC591E58CFD98A1 /* Signal+Subscription.swift */; }; + CD782D1189ADBAA42D087B87D53838A0 /* GCDWebServerDataRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F749FF2003212B6BB1F099230930339 /* GCDWebServerDataRequest.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + CDE4E8E448307F279A4A518F69967BA8 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0757DAE9E8CB0717073540EE8D9C4C9 /* Filter.swift */; }; + CE2760C82C07084992BC176BA8AF41DE /* MASLocalization.h in Headers */ = {isa = PBXBuildFile; fileRef = 3534159C69DA4B880233991C4B8E51F2 /* MASLocalization.h */; settings = {ATTRIBUTES = (Public, ); }; }; + CEA20B358A638C758796672D2B3F79A1 /* ObservableType+PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED5FE7C7406ACE4E1C2E490862FC27F1 /* ObservableType+PrimitiveSequence.swift */; }; + CEA50BEC377AEE2AAA9DB5B71DEA418C /* BRLOptionParser.h in Headers */ = {isa = PBXBuildFile; fileRef = A4BA06D76B9EA13CE2C114A88A8FB364 /* BRLOptionParser.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CF0AE4EF7AED02762D3BE8C143D136DA /* _RXObjCRuntime.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A31ED91CC7DB5FC9CCE04EA8F05E7CA /* _RXObjCRuntime.m */; }; + D22D589EF8F50A79EEBA0DC2E4B2477A /* Throttle.swift in Sources */ = {isa = PBXBuildFile; fileRef = A711F6A9FC3D9105FB4752EB5E8E58B0 /* Throttle.swift */; }; + D260B45339932BAA56D7024048E2D155 /* GCDWebServerConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = F6B2FF71E3394A2277F5630ADE77EBEC /* GCDWebServerConnection.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + D33C1AD2E019F48235F734A00CE7C24C /* GCDWebServerFileResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = DABD5E02E0387FDA13E08502747E4F78 /* GCDWebServerFileResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D3D8C379C6E4FB487E5ABD6800AD7B7E /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FA608A971EF8C9973AB0C7F7EE2126F /* DispatchQueue+Alamofire.swift */; }; + D5D3589FC11DDE2B3FA8385212E7CF00 /* Materialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0503AC0FF6C8E1EE6A1F2D01EDB16F6F /* Materialize.swift */; }; + D5E020763D69E9336EB398ACD48FEBB0 /* GCDWebServerErrorResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 6A6DA5E6367C8816E8C176BA368F2A94 /* GCDWebServerErrorResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + D60395623AAC509D52C2C6E84A4700C7 /* Skip.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA60B521316EFC34215D83BE18704A96 /* Skip.swift */; }; + D60D01E508521F9CCCCB06F88C09F2B8 /* Multicast.swift in Sources */ = {isa = PBXBuildFile; fileRef = B463BCB90F2FAE45265C8DCD6BDFAF60 /* Multicast.swift */; }; + D626490EB656C5A3185DDE11F40CB19F /* Repeat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E290A37E260985BBAA653427D24EBC6 /* Repeat.swift */; }; + D65C254F5ABF2CB5ECEE50FE8F8E1A80 /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57AB489E11676A4AE9EA56EADF0E63F2 /* Response.swift */; }; + D6CAD7BA87459D229C6C8ECC10AFFDD4 /* Maybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49FD9E180D0E148BE0BB19F763834874 /* Maybe.swift */; }; + D75FE9731E218DBF907D405CAB505E63 /* Amb.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06D4E80CBDA05F1578080C8034637C9B /* Amb.swift */; }; + D8B22B99DE2C2888FE7CE25BB48E0E9A /* Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8F30E0F75BF71A5CA6D25F4C2110750 /* Rx.swift */; }; + D8C2E8F2D3D1319BB11642F41372A188 /* MASShortcutMonitor.h in Headers */ = {isa = PBXBuildFile; fileRef = E21424A29849A7F0EA632156107DA963 /* MASShortcutMonitor.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D90CE923E9B7F51F51E0B746E95D2E9A /* Deferred.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F5B28B1FA9A7943CC0DC304BDCD0E2C /* Deferred.swift */; }; + D9DB9FA552C86B626E12CD5650E444F7 /* MASHotKey.h in Headers */ = {isa = PBXBuildFile; fileRef = EA3B7BA760EF5910B7586199E3CAF429 /* MASHotKey.h */; settings = {ATTRIBUTES = (Public, ); }; }; + DA51957DA41CBBCF0A60227FEF092BD2 /* Scan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D7F6E51459AAD2E5A367271F6B601A1 /* Scan.swift */; }; + DD820720F7D1FB87B6E84F1ECDEF021D /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAC4BCC1EFD1317EBF4B9BA36E1134C5 /* Deprecated.swift */; }; + DE32FE946EF661EF0CAF45874720809A /* RxCocoa-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E3E1FDE57B6AAF7C58D0C1396F58882A /* RxCocoa-dummy.m */; }; + DF3FD63D6A37C12FDB09B8CA5AE80AC3 /* GCDWebServerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 2CB175FCBAA441BA2B3E869220FAEEE0 /* GCDWebServerPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; }; + E08992C32D31129A0055514FA5BD3849 /* MASKeyCodes.h in Headers */ = {isa = PBXBuildFile; fileRef = 2A2A4891A6E6DAC4415135BB74993A81 /* MASKeyCodes.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E17757E19A1BD01D2B61FE5A55AD512A /* KVORepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23C02B368180FB853CF69D8BD92B525D /* KVORepresentable.swift */; }; + E3747EC31FCCA97D75A81FC700CF7E24 /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34E4A22716CB388EB870522B28DD7CF7 /* ResponseSerialization.swift */; }; + E3DB60489438B9004ADC99A579CEDFB9 /* ScheduledItemType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4659C0DFC3E93DC4C4AEECB67FA53504 /* ScheduledItemType.swift */; }; + E48A4104888DE8E471F9634CC8F44907 /* CombineLatest+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46D60A19372FA9D2D46D0B7614E0C8B7 /* CombineLatest+arity.swift */; }; + E4E5A913FDD01F55D97369CA4B8C1DF0 /* Timeout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05CB1F73D351169ADFE842F858B733C7 /* Timeout.swift */; }; + E515BB42C00D3E319BC699FD34BA9868 /* Platform.Darwin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F5571F7DA898207F53AFA04E29656E2 /* Platform.Darwin.swift */; }; + E5A645BBD1085E54FD24C7D22910871A /* PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97EA47DDA4738601487373C3D63E8892 /* PrimitiveSequence.swift */; }; + E5D04C0E217F198AEB9F6BDAC210E291 /* SkipUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1406AADF7C3A924EB060C46D86FC8227 /* SkipUntil.swift */; }; + E652F245F72DFF1F9B833845B7D7AA91 /* Binder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55FE174008A548419E3616A8304792F3 /* Binder.swift */; }; + E6C96618F2E5765583BEB3CCD22A14FC /* RxMutableBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = 933CEADFC29A6EE4EBA98FC012098C32 /* RxMutableBox.swift */; }; + E7E20EFC14FC25ADBDECCC14D8B7F7F8 /* TextInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = A58214A49C128D7A4C7544E87344A3C1 /* TextInput.swift */; }; + E8230128BCE280559AB98B0D3F2B0C47 /* SynchronizedUnsubscribeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B60D1CBFBDA744C033F0B2A0C00159E /* SynchronizedUnsubscribeType.swift */; }; + E8C1AAAB8792FB705C11A5D0588A8719 /* PublishSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E2E71AC93716DC363E6240A532A02CB /* PublishSubject.swift */; }; + E92B804E3A9D9AA570AACE5602D8F91F /* RecursiveScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8DBA570AB4D7104DF77039D23C512C1 /* RecursiveScheduler.swift */; }; + E9795B875E10345C330065C812F46AD3 /* MASShortcutValidator.h in Headers */ = {isa = PBXBuildFile; fileRef = 166824C56133ED7184FCABD50BF047FE /* MASShortcutValidator.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E9B95D42F4510C79E2D8A8CFA251CD49 /* GCDWebServer.m in Sources */ = {isa = PBXBuildFile; fileRef = 0A9BB2A7697A1E5DC5621D702772A4B0 /* GCDWebServer.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + EB2C4D98DA3C5FC4AFC77C6EF339A6A4 /* URLSession+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A6BB051BFA77EC4B09F22D2F8F247E2 /* URLSession+Rx.swift */; }; + EB7391B7EDDA5DE95FFFB6B832227540 /* AsyncLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78D8483AFBC158FA298C6800DEDE4D74 /* AsyncLock.swift */; }; + EC2052D689C4D4040C17CDF0CF0ADBD4 /* Zip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 732C8EA5B86127EF4191BE104639AD67 /* Zip.swift */; }; + ECC9A343A71FC98D07B545D6BDC5AB0C /* RxCocoaRuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = 3309D64568C776424A4E0B6F079247F1 /* RxCocoaRuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; + ED71F853D231BEB7D4875BBB62FA0DA8 /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDC4030A41798B054370BEA4580333DD /* Queue.swift */; }; + ED9B50D196B86E63644CA70705CE10C8 /* RecursiveLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = D102D6B345CC3BF4C7BC4E723D4F0ACD /* RecursiveLock.swift */; }; + EDD85DAC7DC88B01D5A2C20969416C9B /* BRLOptionParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 54ABF2FD9451CF3C229952E10B340D07 /* BRLOptionParser.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + EEC333CECC6D0FEB54E762724D0A005A /* SynchronizedOnType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9494175D49ECE1E60A7DA761334D4D16 /* SynchronizedOnType.swift */; }; + F13F2AA7F2E6D95A181CAB99B900D531 /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23D29C20A0BE889312381C6336E4A2D9 /* ServerTrustPolicy.swift */; }; + F141581ECD51D5136051D061A8F96539 /* Pods-ShadowsocksX-NGTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 72A57876EDEB24ADDFE06DD482CE250C /* Pods-ShadowsocksX-NGTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F15171E22983A407B401CB0880A24A4A /* _RXDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A87F66B7C0A2A769A71E74D77CC0F6E /* _RXDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F29953E3ED745AECAF0820B614ADDDD3 /* Pods-ShadowsocksX-NGTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1C10AA3C311345DB3616BCE827B69C55 /* Pods-ShadowsocksX-NGTests-dummy.m */; }; + F331A147FAAB420AABC7C14891842DF2 /* CombineLatest+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA6BC6261543AFA8730439C5E3D6FA14 /* CombineLatest+Collection.swift */; }; + F37D6AAF13142C549822DC6C337D2D3E /* RxTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 91ED414CA91E90DB1FC1DDB09736FF57 /* RxTarget.swift */; }; + F42673501FB54ED9ECA67F6B7543B4A4 /* Never.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06B276FC635F3EE1CCF88162D0528484 /* Never.swift */; }; + F5933F324B497E7CB1973438CA903A4D /* ObserverType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 659B63B81B45C439C5E4C86BB10375C6 /* ObserverType.swift */; }; + F5C3C227785D45C44F1FA8157EF99C71 /* GCDWebServerErrorResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = CF0B73A5BA95D377B76E97C3A4528FFE /* GCDWebServerErrorResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F7B74645E07C39771156A1FA413B98D4 /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4B36FFE0DCF03216A753C52928989B26 /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F7DAD2EF3F86BC40F7D4F2EE49362418 /* GCDWebServerStreamedResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 238D6D2076CE4BFFFC735BFD7C475AA0 /* GCDWebServerStreamedResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + F7DF537750D167A28BDFAF3491E6DD92 /* SerialDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC7B232F24E185E666E15604B9FEC8D3 /* SerialDisposable.swift */; }; + F7F13DADAC83BE187A2FD4D509F02A3B /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 82EBF3FEF6DB5B33828B9043A01A98F3 /* Cocoa.framework */; }; + FA1E98EE32887265C3C81F46454254D6 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4692556AA35C141B365E9DA059108AE /* Disposable.swift */; }; + FB6C7066B1C54D684A6AD303E5EDCB05 /* ShareReplayScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7A0359E44CDC57164E50B9D2B31CBFC /* ShareReplayScope.swift */; }; + FCAEC096A064FAEB7E094807F7FBED59 /* SectionedViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A376CB3E32D61CDCB42BF0B1CEB11EF /* SectionedViewDataSourceType.swift */; }; + FCBF7F9DA53A194F0653EE7E00B57BC8 /* GCDWebServerMultiPartFormRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 160937B1E4D91695712F279A8D972FAA /* GCDWebServerMultiPartFormRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + FD62BA6360DA5EA60B540BDD45FE4EFC /* _RXDelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = C6CBC513FD67E4B9D27B37B20FE77767 /* _RXDelegateProxy.m */; }; + FD8D9D70346CADDCA4A7E1B65B0F899A /* Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = D823BB329E438EC7DCD97E71B9FE40E8 /* Delay.swift */; }; + FE23AFE6D8E46B3CD2505DE11CA82A8C /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 82EBF3FEF6DB5B33828B9043A01A98F3 /* Cocoa.framework */; }; + FE242D48F9F0D8E9E9C8F8F08044F2B7 /* Reactive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40400BB78B4C5E89A007F5A074AD17DE /* Reactive.swift */; }; + FF4803398CBF968AFC7FAE55F747D855 /* BehaviorSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = B157A63D0DE60AA5D33DF7A0D62C53D6 /* BehaviorSubject.swift */; }; + FFC27D9C106B3345B95358D853ABEB74 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 82EBF3FEF6DB5B33828B9043A01A98F3 /* Cocoa.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 3C966E4001966C610E2B35B4896D0EA0 /* PBXContainerItemProxy */ = { + 3B221F01E98A161177B97110EDD71D8E /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 9759FFB1455B05FE96A5765890590110; - remoteInfo = RxSwift; - }; - 3F9C089DC9458E35616C2D072F1349CE /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 88E9EC28B8B46C3631E6B242B50F4442; + remoteGlobalIDString = EAAA1AD3A8A1B59AB91319EE40752C6D; remoteInfo = Alamofire; }; - 5A421F3FED66CE2F7D5D41431FD05426 /* PBXContainerItemProxy */ = { + 3D3DAA0D09FD35193B2FE8AE074A7797 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 50DA2BB85DEBA27DDBB9E2D53E8E2A1A; - remoteInfo = RxCocoa; - }; - 73B1C6F65534B8F327FD1E3C4EFB4D79 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 5B8B0ED1046111D92895FC95F12DBC10; - remoteInfo = GCDWebServer; - }; - 7BF76F7FBFF9CC917BC74620BE20739E /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 00C94ED0B49A44FBF0C4E2F6C875CFFC; - remoteInfo = MASShortcut; - }; - 9AAE001A73362881B10E1F0C00EDCC5C /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 9759FFB1455B05FE96A5765890590110; + remoteGlobalIDString = EA9EA43B3B503823EE36C60D9C8A865F; remoteInfo = RxSwift; }; - A7708F6CFFF6E4FD2E6FDB5109CDF5E7 /* PBXContainerItemProxy */ = { + 820F9F5511703CAF38B31090F0E3ADB4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = D6E5ED8DAF7CA937C8F68F342C48B26E; + remoteGlobalIDString = AD904F32069787EFB2DFFE05EB82F5BD; + remoteInfo = GCDWebServer; + }; + 94ED2D61EE75F52B47928F8794016B5F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = E9FDECF69808DB0491D4B4C08CF920DC; + remoteInfo = "Pods-ShadowsocksX-NG"; + }; + A9C471B1560788DF79C58AEDB5C43A59 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 73C37A16ECCEAD845651DCDEE95675BE; remoteInfo = "MASShortcut-MASShortcut"; }; - FDE579D9762D0D9F86EDB1DE6EADE62F /* PBXContainerItemProxy */ = { + BBE89C54AB7DC8916BC97CC5A0E3118D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 3CB2B8006B2B1ACAF9ADCA1DC82E2290; + remoteGlobalIDString = 7AD0C6DCDC9CEC8A3C7C10C7FEE07BE6; + remoteInfo = RxCocoa; + }; + D3B5B0706F67D4DB8B0474CF78BA5EA7 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 00F92A6698B766C4479D7B608F28D680; remoteInfo = BRLOptionParser; }; + D6EED04D076BCDB1274DE7B848A7C3E9 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = EA9EA43B3B503823EE36C60D9C8A865F; + remoteInfo = RxSwift; + }; + EA1FE8E3D449D591462D9C6EE190AF7D /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2B2B481A164695722839BD581D442457; + remoteInfo = MASShortcut; + }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 00208F1C08F49846BFE1A47C2AD5C562 /* GCDWebServerFileResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerFileResponse.h; path = GCDWebServer/Responses/GCDWebServerFileResponse.h; sourceTree = ""; }; - 0137F5061A6992367D3A03EF05697F7C /* _RXKVOObserver.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXKVOObserver.m; path = RxCocoa/Runtime/_RXKVOObserver.m; sourceTree = ""; }; - 0141E6A6B4EB3619B0171F6D6AF2EE49 /* DispatchQueueConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DispatchQueueConfiguration.swift; path = RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift; sourceTree = ""; }; - 01EE31460870DAFD92CCDA3D6C827B67 /* pl.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = pl.lproj; sourceTree = ""; }; - 02C042C63C5C999AF2FB0BFB90543584 /* MASShortcutView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASShortcutView.m; path = Framework/MASShortcutView.m; sourceTree = ""; }; - 02C1C424F1F955C157E2AD0DF9DA85CA /* GCDWebServerResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerResponse.m; path = GCDWebServer/Core/GCDWebServerResponse.m; sourceTree = ""; }; - 03F1DFC052C8E6481E56E12D5099A620 /* _RXObjCRuntime.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXObjCRuntime.h; path = RxCocoa/Runtime/include/_RXObjCRuntime.h; sourceTree = ""; }; - 04BAD8299F0B7A65CFCE251F1F7722C0 /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = Alamofire.modulemap; sourceTree = ""; }; - 04D3D547F7C9D93D846B18B3598139D0 /* Reactive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reactive.swift; path = RxSwift/Reactive.swift; sourceTree = ""; }; - 054C3E84057CD06DB85D99E7AD207F48 /* Pods-proxy_conf_helper.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-proxy_conf_helper.debug.xcconfig"; sourceTree = ""; }; - 06FF1E1D8696715F0476C721349ABF4A /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; - 0716C7A069A21844C312E62BBD3AC258 /* SynchronizedOnType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedOnType.swift; path = RxSwift/Concurrency/SynchronizedOnType.swift; sourceTree = ""; }; - 089EB7E66F64D3A19BB7681AFCE91031 /* Pods-ShadowsocksX-NG.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ShadowsocksX-NG.release.xcconfig"; sourceTree = ""; }; - 08CE7BAE0F6A7178D9136F1DBE9CE0D3 /* Platform.Linux.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Linux.swift; path = Platform/Platform.Linux.swift; sourceTree = ""; }; - 091B320AF46DFF5E52B1CA91938163BC /* Skip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Skip.swift; path = RxSwift/Observables/Skip.swift; sourceTree = ""; }; - 09A7C38F0BA34490FE74D086703D0869 /* Range.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Range.swift; path = RxSwift/Observables/Range.swift; sourceTree = ""; }; - 0B43F76AA34F7FD88FC35F826FE0911E /* NSObject+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx.swift"; path = "RxCocoa/Foundation/NSObject+Rx.swift"; sourceTree = ""; }; - 0B4668396025D7B53E3928CAD15C1E28 /* NSObject+Rx+RawRepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+RawRepresentable.swift"; path = "RxCocoa/Foundation/NSObject+Rx+RawRepresentable.swift"; sourceTree = ""; }; - 0BC3571EE031A7539BB287EFCD666847 /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = Platform/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; - 0C851BCF7777F05B23845D5F3B42477A /* SkipWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipWhile.swift; path = RxSwift/Observables/SkipWhile.swift; sourceTree = ""; }; - 0DD3EF9C6F47C3257FC0151069723CD1 /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; - 0E8A27A8C9BD6FF9AE3DCBC4050CCD76 /* Pods-ShadowsocksX-NGTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ShadowsocksX-NGTests-frameworks.sh"; sourceTree = ""; }; - 0F79F86B3A28700C995D5AC30EC550D6 /* Driver+Subscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Driver+Subscription.swift"; path = "RxCocoa/Traits/Driver/Driver+Subscription.swift"; sourceTree = ""; }; - 0FF3E0A37CDE9554E186BAE00CD9C197 /* InvocableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableType.swift; path = RxSwift/Schedulers/Internal/InvocableType.swift; sourceTree = ""; }; - 1056A640AEFE50B38D2344C0B944DC50 /* GCDWebServerFunctions.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerFunctions.h; path = GCDWebServer/Core/GCDWebServerFunctions.h; sourceTree = ""; }; - 115DA97253EAAD8E69D0C8D6A825B18D /* NSSlider+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSSlider+Rx.swift"; path = "RxCocoa/macOS/NSSlider+Rx.swift"; sourceTree = ""; }; - 117E3E5CB18C4C8895AEDCB96CBFF566 /* RxTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTarget.swift; path = RxCocoa/Common/RxTarget.swift; sourceTree = ""; }; - 11C843F0A8CC61D5B0B5CCFFC9B6EE77 /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; - 12173B3EF2DB80B33497504CD28D0D25 /* Debounce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debounce.swift; path = RxSwift/Observables/Debounce.swift; sourceTree = ""; }; - 121D3DED6F325810B808C962150FDF6B /* Take.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Take.swift; path = RxSwift/Observables/Take.swift; sourceTree = ""; }; - 1221D61D7EDFE6C6834C60D4AFAD701A /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = Platform/DataStructures/Queue.swift; sourceTree = ""; }; - 124A08134F4F0DFD6C6D5F5B29F0F045 /* ResourceBundle-MASShortcut-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ResourceBundle-MASShortcut-Info.plist"; sourceTree = ""; }; - 125D906DA6D12CC4B558691B8F324B0F /* GCDWebServerFileRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerFileRequest.m; path = GCDWebServer/Requests/GCDWebServerFileRequest.m; sourceTree = ""; }; - 12628820AE714729D03F0AEE969EB3CD /* Logging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Logging.swift; path = RxCocoa/Foundation/Logging.swift; sourceTree = ""; }; - 1325C66E30F87E4F665AF154722DABD6 /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; - 13333F29A08390FCEFECA0FDCDDC919F /* Pods-ShadowsocksX-NG-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ShadowsocksX-NG-frameworks.sh"; sourceTree = ""; }; - 1384B3A09ECFD78F3EFC1FE31AF7DE8D /* InvocableScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableScheduledItem.swift; path = RxSwift/Schedulers/Internal/InvocableScheduledItem.swift; sourceTree = ""; }; - 139134EE845E284F4B3ED2EF2F9A302B /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/AppKit.framework; sourceTree = DEVELOPER_DIR; }; - 14527C0C3B63CC337E971AE1EE047A07 /* MASHotKey.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASHotKey.h; path = Framework/MASHotKey.h; sourceTree = ""; }; - 14A9EC2BB1EC6484018A5EB4B9B2C231 /* Pods-ShadowsocksX-NG-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-ShadowsocksX-NG-umbrella.h"; sourceTree = ""; }; - 173CDFE8FFD9A8EF4825486DCB53A7A4 /* MASShortcutView+Bindings.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MASShortcutView+Bindings.h"; path = "Framework/MASShortcutView+Bindings.h"; sourceTree = ""; }; - 17B662771CEFD0C752DAF2C38021A7EB /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = RxSwift/Observables/Timer.swift; sourceTree = ""; }; - 18D47804A6E897EF20B93DDAE8450B08 /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; - 1910F3BA8275DA306C03AAF91366CA17 /* StartWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StartWith.swift; path = RxSwift/Observables/StartWith.swift; sourceTree = ""; }; - 1A8CE48109F7ED7873F4FF9D2D3603AD /* Pods-proxy_conf_helper-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-proxy_conf_helper-acknowledgements.markdown"; sourceTree = ""; }; - 1B3420B97151695E8A4E232D9A929713 /* Zip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Zip.swift; path = RxSwift/Observables/Zip.swift; sourceTree = ""; }; - 1C34DF9211C78641101C8029D821282C /* GCDWebServer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServer.m; path = GCDWebServer/Core/GCDWebServer.m; sourceTree = ""; }; - 1C6FF8174AF3551817D3375622AD00A6 /* GCDWebServerRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerRequest.m; path = GCDWebServer/Core/GCDWebServerRequest.m; sourceTree = ""; }; - 1D0C71FC59A714120E705919A119EB9C /* AsMaybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsMaybe.swift; path = RxSwift/Observables/AsMaybe.swift; sourceTree = ""; }; - 1D3126A27429E648B79C41215C88F13B /* Multicast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Multicast.swift; path = RxSwift/Observables/Multicast.swift; sourceTree = ""; }; - 1DF905835162609C61FE7431CEAEFE06 /* Map.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Map.swift; path = RxSwift/Observables/Map.swift; sourceTree = ""; }; - 1E17FA1477E37C745A33298D5655B877 /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; - 1E7682153DC4B4654DC8897B52E1C68A /* Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Signal.swift; path = RxCocoa/Traits/Signal/Signal.swift; sourceTree = ""; }; - 1E8515AADD6430481FAC8F2DD92FE0F8 /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = Platform/DataStructures/Bag.swift; sourceTree = ""; }; - 1F162D37B7B6534A6D80FEE301F586EE /* Pods-ShadowsocksX-NGTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-ShadowsocksX-NGTests-acknowledgements.plist"; sourceTree = ""; }; - 1F7B1AB25111B41EA516AC2B26F16FB4 /* RefCountDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RefCountDisposable.swift; path = RxSwift/Disposables/RefCountDisposable.swift; sourceTree = ""; }; - 1F8A0E045BE3B86CD42FE28A50C51A3F /* MASShortcut.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASShortcut.h; path = Framework/MASShortcut.h; sourceTree = ""; }; - 1F9FFF0AB40ABBC9CD22047B6E5CC748 /* DelegateProxyType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxyType.swift; path = RxCocoa/Common/DelegateProxyType.swift; sourceTree = ""; }; - 218389799BBF34D96B7BDE06ECC09CD9 /* Disposables.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposables.swift; path = RxSwift/Disposables/Disposables.swift; sourceTree = ""; }; - 219ED455E5F4B8EBAC276EB23D845469 /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; - 22693A1922310B1DDCE8D9B91AA49677 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = RxSwift/Observables/Filter.swift; sourceTree = ""; }; - 22ECE1CB75987611F39ADE574AA7352C /* AnyObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyObserver.swift; path = RxSwift/AnyObserver.swift; sourceTree = ""; }; - 239930698028F8A7F8F0AF8660885A40 /* SingleAsync.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAsync.swift; path = RxSwift/Observables/SingleAsync.swift; sourceTree = ""; }; - 23A3D60EBC5FA9D3A2E4ACFAD6428316 /* Lock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Lock.swift; path = RxSwift/Concurrency/Lock.swift; sourceTree = ""; }; - 24B01D81E3D7058FA14A053EC19874D0 /* Pods-ShadowsocksX-NG-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-ShadowsocksX-NG-dummy.m"; sourceTree = ""; }; - 24D58CC8AA50BE13352501DE5BA68B94 /* PrimitiveSequence+Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PrimitiveSequence+Zip+arity.swift"; path = "RxSwift/Traits/PrimitiveSequence+Zip+arity.swift"; sourceTree = ""; }; - 257A51892B0489327105FAC5C85056BB /* ImmediateSchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImmediateSchedulerType.swift; path = RxSwift/ImmediateSchedulerType.swift; sourceTree = ""; }; - 25BD92FA972425CD9706F8177394D7DF /* GCDWebServerDataResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerDataResponse.m; path = GCDWebServer/Responses/GCDWebServerDataResponse.m; sourceTree = ""; }; - 2761A1137851210C3B778227D6BA8376 /* Observable+Bind.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Bind.swift"; path = "RxCocoa/Common/Observable+Bind.swift"; sourceTree = ""; }; - 28409654F83C1BED4A04990DF2A46117 /* HistoricalScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalScheduler.swift; path = RxSwift/Schedulers/HistoricalScheduler.swift; sourceTree = ""; }; - 2845A68913E943BC36DC30691EC2767F /* BehaviorRelay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorRelay.swift; path = RxCocoa/Traits/BehaviorRelay.swift; sourceTree = ""; }; - 284942F9AAC3AFDD49598A09EEBAF5FE /* KVORepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KVORepresentable.swift; path = RxCocoa/Foundation/KVORepresentable.swift; sourceTree = ""; }; - 28578489FE91CF078CD23E26E04E3BBB /* GroupedObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupedObservable.swift; path = RxSwift/GroupedObservable.swift; sourceTree = ""; }; - 28D7F65F9E64735E3320A028DCDDDD90 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 294B1F176E9A1CBCB03CF68E8A428BFB /* NopDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NopDisposable.swift; path = RxSwift/Disposables/NopDisposable.swift; sourceTree = ""; }; - 2977417D444B5687C65F2845036F130C /* Sequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sequence.swift; path = RxSwift/Observables/Sequence.swift; sourceTree = ""; }; - 29D5C9E52C36A6630A4B5F4A54F3666E /* ScheduledDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledDisposable.swift; path = RxSwift/Disposables/ScheduledDisposable.swift; sourceTree = ""; }; - 2A10E8E2BEA43547BD31F4D396909B1C /* RxSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxSwift-dummy.m"; sourceTree = ""; }; - 2AB0C03C6DE868D798024FA98E343764 /* MASLocalization.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASLocalization.h; path = Framework/MASLocalization.h; sourceTree = ""; }; - 2BF7CE3A988F181B6A3CCFCDAA25B69E /* Platform.Darwin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Darwin.swift; path = Platform/Platform.Darwin.swift; sourceTree = ""; }; - 2C34C0B46CA55D9826447C6EF5667B77 /* GCDWebServer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServer.h; path = GCDWebServer/Core/GCDWebServer.h; sourceTree = ""; }; - 2D190E53FA2881C4C0669D0F0367DE31 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 2DD2740F8043D2CE9EA5BB7A7DBFC49D /* RxCocoa.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxCocoa.xcconfig; sourceTree = ""; }; - 2FD70811FA75DA891378A68B3B6B4E2E /* ReplaySubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ReplaySubject.swift; path = RxSwift/Subjects/ReplaySubject.swift; sourceTree = ""; }; - 3031DA85910A1DEDA7065204F6B9BBE1 /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = RxCocoa/Deprecated.swift; sourceTree = ""; }; - 30A75BA6552FED28E799BFDD7E6A7139 /* GCDWebServer.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = GCDWebServer.modulemap; sourceTree = ""; }; - 30E4F3002967D50F222222D209A56B79 /* zh-Hant.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = "zh-Hant.lproj"; sourceTree = ""; }; - 3285ED8593B0D936F2A37C7D2E0BDB0D /* RxCocoa.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = RxCocoa.modulemap; sourceTree = ""; }; - 3358F45A5BEC1A7F725167CD1969EDC8 /* Pods-ShadowsocksX-NG-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-ShadowsocksX-NG-acknowledgements.markdown"; sourceTree = ""; }; - 33710F9F62AA2B36412EA7B08233352D /* Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debug.swift; path = RxSwift/Observables/Debug.swift; sourceTree = ""; }; - 3413B9348C850EE5AE49C8B95B12943D /* Do.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Do.swift; path = RxSwift/Observables/Do.swift; sourceTree = ""; }; - 3725898C57B3547AF4E212E583C75CE2 /* MASShortcutMonitor.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASShortcutMonitor.m; path = Framework/MASShortcutMonitor.m; sourceTree = ""; }; - 37302F3E1098B88606F9963B2BFF7A3F /* Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rx.swift; path = RxSwift/Rx.swift; sourceTree = ""; }; - 399E2B8BEE8E886EE4016D87C5C85C63 /* GCDWebServerURLEncodedFormRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerURLEncodedFormRequest.h; path = GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.h; sourceTree = ""; }; - 3C4B04EEA1AC1BE33D71036DEBEBF937 /* ObserverType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverType.swift; path = RxSwift/ObserverType.swift; sourceTree = ""; }; - 3CB0942D626105573A56A84ACEC555FE /* SubjectType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubjectType.swift; path = RxSwift/Subjects/SubjectType.swift; sourceTree = ""; }; - 3DD66E9E374587EE9AC648D811B5042E /* GCDWebServerErrorResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerErrorResponse.h; path = GCDWebServer/Responses/GCDWebServerErrorResponse.h; sourceTree = ""; }; - 3EB40302AC6F385C4C11271681C7BE07 /* ControlEvent.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlEvent.swift; path = RxCocoa/Traits/ControlEvent.swift; sourceTree = ""; }; - 3F5864100C7FDE5370D2A9D47B635CA3 /* MASShortcutBinder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASShortcutBinder.h; path = Framework/MASShortcutBinder.h; sourceTree = ""; }; - 3F7E8032E1CE431DD241906525558580 /* Shortcut.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Shortcut.h; path = Framework/Shortcut.h; sourceTree = ""; }; - 3FB4990CA1A63AF517A7F5A32C6EE3EB /* RxCocoa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RxCocoa.h; path = RxCocoa/RxCocoa.h; sourceTree = ""; }; - 40EA3D109B9CB1C1BBDC2E9255B38366 /* Never.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Never.swift; path = RxSwift/Observables/Never.swift; sourceTree = ""; }; - 41C0048A00AC76527EB7E552AC524DAC /* SchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SchedulerType.swift; path = RxSwift/SchedulerType.swift; sourceTree = ""; }; - 420BCA1748F9506534FB0A233C6EB49A /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; - 42C5B04BED868BDFDAD6B1B4CEF885F1 /* ko.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = ko.lproj; sourceTree = ""; }; - 43D1F9A72CB74DED14E390F65E400A19 /* SynchronizedUnsubscribeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedUnsubscribeType.swift; path = RxSwift/Concurrency/SynchronizedUnsubscribeType.swift; sourceTree = ""; }; - 440BA268964308AC9235A827B872F6D4 /* RxSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = RxSwift.modulemap; sourceTree = ""; }; - 44F80D944345E3B50B5CFF78E7C4E4D9 /* ConnectableObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConnectableObservableType.swift; path = RxSwift/ConnectableObservableType.swift; sourceTree = ""; }; - 454DCFB400BFCA2DD8E4C2EC61190701 /* SerialDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDispatchQueueScheduler.swift; path = RxSwift/Schedulers/SerialDispatchQueueScheduler.swift; sourceTree = ""; }; - 4591C0BC6376C1566FEA09D9C716AB84 /* Window.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Window.swift; path = RxSwift/Observables/Window.swift; sourceTree = ""; }; - 466571AD788ED5DE02B15FD2D5AB0E3D /* PriorityQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PriorityQueue.swift; path = Platform/DataStructures/PriorityQueue.swift; sourceTree = ""; }; - 46662EB64876AD1C891F548C69A89E89 /* Pods-ShadowsocksX-NGTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-ShadowsocksX-NGTests-dummy.m"; sourceTree = ""; }; - 48320B8075CDD3A66743F2FB1C0AEE97 /* ObservableType+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+Extensions.swift"; path = "RxSwift/ObservableType+Extensions.swift"; sourceTree = ""; }; - 48FCACAB173ADA2C6A483176B8C97F66 /* Catch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Catch.swift; path = RxSwift/Observables/Catch.swift; sourceTree = ""; }; - 49D4DB0A334289080782A137D04524BE /* BRLOptionParser.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = BRLOptionParser.m; path = BRLOptionParser/BRLOptionParser.m; sourceTree = ""; }; - 4B9730D65B8F0B8AE3F7A91E58EB6705 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; - 4C42E3C6553CD86CA08CB17F055E2FD1 /* NSImageView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSImageView+Rx.swift"; path = "RxCocoa/macOS/NSImageView+Rx.swift"; sourceTree = ""; }; - 4CE700501A5FBA06F359007666C43958 /* Alamofire.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.xcconfig; sourceTree = ""; }; - 4E035F93086E0E9404B6C0C525F9F238 /* GCDWebServerRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerRequest.h; path = GCDWebServer/Core/GCDWebServerRequest.h; sourceTree = ""; }; - 4EB0F48DB0F38B80DF2708AB2292F08B /* ObserveOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserveOn.swift; path = RxSwift/Observables/ObserveOn.swift; sourceTree = ""; }; - 4F78B857D0E9107E4AC4BE639CB5FDB5 /* MASShortcutBinder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASShortcutBinder.m; path = Framework/MASShortcutBinder.m; sourceTree = ""; }; - 4FEC4B8DFE8753A9B1DE598293568F30 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; }; - 4FEDBA21F3681BC1FBEB4E058BDEF1E4 /* GCDWebServerFileResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerFileResponse.m; path = GCDWebServer/Responses/GCDWebServerFileResponse.m; sourceTree = ""; }; - 51298DE535C414C093FA9AEE5A210C4E /* ObservableType+PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+PrimitiveSequence.swift"; path = "RxSwift/Traits/ObservableType+PrimitiveSequence.swift"; sourceTree = ""; }; - 517A68D17E290C18DFC53F4AECCE8C21 /* es.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = es.lproj; sourceTree = ""; }; - 51EC586F86D6864B74B5211875AF2253 /* BehaviorRelay+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "BehaviorRelay+Driver.swift"; path = "RxCocoa/Traits/Driver/BehaviorRelay+Driver.swift"; sourceTree = ""; }; - 52EE2194BA2C33781397BBEB8F4C9276 /* RecursiveScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveScheduler.swift; path = RxSwift/Schedulers/RecursiveScheduler.swift; sourceTree = ""; }; - 52F51F94701ABD692BFFC9F92AE2E115 /* Pods-ShadowsocksX-NG-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-ShadowsocksX-NG-acknowledgements.plist"; sourceTree = ""; }; - 53901D4BDA021937287E33B4491AA200 /* CombineLatest+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+arity.swift"; path = "RxSwift/Observables/CombineLatest+arity.swift"; sourceTree = ""; }; - 53D3CF439796CD1B84572CBCBAAE5BA9 /* ObservableConvertibleType+Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+Signal.swift"; path = "RxCocoa/Traits/Signal/ObservableConvertibleType+Signal.swift"; sourceTree = ""; }; - 549C9311455C020E76C0D8304E77DCBB /* GCDWebServer-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "GCDWebServer-dummy.m"; sourceTree = ""; }; - 56904622AEC39DA2CC3FFE7AC03DEEA7 /* MASDictionaryTransformer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASDictionaryTransformer.m; path = Framework/MASDictionaryTransformer.m; sourceTree = ""; }; - 57895F669A6A45DBE1808ECFCA7E6DE8 /* MASShortcutValidator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASShortcutValidator.h; path = Framework/MASShortcutValidator.h; sourceTree = ""; }; - 59CB3865143E8097440FEC7F48AF17D7 /* ControlProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlProperty.swift; path = RxCocoa/Traits/ControlProperty.swift; sourceTree = ""; }; - 59F05446C5A1EF95AA5BF54D2E7130C0 /* en.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = en.lproj; sourceTree = ""; }; - 5A1C35E455A2F2765CD140138D5A1EEF /* ScheduledItemType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItemType.swift; path = RxSwift/Schedulers/Internal/ScheduledItemType.swift; sourceTree = ""; }; - 5A5F9295B64270BDF4807BAED9FDCCF1 /* Platform.Darwin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Darwin.swift; path = Platform/Platform.Darwin.swift; sourceTree = ""; }; - 5B1C0E5A2AF56FCCFCBBA2373F04E7C8 /* String+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+Rx.swift"; path = "RxSwift/Extensions/String+Rx.swift"; sourceTree = ""; }; - 5B35B3E1CD06D484F53A3E476AA3686D /* de.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = de.lproj; sourceTree = ""; }; - 5C658B994B5D0A61D71450AAF4863AC8 /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; - 5CC38924038209EE8DA70D12014386B4 /* DelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxy.swift; path = RxCocoa/Common/DelegateProxy.swift; sourceTree = ""; }; - 5CC3D4BB2BA8F24225B176DDE03F8307 /* cs.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = cs.lproj; sourceTree = ""; }; - 5D0E7B6D1939F2FFB2328BAA55AB8D33 /* SerialDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDisposable.swift; path = RxSwift/Disposables/SerialDisposable.swift; sourceTree = ""; }; - 5D4898D741BB7A3E63AD3625C5913FF4 /* First.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = First.swift; path = RxSwift/Observables/First.swift; sourceTree = ""; }; - 5D84D92D27CE8A6F5C45E8A03155C1CF /* Pods-proxy_conf_helper-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-proxy_conf_helper-frameworks.sh"; sourceTree = ""; }; - 5EA75FB12559EF9F38DE81CA6685BE6C /* ElementAt.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ElementAt.swift; path = RxSwift/Observables/ElementAt.swift; sourceTree = ""; }; - 5F53F9BE0FC6F1436AD8032E8FF6D80D /* GCDWebServerStreamedResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerStreamedResponse.h; path = GCDWebServer/Responses/GCDWebServerStreamedResponse.h; sourceTree = ""; }; - 5FF30D62954A12098DAC3C27FB43EC7E /* SharedSequence+Operators.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SharedSequence+Operators.swift"; path = "RxCocoa/Traits/SharedSequence/SharedSequence+Operators.swift"; sourceTree = ""; }; - 60D7A87958991203E6AEEF88F8165CB1 /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 617D6EBFA395952801772F1383AB8AAE /* ScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItem.swift; path = RxSwift/Schedulers/Internal/ScheduledItem.swift; sourceTree = ""; }; - 62C6E1F6DE2D3160BDD5B13FBF1DD877 /* Empty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Empty.swift; path = RxSwift/Observables/Empty.swift; sourceTree = ""; }; - 63F95A3FB354F1B43BC3C7CCA7C48037 /* libBRLOptionParser.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libBRLOptionParser.a; sourceTree = BUILT_PRODUCTS_DIR; }; - 6756FEC1B269A6CF56EF4D67F08E050B /* TakeUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeUntil.swift; path = RxSwift/Observables/TakeUntil.swift; sourceTree = ""; }; - 679166C482C63EB7F940FE7A6476274B /* MASShortcut.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = MASShortcut.modulemap; sourceTree = ""; }; - 68A72BF8AF1DC1EC8C18BFA79BE3799F /* SharedSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SharedSequence.swift; path = RxCocoa/Traits/SharedSequence/SharedSequence.swift; sourceTree = ""; }; - 68B50473C6A5B2B637DC2178073B139B /* fr.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = fr.lproj; sourceTree = ""; }; - 68F3C7D40CA579EFBF45E9BDF4844714 /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = RxSwift/Observables/Error.swift; sourceTree = ""; }; - 6C82EAFB5F96FA6732152002CA4666CC /* TailRecursiveSink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TailRecursiveSink.swift; path = RxSwift/Observers/TailRecursiveSink.swift; sourceTree = ""; }; - 6CA83DA1CEDBDC939542356592B40AB3 /* SwitchIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwitchIfEmpty.swift; path = RxSwift/Observables/SwitchIfEmpty.swift; sourceTree = ""; }; - 6DA5EAC6F4067B7529AE728323D52317 /* MASLocalization.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASLocalization.m; path = Framework/MASLocalization.m; sourceTree = ""; }; - 6FF66DB8174612DE3868CD61F0C25E75 /* RxCocoaRuntime.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RxCocoaRuntime.h; path = RxCocoa/Runtime/include/RxCocoaRuntime.h; sourceTree = ""; }; - 711B62B6A01799BBCBA4F90D70C6AF28 /* MASShortcut.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MASShortcut.bundle; sourceTree = BUILT_PRODUCTS_DIR; }; - 729746443824EABA89E3E1088EB4F53B /* RxCocoa.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCocoa.swift; path = RxCocoa/RxCocoa.swift; sourceTree = ""; }; - 740D1DD30811098DBF267CA2EBAF0448 /* ConcurrentDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentDispatchQueueScheduler.swift; path = RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift; sourceTree = ""; }; - 7566FCCEEDFE8B433D83AD311795E367 /* RetryWhen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RetryWhen.swift; path = RxSwift/Observables/RetryWhen.swift; sourceTree = ""; }; - 7643BF1BAF3D845AF3B73DC3CC809225 /* GCDWebServer-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GCDWebServer-prefix.pch"; sourceTree = ""; }; - 7849EB1549B76C509FCE0465C3EC6585 /* BooleanDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BooleanDisposable.swift; path = RxSwift/Disposables/BooleanDisposable.swift; sourceTree = ""; }; - 78755706F21BACDBA952EF615AE4223F /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = RxSwift/Errors.swift; sourceTree = ""; }; - 78BF2C0D1D2976671C6F01E7CF57B7D8 /* GCDWebServerFunctions.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerFunctions.m; path = GCDWebServer/Core/GCDWebServerFunctions.m; sourceTree = ""; }; - 79369DACA0CF3D56E9D4D213125DD2D2 /* PublishSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishSubject.swift; path = RxSwift/Subjects/PublishSubject.swift; sourceTree = ""; }; - 7A842F5AB01E533C407EF9F939D43654 /* MASShortcutMonitor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASShortcutMonitor.h; path = Framework/MASShortcutMonitor.h; sourceTree = ""; }; - 7B940616A1513AFB926A1625599603BF /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = Platform/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; - 7BF437276A9A9AD2789D809F09705992 /* ConcurrentMainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentMainScheduler.swift; path = RxSwift/Schedulers/ConcurrentMainScheduler.swift; sourceTree = ""; }; - 7C4E2B96284BE7E91A2FAC7A35722534 /* DeprecationWarner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DeprecationWarner.swift; path = Platform/DeprecationWarner.swift; sourceTree = ""; }; - 7FF0F128359723A54E21FEBB2D99C657 /* Amb.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Amb.swift; path = RxSwift/Observables/Amb.swift; sourceTree = ""; }; - 8090A9366A6F313575595425BA5B7C5F /* MASShortcutView+Bindings.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MASShortcutView+Bindings.m"; path = "Framework/MASShortcutView+Bindings.m"; sourceTree = ""; }; - 812492787E3005F375F66430EEFEB2D3 /* CombineLatest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CombineLatest.swift; path = RxSwift/Observables/CombineLatest.swift; sourceTree = ""; }; - 814650269499C22D7A00826E5401B231 /* MASKeyCodes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASKeyCodes.h; path = Framework/MASKeyCodes.h; sourceTree = ""; }; - 81BA4BA48C5140576A6D93FB9EF7C2C1 /* ControlEvent+Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlEvent+Signal.swift"; path = "RxCocoa/Traits/Signal/ControlEvent+Signal.swift"; sourceTree = ""; }; - 822A32C67318B2171827F9F276472026 /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; - 8289A948846D9CADF1D390856F40AF89 /* DistinctUntilChanged.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DistinctUntilChanged.swift; path = RxSwift/Observables/DistinctUntilChanged.swift; sourceTree = ""; }; - 82AB01A10760A9DBC7F68ACDB184CB9F /* GCDWebServerMultiPartFormRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerMultiPartFormRequest.h; path = GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.h; sourceTree = ""; }; - 82B40C2141EAEBD3F4738B4EF37F735E /* Binder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Binder.swift; path = RxCocoa/Common/Binder.swift; sourceTree = ""; }; - 82C92E152F7133108027B5F35A4EA2F6 /* Sample.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sample.swift; path = RxSwift/Observables/Sample.swift; sourceTree = ""; }; - 83268468D9194D59FF72E067422BC173 /* NSView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSView+Rx.swift"; path = "RxCocoa/macOS/NSView+Rx.swift"; sourceTree = ""; }; - 83323A1A2936BBA3D386DCC078E3821E /* Pods-ShadowsocksX-NGTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-ShadowsocksX-NGTests-acknowledgements.markdown"; sourceTree = ""; }; - 83A9CCC244BECF2D84BC459532DA1B78 /* GCDWebServerMultiPartFormRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerMultiPartFormRequest.m; path = GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.m; sourceTree = ""; }; - 87372668A1EA52537C962C8365145B96 /* Dematerialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Dematerialize.swift; path = RxSwift/Observables/Dematerialize.swift; sourceTree = ""; }; - 874D86BD8C4CCD8EC1708994A7C75D5A /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; - 877FB023C6C79A9CB7DD34AAFEEB6434 /* NSTextField+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSTextField+Rx.swift"; path = "RxCocoa/macOS/NSTextField+Rx.swift"; sourceTree = ""; }; - 88223CC64D20FAA41D33B56DA90F1829 /* GCDWebServerHTTPStatusCodes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerHTTPStatusCodes.h; path = GCDWebServer/Core/GCDWebServerHTTPStatusCodes.h; sourceTree = ""; }; - 88AACF5B7E188D3448847253899BFC8F /* Delay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Delay.swift; path = RxSwift/Observables/Delay.swift; sourceTree = ""; }; - 88AC45588E239E491BA98259039A6802 /* Sink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sink.swift; path = RxSwift/Observables/Sink.swift; sourceTree = ""; }; - 8B234AB54ABD1C374D34665C3DCD649E /* DispatchQueue+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Extensions.swift"; path = "Platform/DispatchQueue+Extensions.swift"; sourceTree = ""; }; - 8B8C0CBA55B2D8C521EC4555A764C4A3 /* DisposeBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBase.swift; path = RxSwift/Disposables/DisposeBase.swift; sourceTree = ""; }; - 8BE1FB4F6E66271CE86F1B9F3B10C4B2 /* MASHotKey.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASHotKey.m; path = Framework/MASHotKey.m; sourceTree = ""; }; - 8CDD45C6D7A038F415A78787317E931A /* Pods-proxy_conf_helper-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-proxy_conf_helper-resources.sh"; sourceTree = ""; }; - 8CE15615F891AE84CC28B31DD1DFED34 /* _RX.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RX.h; path = RxCocoa/Runtime/include/_RX.h; sourceTree = ""; }; - 8CF4A5D83CF4FF7422C8E7F007410BA4 /* MainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MainScheduler.swift; path = RxSwift/Schedulers/MainScheduler.swift; sourceTree = ""; }; - 8DDB54ED8FEE2C1E06EFC2F722F8735C /* ShareReplayScope.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShareReplayScope.swift; path = RxSwift/Observables/ShareReplayScope.swift; sourceTree = ""; }; - 8DF79E5957660D27729BE2711F7510D5 /* GCDWebServerDataRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerDataRequest.m; path = GCDWebServer/Requests/GCDWebServerDataRequest.m; sourceTree = ""; }; - 8EC9ECCC54FEA683BBDB8B5CD94124B1 /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = RxSwift/Deprecated.swift; sourceTree = ""; }; - 8F5083A9395E7BC273257A316BA5D517 /* Completable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Completable.swift; path = RxSwift/Traits/Completable.swift; sourceTree = ""; }; - 8F59435F621E888DE7C2D34F05907491 /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; - 91CE07E2C296F1B3388DC2668BAB1341 /* Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+arity.swift"; path = "RxSwift/Observables/Zip+arity.swift"; sourceTree = ""; }; - 91E0555770D3BEC1183279EBBF63B6EB /* Switch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Switch.swift; path = RxSwift/Observables/Switch.swift; sourceTree = ""; }; - 920735A244F39A83F52DF97FA4E7427B /* Generate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Generate.swift; path = RxSwift/Observables/Generate.swift; sourceTree = ""; }; - 9308FACB56EF2744A5DF058B75203AE6 /* Single.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Single.swift; path = RxSwift/Traits/Single.swift; sourceTree = ""; }; - 938FC605EEA4041CA074FE17C4D53535 /* CurrentThreadScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurrentThreadScheduler.swift; path = RxSwift/Schedulers/CurrentThreadScheduler.swift; sourceTree = ""; }; - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 94342D18D6FF2890EDEEBE3520A6E66E /* Repeat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Repeat.swift; path = RxSwift/Observables/Repeat.swift; sourceTree = ""; }; - 9445256D5E0C36ADD934F62A67B04A09 /* CompositeDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositeDisposable.swift; path = RxSwift/Disposables/CompositeDisposable.swift; sourceTree = ""; }; - 94BAE73C588EBC604DCE573EBE4A04AB /* _RX.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RX.m; path = RxCocoa/Runtime/_RX.m; sourceTree = ""; }; - 94D1A921D2DDCB6ADE167A6D9F9FC69D /* MASShortcut.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASShortcut.m; path = Framework/MASShortcut.m; sourceTree = ""; }; - 9589591754500401F219D9EC60BB6AD7 /* AddRef.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AddRef.swift; path = RxSwift/Observables/AddRef.swift; sourceTree = ""; }; - 95CD99AE9A1C290252A419DD48B2A263 /* _RXDelegateProxy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXDelegateProxy.m; path = RxCocoa/Runtime/_RXDelegateProxy.m; sourceTree = ""; }; - 970A1485E6688625754970DC8BBC7072 /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; - 98522BF2EB25C0255284080F9CA3E195 /* Pods-ShadowsocksX-NG.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ShadowsocksX-NG.debug.xcconfig"; sourceTree = ""; }; - 987AC2089C4B4C35C212D30E0C0E7B9A /* GCDWebServerStreamedResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerStreamedResponse.m; path = GCDWebServer/Responses/GCDWebServerStreamedResponse.m; sourceTree = ""; }; - 98923078307F200863DB7C59FCFC7002 /* SynchronizedDisposeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedDisposeType.swift; path = RxSwift/Concurrency/SynchronizedDisposeType.swift; sourceTree = ""; }; - 9A04D2678FFF63F78747A96526C32525 /* PublishRelay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishRelay.swift; path = RxCocoa/Traits/PublishRelay.swift; sourceTree = ""; }; - 9A0D3BBA7497A389734E9EEFBAE2464D /* TakeLast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeLast.swift; path = RxSwift/Observables/TakeLast.swift; sourceTree = ""; }; - 9B62CFED1E64A9E67642177FF31ADAB0 /* AsyncSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncSubject.swift; path = RxSwift/Subjects/AsyncSubject.swift; sourceTree = ""; }; - 9B8B5CBA357BDB968C73E8F58DFBC74C /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 9BA0976D52E0B1BE7C75718D8F34D6D7 /* MASKeyMasks.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASKeyMasks.h; path = Framework/MASKeyMasks.h; sourceTree = ""; }; - 9BA2A0099476E08B6CC8026BDF0C603E /* Pods-ShadowsocksX-NGTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ShadowsocksX-NGTests.debug.xcconfig"; sourceTree = ""; }; - 9BCF18187EC77D481751E793B1B99458 /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; - 9C124E5083A1C670ECBA0CC803184E03 /* ru.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = ru.lproj; sourceTree = ""; }; - 9C77EDD882C5528391392F6395AEA3CC /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 9D1F46FBDCCCDDD5DD811F74DF066657 /* BRLOptionParser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = BRLOptionParser.h; path = BRLOptionParser/BRLOptionParser.h; sourceTree = ""; }; - 9D3C210247CB8CE3DF722B8D487265EB /* Signal+Subscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Signal+Subscription.swift"; path = "RxCocoa/Traits/Signal/Signal+Subscription.swift"; sourceTree = ""; }; - 9D966DC3E49AE0BCCC9A1CA03C275F22 /* Pods_ShadowsocksX_NGTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ShadowsocksX_NGTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 9E5ED856E0033C185BB3A1CFF513A42C /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = Platform/DataStructures/Bag.swift; sourceTree = ""; }; - 9FD412C15BC617CC38E190F17BB06655 /* WithLatestFrom.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WithLatestFrom.swift; path = RxSwift/Observables/WithLatestFrom.swift; sourceTree = ""; }; - A0A874527BA87240185BA903D136C3AF /* Merge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Merge.swift; path = RxSwift/Observables/Merge.swift; sourceTree = ""; }; - A0BF6605792D11FF8BA02337532C154B /* MASShortcutView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASShortcutView.h; path = Framework/MASShortcutView.h; sourceTree = ""; }; - A0F9D84DF77D8398558F3D4F5FD606DB /* DelaySubscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelaySubscription.swift; path = RxSwift/Observables/DelaySubscription.swift; sourceTree = ""; }; - A35868FCBD5266D702CEA4A6E65DF160 /* _RXKVOObserver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXKVOObserver.h; path = RxCocoa/Runtime/include/_RXKVOObserver.h; sourceTree = ""; }; - A5055B8EFFFBEDE50909E935D4BCA446 /* Pods-proxy_conf_helper.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-proxy_conf_helper.release.xcconfig"; sourceTree = ""; }; - A604573634B3B440BAC80E6185340643 /* ToArray.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ToArray.swift; path = RxSwift/Observables/ToArray.swift; sourceTree = ""; }; - A6162331FD69499451313416F088EB1C /* SectionedViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SectionedViewDataSourceType.swift; path = RxCocoa/Common/SectionedViewDataSourceType.swift; sourceTree = ""; }; - A6FA4BF27FB90B714947E536885E37C1 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - A96B9F66608C047F1379AAE238F18C2A /* Reduce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reduce.swift; path = RxSwift/Observables/Reduce.swift; sourceTree = ""; }; - AACEB0B4DCFE72B1C86FBDD44F903602 /* GCDWebServer.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = GCDWebServer.xcconfig; sourceTree = ""; }; - AB8E26A34CAE0B693F1F2C52465402C3 /* AnonymousDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousDisposable.swift; path = RxSwift/Disposables/AnonymousDisposable.swift; sourceTree = ""; }; - ABCEC9093299246040636BFC7D014387 /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = RxSwift/SwiftSupport/SwiftSupport.swift; sourceTree = ""; }; - ABE0B812B00B54AA2F6982337A7172A2 /* Create.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Create.swift; path = RxSwift/Observables/Create.swift; sourceTree = ""; }; - ABEF7628490A51F0ED3BE67393DEB56E /* MASShortcut-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MASShortcut-umbrella.h"; sourceTree = ""; }; - AD54960D651138A3CA4F03327ED04C1E /* URLSession+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "URLSession+Rx.swift"; path = "RxCocoa/Foundation/URLSession+Rx.swift"; sourceTree = ""; }; - ADBBB7FC840E52C76645ADFD06C6F489 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - AE6E689502E4366B125481CD898B947E /* Pods-proxy_conf_helper-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-proxy_conf_helper-acknowledgements.plist"; sourceTree = ""; }; - AE6FE24DA6B6C599439A0CD35E6C0C39 /* _RXObjCRuntime.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXObjCRuntime.m; path = RxCocoa/Runtime/_RXObjCRuntime.m; sourceTree = ""; }; - AECA5396C8BF81522F020F67B5051752 /* GCDWebServer-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GCDWebServer-umbrella.h"; sourceTree = ""; }; - AECFBD9B4972BED36C6D3ACC0177E0E5 /* Observable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observable.swift; path = RxSwift/Observable.swift; sourceTree = ""; }; - AF97805B59E93B8CDD1F35ADC2C1160C /* Timeout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeout.swift; path = RxSwift/Observables/Timeout.swift; sourceTree = ""; }; - B0472FBF9DAB466EF0A53394A8D2AA12 /* RxSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-prefix.pch"; sourceTree = ""; }; - B140252F1C653182982BDDFA6F4DFFEF /* TextInput.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextInput.swift; path = RxCocoa/Common/TextInput.swift; sourceTree = ""; }; - B1FE5441218FAE87F6E57A87233B4A0F /* Completable+AndThen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Completable+AndThen.swift"; path = "RxSwift/Traits/Completable+AndThen.swift"; sourceTree = ""; }; - B1FECC6066F8385524F9B523590A82C8 /* DisposeBag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBag.swift; path = RxSwift/Disposables/DisposeBag.swift; sourceTree = ""; }; - B2929F5EBA6B563EE116F09A01CE8D7B /* nl.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = nl.lproj; sourceTree = ""; }; - B2F7E00EE5AC554A4695B58D3E0EEC68 /* LockOwnerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LockOwnerType.swift; path = RxSwift/Concurrency/LockOwnerType.swift; sourceTree = ""; }; - B30805F63C611810B322187824EBC4A5 /* Pods-ShadowsocksX-NGTests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ShadowsocksX-NGTests-resources.sh"; sourceTree = ""; }; - B3193AEA5372872BA57804AA2CAE1875 /* GCDWebServer.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = GCDWebServer.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - B3A10808A0957AA2EC5EB7D1A77E4B27 /* NSLayoutConstraint+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSLayoutConstraint+Rx.swift"; path = "RxCocoa/Common/NSLayoutConstraint+Rx.swift"; sourceTree = ""; }; - B458372D1D2009A7FDC10C7A5379CF07 /* GCDWebServerConnection.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerConnection.m; path = GCDWebServer/Core/GCDWebServerConnection.m; sourceTree = ""; }; - B4CB86E9D779A444876EA5C4C68A3FBD /* BRLOptionParser-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "BRLOptionParser-dummy.m"; sourceTree = ""; }; - B4D23B3353252A87A2DFCBE6BCAC355C /* DeprecationWarner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DeprecationWarner.swift; path = Platform/DeprecationWarner.swift; sourceTree = ""; }; - B4E3D27538532E6FBE6335CF89442070 /* ControlEvent+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlEvent+Driver.swift"; path = "RxCocoa/Traits/Driver/ControlEvent+Driver.swift"; sourceTree = ""; }; - B55BFBC972E986BB01725A95A9860DA2 /* RecursiveLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveLock.swift; path = Platform/RecursiveLock.swift; sourceTree = ""; }; - B5BC8CC3D75BE1CAA9F4B2902AAF6A7F /* PublishRelay+Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PublishRelay+Signal.swift"; path = "RxCocoa/Traits/Signal/PublishRelay+Signal.swift"; sourceTree = ""; }; - B61C725932BE55BD3F51C1611F4C00E1 /* HistoricalSchedulerTimeConverter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalSchedulerTimeConverter.swift; path = RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift; sourceTree = ""; }; - B790A80F95F23886D51E59CA3075E0B7 /* DispatchQueue+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Extensions.swift"; path = "Platform/DispatchQueue+Extensions.swift"; sourceTree = ""; }; - B792280B7BC7CA44B5D7090C8F732A0D /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - B7C8CD3DFA056CB378EA8126D471FE4D /* GCDWebServerConnection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerConnection.h; path = GCDWebServer/Core/GCDWebServerConnection.h; sourceTree = ""; }; - B8FB3328120B8DA4A4A0E2CA1B29F188 /* RxCocoa-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-umbrella.h"; sourceTree = ""; }; - B96C6614EE1F3536C3C06892684F2657 /* Disposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposable.swift; path = RxSwift/Disposable.swift; sourceTree = ""; }; - B98A2E7455847993E52C3245DF62ACCE /* CombineLatest+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+Collection.swift"; path = "RxSwift/Observables/CombineLatest+Collection.swift"; sourceTree = ""; }; - B9FD186DCB0C2486656EE428FDF24E95 /* MASShortcutValidator.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASShortcutValidator.m; path = Framework/MASShortcutValidator.m; sourceTree = ""; }; - BA2390463C1EED454182AA10546F90EE /* KVORepresentable+CoreGraphics.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "KVORepresentable+CoreGraphics.swift"; path = "RxCocoa/Foundation/KVORepresentable+CoreGraphics.swift"; sourceTree = ""; }; - BD319BD2D6840013A6DB5A5E61C57FD6 /* _RXDelegateProxy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXDelegateProxy.h; path = RxCocoa/Runtime/include/_RXDelegateProxy.h; sourceTree = ""; }; - BDAA1AF05A1F0B1B7C16588267607FE1 /* GCDWebServerPrivate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerPrivate.h; path = GCDWebServer/Core/GCDWebServerPrivate.h; sourceTree = ""; }; - BDE9D3194329F41EB9A694107DB540EE /* RxSwift.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxSwift.xcconfig; sourceTree = ""; }; - BE672B43951C625CA5F89E448A620AB0 /* Pods-ShadowsocksX-NGTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = "Pods-ShadowsocksX-NGTests.modulemap"; sourceTree = ""; }; - BEA567412780FF078C4F7D7AEEA21AD2 /* GCDWebServerFileRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerFileRequest.h; path = GCDWebServer/Requests/GCDWebServerFileRequest.h; sourceTree = ""; }; - BF25BEA59068FC2091F298B09B53F9A0 /* ja.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = ja.lproj; sourceTree = ""; }; - C045555E3D465D287E7928F6180E1B12 /* MASShortcut-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MASShortcut-prefix.pch"; sourceTree = ""; }; - C12D136B18E0E7F8F564601A28FFF96F /* ObservableConvertibleType+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+Driver.swift"; path = "RxCocoa/Traits/Driver/ObservableConvertibleType+Driver.swift"; sourceTree = ""; }; - C143DF478B2ECD2870DC326426CCA893 /* BinaryDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BinaryDisposable.swift; path = RxSwift/Disposables/BinaryDisposable.swift; sourceTree = ""; }; - C15620E5544258EF1AEC163EC547C2E3 /* ObserverBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverBase.swift; path = RxSwift/Observers/ObserverBase.swift; sourceTree = ""; }; - C2A1585CB16C85AE91BDB4B9405928A2 /* SkipUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipUntil.swift; path = RxSwift/Observables/SkipUntil.swift; sourceTree = ""; }; - C38541370FCAF5848E3402B758806B42 /* OperationQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OperationQueueScheduler.swift; path = RxSwift/Schedulers/OperationQueueScheduler.swift; sourceTree = ""; }; - C54EAA06C0712228D110E5F33FD72EC9 /* MASShortcut-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "MASShortcut-dummy.m"; sourceTree = ""; }; - C558DBA8867D3525206597226AB7FEAC /* Zip+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+Collection.swift"; path = "RxSwift/Observables/Zip+Collection.swift"; sourceTree = ""; }; - C57692BA24E650520C1D877523C0A5F0 /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = Platform/DataStructures/Queue.swift; sourceTree = ""; }; - C65BFED56C12E4DDC34449B0F00BC4D8 /* SingleAssignmentDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAssignmentDisposable.swift; path = RxSwift/Disposables/SingleAssignmentDisposable.swift; sourceTree = ""; }; - C69F2408EF8B0C3BB7419872996ED01C /* SharedSequence+Operators+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SharedSequence+Operators+arity.swift"; path = "RxCocoa/Traits/SharedSequence/SharedSequence+Operators+arity.swift"; sourceTree = ""; }; - C8FA0250F8F58859A42FACB6244CB83C /* Pods_ShadowsocksX_NG.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ShadowsocksX_NG.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - CA32EF7645C489DC5E33892504DE253D /* Using.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Using.swift; path = RxSwift/Observables/Using.swift; sourceTree = ""; }; - CDECDC826427AB1333B1485F32A721A3 /* Bag+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Bag+Rx.swift"; path = "RxSwift/Extensions/Bag+Rx.swift"; sourceTree = ""; }; - CE50445A73ECB9A2ED31A6FF93D45808 /* Pods-proxy_conf_helper-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-proxy_conf_helper-dummy.m"; sourceTree = ""; }; - CE8A310F9FBC0D6FDD4C8E3D891605E1 /* Optional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Optional.swift; path = RxSwift/Observables/Optional.swift; sourceTree = ""; }; - CF3BEDFBB2197809F6BDAF649F36F20D /* ObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableType.swift; path = RxSwift/ObservableType.swift; sourceTree = ""; }; - D13F2EDEB0AC07D152FC818243513146 /* DefaultIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultIfEmpty.swift; path = RxSwift/Observables/DefaultIfEmpty.swift; sourceTree = ""; }; - D17DBC203AF5B8E02A628E6920BEC64B /* RxCocoaObjCRuntimeError+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "RxCocoaObjCRuntimeError+Extensions.swift"; path = "RxCocoa/Common/RxCocoaObjCRuntimeError+Extensions.swift"; sourceTree = ""; }; - D18E7218EA86B1A581D12090718F1F3C /* RxCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - D1EA13DE495837C31F4526D7FA1F7795 /* Deferred.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deferred.swift; path = RxSwift/Observables/Deferred.swift; sourceTree = ""; }; - D20F25597538DF7C1290E5ECF3BA6073 /* NSControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSControl+Rx.swift"; path = "RxCocoa/macOS/NSControl+Rx.swift"; sourceTree = ""; }; - D27F9B49B02CDF00CFD1E0CF066445B2 /* GCDWebServerURLEncodedFormRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerURLEncodedFormRequest.m; path = GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.m; sourceTree = ""; }; - D37B5D016E968A982C96D680E27224E7 /* TakeWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeWhile.swift; path = RxSwift/Observables/TakeWhile.swift; sourceTree = ""; }; - D4498044F24BEEA463A62F313DBAF34A /* Cancelable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Cancelable.swift; path = RxSwift/Cancelable.swift; sourceTree = ""; }; - D44EE75E565309CBCBA8CDC8C1F148EF /* BRLOptionParser.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = BRLOptionParser.xcconfig; sourceTree = ""; }; - D4E00A40F2D4DE3318F31F4BD19FC986 /* SubscribeOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscribeOn.swift; path = RxSwift/Observables/SubscribeOn.swift; sourceTree = ""; }; - D5D00060FD1C8FC81DFDD4EAD1FC02BD /* PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PrimitiveSequence.swift; path = RxSwift/Traits/PrimitiveSequence.swift; sourceTree = ""; }; - D77C4845A393085D1F7FF68A785D6A6B /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; - D7C21F7B579D31839F9317289084E4FA /* RxMutableBox.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxMutableBox.swift; path = RxSwift/RxMutableBox.swift; sourceTree = ""; }; - D7E8128F302CF60BEF206008CE11F6D3 /* Pods-ShadowsocksX-NGTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-ShadowsocksX-NGTests-umbrella.h"; sourceTree = ""; }; - D80BBC49309E8C0FFEE8339DD05B1420 /* GCDWebServerDataRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerDataRequest.h; path = GCDWebServer/Requests/GCDWebServerDataRequest.h; sourceTree = ""; }; - D883EB96731562A3DB6A5D9BB316164D /* Throttle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Throttle.swift; path = RxSwift/Observables/Throttle.swift; sourceTree = ""; }; - D88C03DD8DB2FDBDB751F6E0573A19DF /* BehaviorSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorSubject.swift; path = RxSwift/Subjects/BehaviorSubject.swift; sourceTree = ""; }; - DB253165A9F6EDB8299D6D115FAEBD42 /* GCDWebServerDataResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerDataResponse.h; path = GCDWebServer/Responses/GCDWebServerDataResponse.h; sourceTree = ""; }; - DB7869CB7726942306727ACBE0A6CD4E /* GCDWebServerErrorResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerErrorResponse.m; path = GCDWebServer/Responses/GCDWebServerErrorResponse.m; sourceTree = ""; }; - DC250BF8313F337272DBC9DE1FB6DB6B /* Pods-ShadowsocksX-NG.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = "Pods-ShadowsocksX-NG.modulemap"; sourceTree = ""; }; - DC9CBF3F42BE77A6A4156483F6E7A677 /* Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Driver.swift; path = RxCocoa/Traits/Driver/Driver.swift; sourceTree = ""; }; - DD070E26B8B863382F7AA226CF6D5794 /* RxCocoa-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxCocoa-dummy.m"; sourceTree = ""; }; - DD640DDC7E829A09ED1072907C443481 /* GCDWebServerResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerResponse.h; path = GCDWebServer/Core/GCDWebServerResponse.h; sourceTree = ""; }; - DE7D4EDDDDBC9A8284DF4316C7F919EB /* RecursiveLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveLock.swift; path = Platform/RecursiveLock.swift; sourceTree = ""; }; - DF2D048928B85C0B72DFDA760FAC837E /* AsSingle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsSingle.swift; path = RxSwift/Observables/AsSingle.swift; sourceTree = ""; }; - E18663B7E781172BDC6EFC5AC77BA4FF /* GroupBy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupBy.swift; path = RxSwift/Observables/GroupBy.swift; sourceTree = ""; }; - E334CC8401F5E9485DACD3CF7F789B90 /* Buffer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Buffer.swift; path = RxSwift/Observables/Buffer.swift; sourceTree = ""; }; - E356F07902E984F6D1B28C8BCA923455 /* SchedulerServices+Emulation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerServices+Emulation.swift"; path = "RxSwift/Schedulers/SchedulerServices+Emulation.swift"; sourceTree = ""; }; - E39B6AE9C7DBAF6F7102DDE428C6D4DA /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; - E40D5C853F53872A9EDD51E2438864BC /* KVORepresentable+Swift.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "KVORepresentable+Swift.swift"; path = "RxCocoa/Foundation/KVORepresentable+Swift.swift"; sourceTree = ""; }; - E417BF107A54D2027FCFA21115B0B6BF /* MASShortcut.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MASShortcut.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - E4824FF61369273279E9C73FAE118858 /* ObservableConvertibleType+SharedSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+SharedSequence.swift"; path = "RxCocoa/Traits/SharedSequence/ObservableConvertibleType+SharedSequence.swift"; sourceTree = ""; }; - E66E142759BB10864774D2C94E961514 /* MASDictionaryTransformer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASDictionaryTransformer.h; path = Framework/MASDictionaryTransformer.h; sourceTree = ""; }; - E66FAB44C7A517141189FD000F9B5DF5 /* zh-Hans.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = "zh-Hans.lproj"; sourceTree = ""; }; - EA41BEE3B4D9F1A89F0135CA91A7F472 /* Pods-ShadowsocksX-NG-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ShadowsocksX-NG-resources.sh"; sourceTree = ""; }; - EA9A1A86E1594EEC96C2B7214E16E50F /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; }; - EAA642364AC03341491D3F3B2B55D566 /* Event.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Event.swift; path = RxSwift/Event.swift; sourceTree = ""; }; - EB7F2ED22A2C64159A4F936BFADE6E45 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - EC7D06D7C30521ACFE2CB8810BAD6EB4 /* Platform.Linux.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Linux.swift; path = Platform/Platform.Linux.swift; sourceTree = ""; }; - EEF0E141DA73C02E3495E9BC4F3BCB79 /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; - EF773B3F1B1F670D5A56FC9AC6EBE4D2 /* AnonymousObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousObserver.swift; path = RxSwift/Observers/AnonymousObserver.swift; sourceTree = ""; }; - EF846AE7A2DE452AE4DCDE6EFBEC8B26 /* Scan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Scan.swift; path = RxSwift/Observables/Scan.swift; sourceTree = ""; }; - EF8570C25461953B9B13A259DDC88592 /* MASShortcut.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = MASShortcut.xcconfig; sourceTree = ""; }; - EFB5583E95D9163093E1C43B391FFCC1 /* libPods-proxy_conf_helper.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-proxy_conf_helper.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - EFD468F10CD22B3EFAB406DAC3FCC7C9 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/Carbon.framework; sourceTree = DEVELOPER_DIR; }; - EFF605517B8B672280D85EF59BDBBF89 /* NSObject+Rx+KVORepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+KVORepresentable.swift"; path = "RxCocoa/Foundation/NSObject+Rx+KVORepresentable.swift"; sourceTree = ""; }; - F12CA3526AFD49BC5CD55B6B6ED743C4 /* RxCocoa-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-prefix.pch"; sourceTree = ""; }; - F1791718F5CC919CF52642A71FE4AAAF /* Materialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Materialize.swift; path = RxSwift/Observables/Materialize.swift; sourceTree = ""; }; - F41F3F896039E0F2EE235A159F853B08 /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; - F58912C1C682D706B91088B2E3E28849 /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; - F5BEEA74769B7463104E20202E1A465D /* Concat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Concat.swift; path = RxSwift/Observables/Concat.swift; sourceTree = ""; }; - F63A805EDA3A375F4453D75E39B46EC1 /* Producer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Producer.swift; path = RxSwift/Observables/Producer.swift; sourceTree = ""; }; - F67191B1F87DA238C4D87250DFBE43DD /* Pods-ShadowsocksX-NGTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ShadowsocksX-NGTests.release.xcconfig"; sourceTree = ""; }; - F6958C5792CD090D53D51F45E3FC8391 /* SubscriptionDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscriptionDisposable.swift; path = RxSwift/Disposables/SubscriptionDisposable.swift; sourceTree = ""; }; - F69A770E45055FD854F3FBD6979FC418 /* Just.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Just.swift; path = RxSwift/Observables/Just.swift; sourceTree = ""; }; - F735EC7A418D45C70CE0818AC93B4BA3 /* Maybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Maybe.swift; path = RxSwift/Traits/Maybe.swift; sourceTree = ""; }; - F77DE488C839A9ACAE7A7BF4C24036BC /* Enumerated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Enumerated.swift; path = RxSwift/Observables/Enumerated.swift; sourceTree = ""; }; - F79B729FCFF408FC35D4D736823C9C54 /* it.lproj */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder; path = it.lproj; sourceTree = ""; }; - F8443ACD9BB292ED1C07002A2677C9A6 /* ControlTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlTarget.swift; path = RxCocoa/Common/ControlTarget.swift; sourceTree = ""; }; - F905EE6F0E88BD8C5751FFC92BFFE94A /* BRLOptionParser-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "BRLOptionParser-prefix.pch"; sourceTree = ""; }; - F998ED9B73E72761135D03EABEA4CF52 /* ControlProperty+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlProperty+Driver.swift"; path = "RxCocoa/Traits/Driver/ControlProperty+Driver.swift"; sourceTree = ""; }; - F9A3C739C0FF5F8BD8B24A9AF4939DC2 /* ObservableConvertibleType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableConvertibleType.swift; path = RxSwift/ObservableConvertibleType.swift; sourceTree = ""; }; - FA0D68D388D0343FA7D9603F2972F301 /* AsyncLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncLock.swift; path = RxSwift/Concurrency/AsyncLock.swift; sourceTree = ""; }; - FA4CD1F6811E9C48888466AB8169A09B /* VirtualTimeConverterType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeConverterType.swift; path = RxSwift/Schedulers/VirtualTimeConverterType.swift; sourceTree = ""; }; - FB5D3778780DA8CAF8A3068FF9DFDC57 /* VirtualTimeScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeScheduler.swift; path = RxSwift/Schedulers/VirtualTimeScheduler.swift; sourceTree = ""; }; - FB8175F2ECF55A3974C3B9F8F610B7E4 /* NSButton+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSButton+Rx.swift"; path = "RxCocoa/macOS/NSButton+Rx.swift"; sourceTree = ""; }; - FBC4E57263B9AAECCE6AE5CA60FBB422 /* RxSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-umbrella.h"; sourceTree = ""; }; - FC2C8FAFAE7C8BCB3D9CC3ED192B4B94 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FCAC7C3176AFDC0CD3DD5D9184E33909 /* NotificationCenter+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NotificationCenter+Rx.swift"; path = "RxCocoa/Foundation/NotificationCenter+Rx.swift"; sourceTree = ""; }; - FE9523A3F66C7512A04D217B9485ED49 /* PriorityQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PriorityQueue.swift; path = Platform/DataStructures/PriorityQueue.swift; sourceTree = ""; }; - FEC68B3F3AAE886E35269B85EAAAA4A2 /* SchedulerType+SharedSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerType+SharedSequence.swift"; path = "RxCocoa/Traits/SharedSequence/SchedulerType+SharedSequence.swift"; sourceTree = ""; }; + 0079F2FDF314ED419382C2C30DE4939A /* it.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = it.lproj; path = Resources/it.lproj; sourceTree = ""; }; + 0381AFE52669B9575C47B566ACDDEDC7 /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; + 0479B8153C331BBDA5162E84458371D1 /* CombineLatest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CombineLatest.swift; path = RxSwift/Observables/CombineLatest.swift; sourceTree = ""; }; + 04DF2DB4FF92576D769744A650441E74 /* MASDictionaryTransformer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASDictionaryTransformer.h; path = "Framework/User Defaults Storage/MASDictionaryTransformer.h"; sourceTree = ""; }; + 0503AC0FF6C8E1EE6A1F2D01EDB16F6F /* Materialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Materialize.swift; path = RxSwift/Observables/Materialize.swift; sourceTree = ""; }; + 05CB1F73D351169ADFE842F858B733C7 /* Timeout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeout.swift; path = RxSwift/Observables/Timeout.swift; sourceTree = ""; }; + 06B276FC635F3EE1CCF88162D0528484 /* Never.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Never.swift; path = RxSwift/Observables/Never.swift; sourceTree = ""; }; + 06D4E80CBDA05F1578080C8034637C9B /* Amb.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Amb.swift; path = RxSwift/Observables/Amb.swift; sourceTree = ""; }; + 0994F80676488AA08BC591E58CFD98A1 /* Signal+Subscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Signal+Subscription.swift"; path = "RxCocoa/Traits/Signal/Signal+Subscription.swift"; sourceTree = ""; }; + 0998A461F66A98711145FD0EC7362C3E /* Just.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Just.swift; path = RxSwift/Observables/Just.swift; sourceTree = ""; }; + 09F3A4339E26D0176EBB9256C46EF563 /* RxCocoa-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-umbrella.h"; sourceTree = ""; }; + 0A9BB2A7697A1E5DC5621D702772A4B0 /* GCDWebServer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServer.m; path = GCDWebServer/Core/GCDWebServer.m; sourceTree = ""; }; + 0AC97FCB44A4D1C5C8DB2728DBE8C88A /* SharedSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SharedSequence.swift; path = RxCocoa/Traits/SharedSequence/SharedSequence.swift; sourceTree = ""; }; + 0BA23B93F7078237272FE6927584FDE4 /* GCDWebServer-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "GCDWebServer-dummy.m"; sourceTree = ""; }; + 0BAB8B3384C32C2632F1C3DFA4B118F6 /* Create.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Create.swift; path = RxSwift/Observables/Create.swift; sourceTree = ""; }; + 0E0AB87B8D9EECE893AE04BA3EDEA25B /* MASShortcut-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MASShortcut-prefix.pch"; sourceTree = ""; }; + 0F5B28B1FA9A7943CC0DC304BDCD0E2C /* Deferred.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deferred.swift; path = RxSwift/Observables/Deferred.swift; sourceTree = ""; }; + 111C7DF776927720315882DB26FC5BBB /* CurrentThreadScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurrentThreadScheduler.swift; path = RxSwift/Schedulers/CurrentThreadScheduler.swift; sourceTree = ""; }; + 115ECB3550DF888C7550F302E2254242 /* SingleAssignmentDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAssignmentDisposable.swift; path = RxSwift/Disposables/SingleAssignmentDisposable.swift; sourceTree = ""; }; + 118D091E5C6B9D52CB5543E9F5EC00E1 /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; + 1195F6F6558CF153AF4F8F924191B893 /* Dematerialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Dematerialize.swift; path = RxSwift/Observables/Dematerialize.swift; sourceTree = ""; }; + 11F97CBA2FD3653262BC227DD1340D90 /* Pods-proxy_conf_helper-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-proxy_conf_helper-acknowledgements.plist"; sourceTree = ""; }; + 12E284916B03F86C68BE4E785FF39BB1 /* DelaySubscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelaySubscription.swift; path = RxSwift/Observables/DelaySubscription.swift; sourceTree = ""; }; + 134C64056AF906740FD1018C35BEF701 /* NSObject+Rx+KVORepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+KVORepresentable.swift"; path = "RxCocoa/Foundation/NSObject+Rx+KVORepresentable.swift"; sourceTree = ""; }; + 1406AADF7C3A924EB060C46D86FC8227 /* SkipUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipUntil.swift; path = RxSwift/Observables/SkipUntil.swift; sourceTree = ""; }; + 14A4B4A0C592EB08A8DE41B67BBB1889 /* zh-Hant.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = "zh-Hant.lproj"; path = "Resources/zh-Hant.lproj"; sourceTree = ""; }; + 14D534F0295128746E29091E5BFC9135 /* TakeUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeUntil.swift; path = RxSwift/Observables/TakeUntil.swift; sourceTree = ""; }; + 14E6D271BA2BAC998BEC96349915043A /* ControlTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlTarget.swift; path = RxCocoa/Common/ControlTarget.swift; sourceTree = ""; }; + 154AEE55DA94FFC8A8F5C888FC2BCBDC /* VirtualTimeConverterType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeConverterType.swift; path = RxSwift/Schedulers/VirtualTimeConverterType.swift; sourceTree = ""; }; + 160937B1E4D91695712F279A8D972FAA /* GCDWebServerMultiPartFormRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerMultiPartFormRequest.h; path = GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.h; sourceTree = ""; }; + 1612CFDD002F4B0AC395F0217039503E /* RetryWhen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RetryWhen.swift; path = RxSwift/Observables/RetryWhen.swift; sourceTree = ""; }; + 166824C56133ED7184FCABD50BF047FE /* MASShortcutValidator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASShortcutValidator.h; path = Framework/Model/MASShortcutValidator.h; sourceTree = ""; }; + 17765F70794E8148073628BF1A46C5E9 /* pl.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = pl.lproj; path = Resources/pl.lproj; sourceTree = ""; }; + 17CBF34AD83F7260974C867724C5600A /* MASShortcutView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASShortcutView.h; path = Framework/UI/MASShortcutView.h; sourceTree = ""; }; + 189E6C1A4BD7664104577BB5F2AF04EE /* Alamofire-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Alamofire-Info.plist"; sourceTree = ""; }; + 196DA983244F60766BA272090829A16E /* Pods-ShadowsocksX-NGTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ShadowsocksX-NGTests.debug.xcconfig"; sourceTree = ""; }; + 19E4CA80D5785F989D1F5D4C42C3FE6E /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; + 1A31ED91CC7DB5FC9CCE04EA8F05E7CA /* _RXObjCRuntime.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXObjCRuntime.m; path = RxCocoa/Runtime/_RXObjCRuntime.m; sourceTree = ""; }; + 1A592F999686D738A8A59DF187637CA5 /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = RxCocoa/Deprecated.swift; sourceTree = ""; }; + 1A87F66B7C0A2A769A71E74D77CC0F6E /* _RXDelegateProxy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXDelegateProxy.h; path = RxCocoa/Runtime/include/_RXDelegateProxy.h; sourceTree = ""; }; + 1AAAFEAAB56AAD738235F68EF3B9D64A /* ControlEvent+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlEvent+Driver.swift"; path = "RxCocoa/Traits/Driver/ControlEvent+Driver.swift"; sourceTree = ""; }; + 1B69746C147C712C959C2E7AE6C7F5C9 /* GCDWebServerConnection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerConnection.h; path = GCDWebServer/Core/GCDWebServerConnection.h; sourceTree = ""; }; + 1C10AA3C311345DB3616BCE827B69C55 /* Pods-ShadowsocksX-NGTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-ShadowsocksX-NGTests-dummy.m"; sourceTree = ""; }; + 1C1C1DD9817840AB191BD19AC537A360 /* Event.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Event.swift; path = RxSwift/Event.swift; sourceTree = ""; }; + 1C96563EB6945D0D606E685F804386C4 /* Switch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Switch.swift; path = RxSwift/Observables/Switch.swift; sourceTree = ""; }; + 1CBCD2E003BDE2BAA09350A80E738BA8 /* ObserveOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserveOn.swift; path = RxSwift/Observables/ObserveOn.swift; sourceTree = ""; }; + 1D64077070F9B8085996B83FF7C2D5CD /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; + 1D7F6E51459AAD2E5A367271F6B601A1 /* Scan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Scan.swift; path = RxSwift/Observables/Scan.swift; sourceTree = ""; }; + 1D88DF93526FCDD4D54CEDF7DB4F0C74 /* GCDWebServerRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerRequest.m; path = GCDWebServer/Core/GCDWebServerRequest.m; sourceTree = ""; }; + 1E2E71AC93716DC363E6240A532A02CB /* PublishSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishSubject.swift; path = RxSwift/Subjects/PublishSubject.swift; sourceTree = ""; }; + 1EA29F7E0E65B6A9619DB77448844EC1 /* Pods-ShadowsocksX-NG.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-ShadowsocksX-NG.modulemap"; sourceTree = ""; }; + 1EEF6B3F62DF72399DE21845AAB1C070 /* TakeLast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeLast.swift; path = RxSwift/Observables/TakeLast.swift; sourceTree = ""; }; + 1FC8A367D4E53A297FB864F34644E49B /* ConcurrentMainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentMainScheduler.swift; path = RxSwift/Schedulers/ConcurrentMainScheduler.swift; sourceTree = ""; }; + 20739FDF831BB0F4991E635F037F4D53 /* RxSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxSwift-dummy.m"; sourceTree = ""; }; + 21B9CC8D2D4351D1C736B96CF7352118 /* MASShortcut-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "MASShortcut-dummy.m"; sourceTree = ""; }; + 22588616BAABD051D4BB21DC9F63F0A8 /* Sequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sequence.swift; path = RxSwift/Observables/Sequence.swift; sourceTree = ""; }; + 229E93EB9F92094DB696CEE91F99C456 /* Concat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Concat.swift; path = RxSwift/Observables/Concat.swift; sourceTree = ""; }; + 22ACD934B2217D0B238C7FC56C3BC0A3 /* GCDWebServerFileRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerFileRequest.h; path = GCDWebServer/Requests/GCDWebServerFileRequest.h; sourceTree = ""; }; + 22ADD736785A6DE33628551E25AC889A /* Pods-ShadowsocksX-NGTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-ShadowsocksX-NGTests-acknowledgements.markdown"; sourceTree = ""; }; + 22AFF11BC84D7CDAE19F952ADC92C4ED /* HistoricalSchedulerTimeConverter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalSchedulerTimeConverter.swift; path = RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift; sourceTree = ""; }; + 230F8208BE63C052A548A7D41A1158B2 /* MASShortcut.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; name = MASShortcut.bundle; path = "MASShortcut-MASShortcut.bundle"; sourceTree = BUILT_PRODUCTS_DIR; }; + 238D6D2076CE4BFFFC735BFD7C475AA0 /* GCDWebServerStreamedResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerStreamedResponse.m; path = GCDWebServer/Responses/GCDWebServerStreamedResponse.m; sourceTree = ""; }; + 23C02B368180FB853CF69D8BD92B525D /* KVORepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KVORepresentable.swift; path = RxCocoa/Foundation/KVORepresentable.swift; sourceTree = ""; }; + 23CBBCCBDEE2DD59A590CDFEFA4CA98E /* RefCountDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RefCountDisposable.swift; path = RxSwift/Disposables/RefCountDisposable.swift; sourceTree = ""; }; + 23D29C20A0BE889312381C6336E4A2D9 /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; + 2404E7D73F00A4945F5DC184D2B99C7F /* RxSwift.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxSwift.xcconfig; sourceTree = ""; }; + 26A4C5501C41F777203D2271A2F2E0F6 /* Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Signal.swift; path = RxCocoa/Traits/Signal/Signal.swift; sourceTree = ""; }; + 26A8810424438A12E7ADBFB3E068C658 /* MASShortcut.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MASShortcut.framework; path = MASShortcut.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 26FDFC56191C8EAB43CE82F44287DE64 /* GroupedObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupedObservable.swift; path = RxSwift/GroupedObservable.swift; sourceTree = ""; }; + 2898467C057BF01170A471C2FC97CEE2 /* SwitchIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwitchIfEmpty.swift; path = RxSwift/Observables/SwitchIfEmpty.swift; sourceTree = ""; }; + 2898AB0C6A007CCDE297E41DBBE4F167 /* Take.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Take.swift; path = RxSwift/Observables/Take.swift; sourceTree = ""; }; + 2A11F032AFA3310A3EEE63E67481B01E /* Pods-ShadowsocksX-NG-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ShadowsocksX-NG-frameworks.sh"; sourceTree = ""; }; + 2A2A4891A6E6DAC4415135BB74993A81 /* MASKeyCodes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASKeyCodes.h; path = Framework/Model/MASKeyCodes.h; sourceTree = ""; }; + 2A376CB3E32D61CDCB42BF0B1CEB11EF /* SectionedViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SectionedViewDataSourceType.swift; path = RxCocoa/Common/SectionedViewDataSourceType.swift; sourceTree = ""; }; + 2A766ADC1A062AA51AAC444D9A853509 /* VirtualTimeScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeScheduler.swift; path = RxSwift/Schedulers/VirtualTimeScheduler.swift; sourceTree = ""; }; + 2C27FEA407D98B278E6001B742691810 /* NSObject+Rx+RawRepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+RawRepresentable.swift"; path = "RxCocoa/Foundation/NSObject+Rx+RawRepresentable.swift"; sourceTree = ""; }; + 2CB175FCBAA441BA2B3E869220FAEEE0 /* GCDWebServerPrivate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerPrivate.h; path = GCDWebServer/Core/GCDWebServerPrivate.h; sourceTree = ""; }; + 2CFE9D0E45288EBBAF865D7685C2B983 /* Pods-ShadowsocksX-NGTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-ShadowsocksX-NGTests-acknowledgements.plist"; sourceTree = ""; }; + 2D4B5E26C476B344C6D8CFF6FC4A5EF7 /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; + 2DCBBA51B2CAFED940209847149DF1CF /* RxCocoa-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-prefix.pch"; sourceTree = ""; }; + 2F8BAAE4D41F40C0FB9261765471538F /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/AppKit.framework; sourceTree = DEVELOPER_DIR; }; + 301E6AA863985EFE6C1BBAC153C3556B /* GCDWebServer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServer.h; path = GCDWebServer/Core/GCDWebServer.h; sourceTree = ""; }; + 3174248008864D7991FDA942A339917E /* GCDWebServerDataResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerDataResponse.m; path = GCDWebServer/Responses/GCDWebServerDataResponse.m; sourceTree = ""; }; + 3184A63618E8158F780B9479D58AF99E /* ObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableType.swift; path = RxSwift/ObservableType.swift; sourceTree = ""; }; + 328B2C0D0C2801DEB8E1B0CB8BC2AB26 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Carbon.framework; sourceTree = DEVELOPER_DIR; }; + 3309D64568C776424A4E0B6F079247F1 /* RxCocoaRuntime.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RxCocoaRuntime.h; path = RxCocoa/Runtime/include/RxCocoaRuntime.h; sourceTree = ""; }; + 336C288E815BB0146FB5044555064273 /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; + 33D696D0068DA801EB71A910D621AAF7 /* Map.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Map.swift; path = RxSwift/Observables/Map.swift; sourceTree = ""; }; + 3412FD7CC7AFAA07876D64625DF8FA8E /* Observable+Bind.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Bind.swift"; path = "RxCocoa/Common/Observable+Bind.swift"; sourceTree = ""; }; + 342B4165E24ECEBD7C608D11E8E002B9 /* RxCocoa.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxCocoa.xcconfig; sourceTree = ""; }; + 34E4A22716CB388EB870522B28DD7CF7 /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; + 3534159C69DA4B880233991C4B8E51F2 /* MASLocalization.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASLocalization.h; path = Framework/UI/MASLocalization.h; sourceTree = ""; }; + 3594AF696DCAF73A6B34289B67606200 /* InvocableScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableScheduledItem.swift; path = RxSwift/Schedulers/Internal/InvocableScheduledItem.swift; sourceTree = ""; }; + 35B7A19EB6F7D1969EA6A91E8AE6874D /* SubjectType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubjectType.swift; path = RxSwift/Subjects/SubjectType.swift; sourceTree = ""; }; + 361C23F647086DDACC833FCC3EB1C884 /* HistoricalScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalScheduler.swift; path = RxSwift/Schedulers/HistoricalScheduler.swift; sourceTree = ""; }; + 383D3A040BF1C400C324B79A7396A910 /* NSView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSView+Rx.swift"; path = "RxCocoa/macOS/NSView+Rx.swift"; sourceTree = ""; }; + 39BF39E019699D7BF4AF2283A9934E68 /* Platform.Linux.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Linux.swift; path = Platform/Platform.Linux.swift; sourceTree = ""; }; + 3A6BB051BFA77EC4B09F22D2F8F247E2 /* URLSession+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "URLSession+Rx.swift"; path = "RxCocoa/Foundation/URLSession+Rx.swift"; sourceTree = ""; }; + 3B2576F870C297CD693237AD0C3BE041 /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = RxSwift/Observables/Timer.swift; sourceTree = ""; }; + 3C03042C06157044F423F9D10F9B7EE0 /* NSButton+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSButton+Rx.swift"; path = "RxCocoa/macOS/NSButton+Rx.swift"; sourceTree = ""; }; + 3C6A4FC4585A5649410CE0A0227307F1 /* DeprecationWarner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DeprecationWarner.swift; path = Platform/DeprecationWarner.swift; sourceTree = ""; }; + 3CED975AC8E9111F2EC08AADBE7354E6 /* BooleanDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BooleanDisposable.swift; path = RxSwift/Disposables/BooleanDisposable.swift; sourceTree = ""; }; + 3EC92D258020E5DFC351490B403DE7A0 /* Cancelable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Cancelable.swift; path = RxSwift/Cancelable.swift; sourceTree = ""; }; + 3EFEAEC4BB3538D1D22890B92BB6F890 /* GCDWebServerURLEncodedFormRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerURLEncodedFormRequest.m; path = GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.m; sourceTree = ""; }; + 40400BB78B4C5E89A007F5A074AD17DE /* Reactive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reactive.swift; path = RxSwift/Reactive.swift; sourceTree = ""; }; + 4069F93F454E2A1E193E29683F09840A /* GCDWebServerStreamedResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerStreamedResponse.h; path = GCDWebServer/Responses/GCDWebServerStreamedResponse.h; sourceTree = ""; }; + 432661022A89EF8459BE8FB7D35501B4 /* ObservableType+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+Extensions.swift"; path = "RxSwift/ObservableType+Extensions.swift"; sourceTree = ""; }; + 44B1F3C611C57DE6A4D945624BD46CDA /* Zip+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+Collection.swift"; path = "RxSwift/Observables/Zip+Collection.swift"; sourceTree = ""; }; + 44EF13F321A3D94E22A90C3C1F10A3D0 /* Using.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Using.swift; path = RxSwift/Observables/Using.swift; sourceTree = ""; }; + 4558876E460725F68F69FA071C6B4538 /* RxCocoa.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RxCocoa.modulemap; sourceTree = ""; }; + 4659C0DFC3E93DC4C4AEECB67FA53504 /* ScheduledItemType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItemType.swift; path = RxSwift/Schedulers/Internal/ScheduledItemType.swift; sourceTree = ""; }; + 46D60A19372FA9D2D46D0B7614E0C8B7 /* CombineLatest+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+arity.swift"; path = "RxSwift/Observables/CombineLatest+arity.swift"; sourceTree = ""; }; + 471603BE2A1B99AAA1F605AD468A72F9 /* SchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SchedulerType.swift; path = RxSwift/SchedulerType.swift; sourceTree = ""; }; + 486BEA30038CDF0DEBAD9828A2E17A9A /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; + 490109B32A0DDE20F5EB889696DFE805 /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = Platform/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; + 4987E3BE8BCDB45015225A951A34F4E6 /* RxSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RxSwift.modulemap; sourceTree = ""; }; + 49FD9E180D0E148BE0BB19F763834874 /* Maybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Maybe.swift; path = RxSwift/Traits/Maybe.swift; sourceTree = ""; }; + 4A444399B751E3F7B0426D48C6C2704A /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = RxSwift/SwiftSupport/SwiftSupport.swift; sourceTree = ""; }; + 4A70BE8C07BCE9C6D6F47AC73225C959 /* Pods-proxy_conf_helper.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-proxy_conf_helper.release.xcconfig"; sourceTree = ""; }; + 4ACE6D9E8FB2E240CB7793D4F491AF48 /* BehaviorRelay+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "BehaviorRelay+Driver.swift"; path = "RxCocoa/Traits/Driver/BehaviorRelay+Driver.swift"; sourceTree = ""; }; + 4B36FFE0DCF03216A753C52928989B26 /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; + 4B60D1CBFBDA744C033F0B2A0C00159E /* SynchronizedUnsubscribeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedUnsubscribeType.swift; path = RxSwift/Concurrency/SynchronizedUnsubscribeType.swift; sourceTree = ""; }; + 4F130BAD4D802F4A724FD0C28BD40B03 /* TakeWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeWhile.swift; path = RxSwift/Observables/TakeWhile.swift; sourceTree = ""; }; + 4FA8313797668EC93B0C98D9A8F32A93 /* fr.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = fr.lproj; path = Resources/fr.lproj; sourceTree = ""; }; + 50E4F8C1AD8BDBB264641AE0A61F660A /* MASShortcutBinder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASShortcutBinder.h; path = "Framework/User Defaults Storage/MASShortcutBinder.h"; sourceTree = ""; }; + 52BF43E2486A183668EA2F7D38FE98F4 /* DistinctUntilChanged.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DistinctUntilChanged.swift; path = RxSwift/Observables/DistinctUntilChanged.swift; sourceTree = ""; }; + 5329DC6003732A15AF3A39647D60E307 /* MASShortcutBinder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASShortcutBinder.m; path = "Framework/User Defaults Storage/MASShortcutBinder.m"; sourceTree = ""; }; + 538988DBA7181A56C802219FDCA9FA53 /* DispatchQueue+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Extensions.swift"; path = "Platform/DispatchQueue+Extensions.swift"; sourceTree = ""; }; + 54ABF2FD9451CF3C229952E10B340D07 /* BRLOptionParser.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = BRLOptionParser.m; path = BRLOptionParser/BRLOptionParser.m; sourceTree = ""; }; + 55FE174008A548419E3616A8304792F3 /* Binder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Binder.swift; path = RxCocoa/Common/Binder.swift; sourceTree = ""; }; + 56EC5971E224F6AB7A2166FBA93FAA91 /* MASLocalization.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASLocalization.m; path = Framework/UI/MASLocalization.m; sourceTree = ""; }; + 57AB489E11676A4AE9EA56EADF0E63F2 /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; + 5931EBFD159B49E78EE1BB093CFE15B5 /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; + 59E35493E3A483184D5FFB2036E99FA3 /* PriorityQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PriorityQueue.swift; path = Platform/DataStructures/PriorityQueue.swift; sourceTree = ""; }; + 5ADB1C3BE4EFC0F467DCA4A6810149DA /* pt.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = pt.lproj; path = Resources/pt.lproj; sourceTree = ""; }; + 5C0C485AB4EA81F3E9128F65E9AC66CA /* Pods-ShadowsocksX-NGTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ShadowsocksX-NGTests.release.xcconfig"; sourceTree = ""; }; + 5C263CEED8FEBEBA9E5ED42A571DCBAC /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = Platform/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; + 5D797E9A5C5782CE845840781FA1CC81 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Alamofire.framework; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 5DEE7953759AA3173B942483CF49AC76 /* NopDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NopDisposable.swift; path = RxSwift/Disposables/NopDisposable.swift; sourceTree = ""; }; + 5E0151F462BF0AF0A35E6786D6C1F577 /* MASShortcutValidator.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASShortcutValidator.m; path = Framework/Model/MASShortcutValidator.m; sourceTree = ""; }; + 5EDA6C2661B5E0A2052233A8317B2FCD /* ConcurrentDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentDispatchQueueScheduler.swift; path = RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift; sourceTree = ""; }; + 5F5571F7DA898207F53AFA04E29656E2 /* Platform.Darwin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Darwin.swift; path = Platform/Platform.Darwin.swift; sourceTree = ""; }; + 5F7B3BA16C26E03976A9E118CAB3FA56 /* First.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = First.swift; path = RxSwift/Observables/First.swift; sourceTree = ""; }; + 5FAADE650ACDFC94B5D96E0D54E74087 /* LockOwnerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LockOwnerType.swift; path = RxSwift/Concurrency/LockOwnerType.swift; sourceTree = ""; }; + 5FE698B84CF36F03C591400708F81380 /* ja.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = ja.lproj; path = Resources/ja.lproj; sourceTree = ""; }; + 61C23DB60A84900CD4BDA2F5EE2A0865 /* libPods-proxy_conf_helper.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-proxy_conf_helper.a"; path = "libPods-proxy_conf_helper.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 63526E356C51A8BE1118D01C6DEA5DBA /* SkipWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipWhile.swift; path = RxSwift/Observables/SkipWhile.swift; sourceTree = ""; }; + 63D72C07A6FFB7640878581F89B95DD0 /* GCDWebServerFileRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerFileRequest.m; path = GCDWebServer/Requests/GCDWebServerFileRequest.m; sourceTree = ""; }; + 659B63B81B45C439C5E4C86BB10375C6 /* ObserverType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverType.swift; path = RxSwift/ObserverType.swift; sourceTree = ""; }; + 65FFAB74D3108D76318EA4F4A9992EDB /* ObservableConvertibleType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableConvertibleType.swift; path = RxSwift/ObservableConvertibleType.swift; sourceTree = ""; }; + 6629956253480EA477A1525E57799282 /* AsMaybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsMaybe.swift; path = RxSwift/Observables/AsMaybe.swift; sourceTree = ""; }; + 665876ABA8BB56C49F9A0D280E812D28 /* MASShortcut-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "MASShortcut-Info.plist"; sourceTree = ""; }; + 66B7C342C89B9B142E281D1DD6AD78A1 /* PrimitiveSequence+Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PrimitiveSequence+Zip+arity.swift"; path = "RxSwift/Traits/PrimitiveSequence+Zip+arity.swift"; sourceTree = ""; }; + 673490A3FF56A2DE4C2610609D218166 /* Platform.Darwin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Darwin.swift; path = Platform/Platform.Darwin.swift; sourceTree = ""; }; + 675FAF9C0AC63D45D5750450AB7DE4DA /* GCDWebServerHTTPStatusCodes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerHTTPStatusCodes.h; path = GCDWebServer/Core/GCDWebServerHTTPStatusCodes.h; sourceTree = ""; }; + 69DFCECA2DA77DAE2A2C434E84344679 /* NSTextField+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSTextField+Rx.swift"; path = "RxCocoa/macOS/NSTextField+Rx.swift"; sourceTree = ""; }; + 69E916AFF16DCCD934972C769B239C3C /* RxCocoaObjCRuntimeError+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "RxCocoaObjCRuntimeError+Extensions.swift"; path = "RxCocoa/Common/RxCocoaObjCRuntimeError+Extensions.swift"; sourceTree = ""; }; + 6A6DA5E6367C8816E8C176BA368F2A94 /* GCDWebServerErrorResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerErrorResponse.m; path = GCDWebServer/Responses/GCDWebServerErrorResponse.m; sourceTree = ""; }; + 6B6DD0B1129B9AB5BDBB166F65018490 /* BinaryDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BinaryDisposable.swift; path = RxSwift/Disposables/BinaryDisposable.swift; sourceTree = ""; }; + 6FA608A971EF8C9973AB0C7F7EE2126F /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; + 7289A74DD8475BF9F706057FE4C2390D /* Generate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Generate.swift; path = RxSwift/Observables/Generate.swift; sourceTree = ""; }; + 72A57876EDEB24ADDFE06DD482CE250C /* Pods-ShadowsocksX-NGTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-ShadowsocksX-NGTests-umbrella.h"; sourceTree = ""; }; + 72E9E70F6D9D7FB922AB7988077A8184 /* DeprecationWarner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DeprecationWarner.swift; path = Platform/DeprecationWarner.swift; sourceTree = ""; }; + 732C8EA5B86127EF4191BE104639AD67 /* Zip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Zip.swift; path = RxSwift/Observables/Zip.swift; sourceTree = ""; }; + 7362E3F349600D8BAEF12104995259FF /* nl.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = nl.lproj; path = Resources/nl.lproj; sourceTree = ""; }; + 745A70C304EC58D52DC715DB747D499B /* Catch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Catch.swift; path = RxSwift/Observables/Catch.swift; sourceTree = ""; }; + 74656C1BF53AED56A45CDA8600A787D1 /* Pods-proxy_conf_helper-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-proxy_conf_helper-acknowledgements.markdown"; sourceTree = ""; }; + 75C074E6CE82F80BD31F5EF77C296905 /* Window.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Window.swift; path = RxSwift/Observables/Window.swift; sourceTree = ""; }; + 75C134F788D816D15D57A2D18B4FB891 /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = Platform/DataStructures/Queue.swift; sourceTree = ""; }; + 75EE51BF0C4BD5FAF40ECA0E6C5217A4 /* Merge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Merge.swift; path = RxSwift/Observables/Merge.swift; sourceTree = ""; }; + 76BD4617B51D3A46746C741CC790E51F /* Buffer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Buffer.swift; path = RxSwift/Observables/Buffer.swift; sourceTree = ""; }; + 77962C4AC841E11BD3C119CD4360E5F2 /* KVORepresentable+CoreGraphics.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "KVORepresentable+CoreGraphics.swift"; path = "RxCocoa/Foundation/KVORepresentable+CoreGraphics.swift"; sourceTree = ""; }; + 77A567DE40FA2D3181D483C2E5929F11 /* GCDWebServerDataResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerDataResponse.h; path = GCDWebServer/Responses/GCDWebServerDataResponse.h; sourceTree = ""; }; + 78610C90655E1113118379D3EAA0451C /* ObservableConvertibleType+SharedSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+SharedSequence.swift"; path = "RxCocoa/Traits/SharedSequence/ObservableConvertibleType+SharedSequence.swift"; sourceTree = ""; }; + 78D8483AFBC158FA298C6800DEDE4D74 /* AsyncLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncLock.swift; path = RxSwift/Concurrency/AsyncLock.swift; sourceTree = ""; }; + 78FBB4CC86926BA09E37559F66D42AB1 /* RxCocoa.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCocoa.swift; path = RxCocoa/RxCocoa.swift; sourceTree = ""; }; + 79E1CB7F314AB4C9902E146240A90952 /* MASShortcutView+Bindings.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MASShortcutView+Bindings.m"; path = "Framework/UI/MASShortcutView+Bindings.m"; sourceTree = ""; }; + 7A9FEE92CEA7F2A79EE5BE3CA2999508 /* ImmediateSchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImmediateSchedulerType.swift; path = RxSwift/ImmediateSchedulerType.swift; sourceTree = ""; }; + 7B721804AADD486C1E3669E634568426 /* MASShortcut.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = MASShortcut.xcconfig; sourceTree = ""; }; + 7C706D1A2AFEEDD4BA8727BF70C3CE95 /* MASShortcut-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MASShortcut-umbrella.h"; sourceTree = ""; }; + 7D8A7098C7C1DDA259811EBC985DDD4B /* GCDWebServer.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = GCDWebServer.modulemap; sourceTree = ""; }; + 7EB722E3B048C0455FFA251225B24F9D /* AnyObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyObserver.swift; path = RxSwift/AnyObserver.swift; sourceTree = ""; }; + 7F0C1BBE64769E8DB40F570A0BFF582F /* sv.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = sv.lproj; path = Resources/sv.lproj; sourceTree = ""; }; + 7F9D8D38BB84EDC1147440FA65F75CC1 /* Shortcut.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Shortcut.h; path = Framework/Shortcut.h; sourceTree = ""; }; + 7FF3A5DDF77CE0C90C1673EC3ED4C393 /* AsSingle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsSingle.swift; path = RxSwift/Observables/AsSingle.swift; sourceTree = ""; }; + 809C5FAB588354C9BA37DC3EAB8CB45C /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = RxSwift.framework; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 8155B6EF42E8149F4CD7F0BC05D1950F /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; + 8277BA3F6A56D35A69BE1B109040BAAD /* ControlProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlProperty.swift; path = RxCocoa/Traits/ControlProperty.swift; sourceTree = ""; }; + 82EBF3FEF6DB5B33828B9043A01A98F3 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; }; + 83899FE1EDE6090C8B2F4703A7895330 /* Pods-ShadowsocksX-NGTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-ShadowsocksX-NGTests.modulemap"; sourceTree = ""; }; + 854CFC71E31796D7E49B85709FBCEED4 /* ReplaySubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ReplaySubject.swift; path = RxSwift/Subjects/ReplaySubject.swift; sourceTree = ""; }; + 857CE58AB90955A76A17A547DE620E7F /* GroupBy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupBy.swift; path = RxSwift/Observables/GroupBy.swift; sourceTree = ""; }; + 85B75D69B674DE36FF51A28EF7816348 /* ConnectableObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConnectableObservableType.swift; path = RxSwift/ConnectableObservableType.swift; sourceTree = ""; }; + 85CEDFA6110ECCC4627F7114DC0008CE /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = RxSwift/Observables/Error.swift; sourceTree = ""; }; + 866C21955F27EBD7A49148F5E63A6E7E /* libBRLOptionParser.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libBRLOptionParser.a; path = libBRLOptionParser.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 868590BF301A4775E02F84F7B16E329B /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Alamofire.modulemap; sourceTree = ""; }; + 8752D17209EE8AAD7681107D6444113F /* Pods-proxy_conf_helper-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-proxy_conf_helper-dummy.m"; sourceTree = ""; }; + 88EB0B10C976B5429E155B7966D4224B /* ObserverBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverBase.swift; path = RxSwift/Observers/ObserverBase.swift; sourceTree = ""; }; + 89228EE0C2EA97AD1FF75E74968DC294 /* AnonymousObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousObserver.swift; path = RxSwift/Observers/AnonymousObserver.swift; sourceTree = ""; }; + 894A940ECC9153003C9D4BD6A1C34075 /* BRLOptionParser.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = BRLOptionParser.xcconfig; sourceTree = ""; }; + 89943E24574E22E8826F5E16B9E34E3B /* MASShortcut.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = MASShortcut.modulemap; sourceTree = ""; }; + 8BF0A688C22F29DB903EF9A236ED7348 /* _RX.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RX.h; path = RxCocoa/Runtime/include/_RX.h; sourceTree = ""; }; + 8E290A37E260985BBAA653427D24EBC6 /* Repeat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Repeat.swift; path = RxSwift/Observables/Repeat.swift; sourceTree = ""; }; + 91ED414CA91E90DB1FC1DDB09736FF57 /* RxTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTarget.swift; path = RxCocoa/Common/RxTarget.swift; sourceTree = ""; }; + 92806FA2DD6EBD0D101F4EB0F315034E /* NotificationCenter+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NotificationCenter+Rx.swift"; path = "RxCocoa/Foundation/NotificationCenter+Rx.swift"; sourceTree = ""; }; + 92B4BB091693150E5B1FCC6987683C6F /* Pods-ShadowsocksX-NG.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ShadowsocksX-NG.release.xcconfig"; sourceTree = ""; }; + 9305CF18E7BFA5FCDDF474A3A620ADEB /* en.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = en.lproj; path = Resources/en.lproj; sourceTree = ""; }; + 933CEADFC29A6EE4EBA98FC012098C32 /* RxMutableBox.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxMutableBox.swift; path = RxSwift/RxMutableBox.swift; sourceTree = ""; }; + 940CF5F9A64D84BB22B13B11080B86A0 /* DelegateProxyType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxyType.swift; path = RxCocoa/Common/DelegateProxyType.swift; sourceTree = ""; }; + 9494175D49ECE1E60A7DA761334D4D16 /* SynchronizedOnType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedOnType.swift; path = RxSwift/Concurrency/SynchronizedOnType.swift; sourceTree = ""; }; + 9580718B59112E917F818E1005D06AD5 /* NSSlider+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSSlider+Rx.swift"; path = "RxCocoa/macOS/NSSlider+Rx.swift"; sourceTree = ""; }; + 9676CD91CE4566CA748833BF45C9E47A /* BRLOptionParser-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "BRLOptionParser-dummy.m"; sourceTree = ""; }; + 96B29CD14467A7E410286D296BBBAA8B /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = RxSwift/Errors.swift; sourceTree = ""; }; + 96C80DBAD0A8D59912E005E60636A935 /* Pods-ShadowsocksX-NG-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-ShadowsocksX-NG-Info.plist"; sourceTree = ""; }; + 9713B9CAC03327DA33693BA26A0F4E62 /* ScheduledDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledDisposable.swift; path = RxSwift/Disposables/ScheduledDisposable.swift; sourceTree = ""; }; + 972F864D3684F69871952707323389FC /* MainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MainScheduler.swift; path = RxSwift/Schedulers/MainScheduler.swift; sourceTree = ""; }; + 9794100E1126279BFD7E0C9A3B6EA12D /* ru.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = ru.lproj; path = Resources/ru.lproj; sourceTree = ""; }; + 97EA47DDA4738601487373C3D63E8892 /* PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PrimitiveSequence.swift; path = RxSwift/Traits/PrimitiveSequence.swift; sourceTree = ""; }; + 9A3DC903F9DCC3992EF284E7BAF21F9A /* Completable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Completable.swift; path = RxSwift/Traits/Completable.swift; sourceTree = ""; }; + 9A71B9958F30759ED2645E0DF9ADF314 /* Pods-ShadowsocksX-NG.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ShadowsocksX-NG.debug.xcconfig"; sourceTree = ""; }; + 9C23644E46BE19ECA6B060B686EBF945 /* Sink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sink.swift; path = RxSwift/Observables/Sink.swift; sourceTree = ""; }; + 9C7C1392947617BEB20243D3A8B5C4B4 /* SerialDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDispatchQueueScheduler.swift; path = RxSwift/Schedulers/SerialDispatchQueueScheduler.swift; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9DD7F564E610842CC3A8742AEDB98AC2 /* Optional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Optional.swift; path = RxSwift/Observables/Optional.swift; sourceTree = ""; }; + 9ED8A086BE8CA5BEE3E5C0D37A2CD14F /* ObservableConvertibleType+Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+Signal.swift"; path = "RxCocoa/Traits/Signal/ObservableConvertibleType+Signal.swift"; sourceTree = ""; }; + 9EE18AC0191E46D8EC72777A7E7FB2E9 /* DisposeBag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBag.swift; path = RxSwift/Disposables/DisposeBag.swift; sourceTree = ""; }; + 9F749FF2003212B6BB1F099230930339 /* GCDWebServerDataRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerDataRequest.m; path = GCDWebServer/Requests/GCDWebServerDataRequest.m; sourceTree = ""; }; + A0149BCB55A4206031C9E2E594FE7715 /* ResourceBundle-MASShortcut-MASShortcut-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ResourceBundle-MASShortcut-MASShortcut-Info.plist"; sourceTree = ""; }; + A1402ED175029AB00EF213BFBA8CFD49 /* RxCocoa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RxCocoa.h; path = RxCocoa/RxCocoa.h; sourceTree = ""; }; + A225E632BA30EEAA6D5E842E4A2C9FB0 /* MASHotKey.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASHotKey.m; path = Framework/Monitoring/MASHotKey.m; sourceTree = ""; }; + A2903E99F494AA6ED5682829A7DD6746 /* Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+arity.swift"; path = "RxSwift/Observables/Zip+arity.swift"; sourceTree = ""; }; + A3559D9AF301168A7297F8316642A1D9 /* Logging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Logging.swift; path = RxCocoa/Foundation/Logging.swift; sourceTree = ""; }; + A3E163070E4653A0771719664D8AA4B9 /* Lock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Lock.swift; path = RxSwift/Concurrency/Lock.swift; sourceTree = ""; }; + A41B07B49552AF24E5D407B482F05423 /* GCDWebServerFunctions.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerFunctions.m; path = GCDWebServer/Core/GCDWebServerFunctions.m; sourceTree = ""; }; + A4514618AF4A8785D792681F9D0B5746 /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = Platform/DataStructures/Bag.swift; sourceTree = ""; }; + A482C79B8AF4BC4DCC6F41EC168ECFD6 /* InvocableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableType.swift; path = RxSwift/Schedulers/Internal/InvocableType.swift; sourceTree = ""; }; + A4BA06D76B9EA13CE2C114A88A8FB364 /* BRLOptionParser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = BRLOptionParser.h; path = BRLOptionParser/BRLOptionParser.h; sourceTree = ""; }; + A58214A49C128D7A4C7544E87344A3C1 /* TextInput.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextInput.swift; path = RxCocoa/Common/TextInput.swift; sourceTree = ""; }; + A5A188D8015FF2598B5B115664C8F68A /* CompositeDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositeDisposable.swift; path = RxSwift/Disposables/CompositeDisposable.swift; sourceTree = ""; }; + A629CDD24AF9307B7373201BB35B6ECF /* Debounce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debounce.swift; path = RxSwift/Observables/Debounce.swift; sourceTree = ""; }; + A711F6A9FC3D9105FB4752EB5E8E58B0 /* Throttle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Throttle.swift; path = RxSwift/Observables/Throttle.swift; sourceTree = ""; }; + A73DA8FC3EC519393FA7257C0DBC08F9 /* ControlProperty+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlProperty+Driver.swift"; path = "RxCocoa/Traits/Driver/ControlProperty+Driver.swift"; sourceTree = ""; }; + A839CE99A0200CB2995E3549F9C5FBE0 /* AsyncSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncSubject.swift; path = RxSwift/Subjects/AsyncSubject.swift; sourceTree = ""; }; + A85201A2C8FCE9F2930DF6713A811387 /* GCDWebServerFileResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerFileResponse.m; path = GCDWebServer/Responses/GCDWebServerFileResponse.m; sourceTree = ""; }; + A8B59616294393CA99FAFFB5B1270A6E /* ScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItem.swift; path = RxSwift/Schedulers/Internal/ScheduledItem.swift; sourceTree = ""; }; + A907FA326D15CD08847B63032F80EB64 /* Pods-ShadowsocksX-NG-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-ShadowsocksX-NG-acknowledgements.markdown"; sourceTree = ""; }; + AB93579EEF7A09B9E38054B8578C9D11 /* Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debug.swift; path = RxSwift/Observables/Debug.swift; sourceTree = ""; }; + AC7B5BFC733D26F4D5622E3A9CD8C0AC /* RxSwift-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "RxSwift-Info.plist"; sourceTree = ""; }; + AD0F61B9114CEA17068358E3D198DAD8 /* TailRecursiveSink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TailRecursiveSink.swift; path = RxSwift/Observers/TailRecursiveSink.swift; sourceTree = ""; }; + AF31FACAAF599D90A1D29D4D7516690C /* es.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = es.lproj; path = Resources/es.lproj; sourceTree = ""; }; + AFC6CB4A62F10360B227B484260F3848 /* Completable+AndThen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Completable+AndThen.swift"; path = "RxSwift/Traits/Completable+AndThen.swift"; sourceTree = ""; }; + B022E3F37B012E58AB109F19D9909CF0 /* String+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+Rx.swift"; path = "RxSwift/Extensions/String+Rx.swift"; sourceTree = ""; }; + B0F3EB47555FFAA0DA0C139814141047 /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = Platform/DataStructures/Bag.swift; sourceTree = ""; }; + B157A63D0DE60AA5D33DF7A0D62C53D6 /* BehaviorSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorSubject.swift; path = RxSwift/Subjects/BehaviorSubject.swift; sourceTree = ""; }; + B3D3469A3044026BD104951B1BEB597D /* Do.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Do.swift; path = RxSwift/Observables/Do.swift; sourceTree = ""; }; + B422395440185D1EF83278571E9A224F /* Disposables.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposables.swift; path = RxSwift/Disposables/Disposables.swift; sourceTree = ""; }; + B43A9BF4D6C1E31117E289729BCD09A0 /* Bag+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Bag+Rx.swift"; path = "RxSwift/Extensions/Bag+Rx.swift"; sourceTree = ""; }; + B463BCB90F2FAE45265C8DCD6BDFAF60 /* Multicast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Multicast.swift; path = RxSwift/Observables/Multicast.swift; sourceTree = ""; }; + B500AB6C7812692C521D5DD14DF74004 /* NSControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSControl+Rx.swift"; path = "RxCocoa/macOS/NSControl+Rx.swift"; sourceTree = ""; }; + B609F310C49D10770B5FB391CDAA5098 /* MASShortcut.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASShortcut.h; path = Framework/Model/MASShortcut.h; sourceTree = ""; }; + B68C1052A3B51DBCF7D960F898AAFA95 /* GCDWebServer.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = GCDWebServer.framework; path = GCDWebServer.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + B6D11F1F9EBFD924C95404221C791A6A /* Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Driver.swift; path = RxCocoa/Traits/Driver/Driver.swift; sourceTree = ""; }; + B6F1D8358CA9E96DAEF792E0AE01A44A /* BRLOptionParser-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "BRLOptionParser-prefix.pch"; sourceTree = ""; }; + B797965188D07FBBF91BA7F69EC21D39 /* Pods-ShadowsocksX-NGTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-ShadowsocksX-NGTests-Info.plist"; sourceTree = ""; }; + B7BA1D11655FE4B30506171E2CE70246 /* Enumerated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Enumerated.swift; path = RxSwift/Observables/Enumerated.swift; sourceTree = ""; }; + B83DF7D23A6D5A6102B1F11A9CF28992 /* MASShortcut.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASShortcut.m; path = Framework/Model/MASShortcut.m; sourceTree = ""; }; + B8F1ABD0F2D464C40146ACF227569C46 /* SubscriptionDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscriptionDisposable.swift; path = RxSwift/Disposables/SubscriptionDisposable.swift; sourceTree = ""; }; + B96E67605923D3489CF58CC32695AA2D /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; }; + B98F8BDDE507E7BD87B849BAA6DB3EB9 /* SharedSequence+Operators.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SharedSequence+Operators.swift"; path = "RxCocoa/Traits/SharedSequence/SharedSequence+Operators.swift"; sourceTree = ""; }; + BA24D82F4D58FD5CB27352BDF333E409 /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; + BA6BC6261543AFA8730439C5E3D6FA14 /* CombineLatest+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+Collection.swift"; path = "RxSwift/Observables/CombineLatest+Collection.swift"; sourceTree = ""; }; + BAF3CA88F186E7EF40DF399A454757DC /* Platform.Linux.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Linux.swift; path = Platform/Platform.Linux.swift; sourceTree = ""; }; + BB395D06F703BC5DABE7B987F87E93F4 /* SchedulerType+SharedSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerType+SharedSequence.swift"; path = "RxCocoa/Traits/SharedSequence/SchedulerType+SharedSequence.swift"; sourceTree = ""; }; + BB464592E309DBC6B1C32142F27DC205 /* cs.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = cs.lproj; path = Resources/cs.lproj; sourceTree = ""; }; + BBB4AB7E7AF099E47EDB81ED5664A10E /* OperationQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OperationQueueScheduler.swift; path = RxSwift/Schedulers/OperationQueueScheduler.swift; sourceTree = ""; }; + BC432FD48A5932251F1CAFBC4BF74894 /* RxCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = RxCocoa.framework; path = RxCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + BE4D4254E7BF6ACFAA307212458040FA /* NSImageView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSImageView+Rx.swift"; path = "RxCocoa/macOS/NSImageView+Rx.swift"; sourceTree = ""; }; + BF2326C544C1AA0946EA133E59536085 /* AddRef.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AddRef.swift; path = RxSwift/Observables/AddRef.swift; sourceTree = ""; }; + BF2C8DD9A124D9A6E183D428FADF2C56 /* StartWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StartWith.swift; path = RxSwift/Observables/StartWith.swift; sourceTree = ""; }; + C040A24C79BECD83D8DAEBB732CA2C4C /* RxSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-umbrella.h"; sourceTree = ""; }; + C0539693C0F2FC077F09DC01D9DD9889 /* DispatchQueue+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Extensions.swift"; path = "Platform/DispatchQueue+Extensions.swift"; sourceTree = ""; }; + C05663B4BAFA8BAE8DD2907768B939E5 /* PriorityQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PriorityQueue.swift; path = Platform/DataStructures/PriorityQueue.swift; sourceTree = ""; }; + C0C4736BB8B495059B442618BA5752DB /* ko.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = ko.lproj; path = Resources/ko.lproj; sourceTree = ""; }; + C102E4BA9204E05BAF18BF208FEE50AE /* RxSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-prefix.pch"; sourceTree = ""; }; + C2CBB975A64A93ADDB9C98CE015D6EC9 /* SynchronizedDisposeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedDisposeType.swift; path = RxSwift/Concurrency/SynchronizedDisposeType.swift; sourceTree = ""; }; + C4692556AA35C141B365E9DA059108AE /* Disposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposable.swift; path = RxSwift/Disposable.swift; sourceTree = ""; }; + C473238BBA46728E853ECA6DC657B55B /* de.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = de.lproj; path = Resources/de.lproj; sourceTree = ""; }; + C492AED829C3ECE9C4CCE59D7345E275 /* SharedSequence+Operators+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SharedSequence+Operators+arity.swift"; path = "RxCocoa/Traits/SharedSequence/SharedSequence+Operators+arity.swift"; sourceTree = ""; }; + C4D9C1DD466917BEDA486C5EB25C224B /* Single.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Single.swift; path = RxSwift/Traits/Single.swift; sourceTree = ""; }; + C4E18A4DDBFBD0CA9BD0329386CDB718 /* DisposeBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBase.swift; path = RxSwift/Disposables/DisposeBase.swift; sourceTree = ""; }; + C6CBC513FD67E4B9D27B37B20FE77767 /* _RXDelegateProxy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXDelegateProxy.m; path = RxCocoa/Runtime/_RXDelegateProxy.m; sourceTree = ""; }; + C75A980446438AE106AEB35138F54A85 /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + C94C26FB4F7BF070740AFEF36696885A /* PublishRelay+Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PublishRelay+Signal.swift"; path = "RxCocoa/Traits/Signal/PublishRelay+Signal.swift"; sourceTree = ""; }; + CB783DCBD874ACDBC21A714E04D8F52E /* SingleAsync.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAsync.swift; path = RxSwift/Observables/SingleAsync.swift; sourceTree = ""; }; + CC5891807424EE31938582ED13293B62 /* ObservableConvertibleType+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+Driver.swift"; path = "RxCocoa/Traits/Driver/ObservableConvertibleType+Driver.swift"; sourceTree = ""; }; + CD428F0756402A68D38A9EED8F928150 /* Producer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Producer.swift; path = RxSwift/Observables/Producer.swift; sourceTree = ""; }; + CD95085BFAA31431686824B236DB9319 /* Pods-ShadowsocksX-NG-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-ShadowsocksX-NG-umbrella.h"; sourceTree = ""; }; + CE59059EEA9DD611319BD64150DB48A8 /* Driver+Subscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Driver+Subscription.swift"; path = "RxCocoa/Traits/Driver/Driver+Subscription.swift"; sourceTree = ""; }; + CF0B73A5BA95D377B76E97C3A4528FFE /* GCDWebServerErrorResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerErrorResponse.h; path = GCDWebServer/Responses/GCDWebServerErrorResponse.h; sourceTree = ""; }; + D06011ADC7F3A1790E57DD5652824B0A /* SubscribeOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscribeOn.swift; path = RxSwift/Observables/SubscribeOn.swift; sourceTree = ""; }; + D0757DAE9E8CB0717073540EE8D9C4C9 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = RxSwift/Observables/Filter.swift; sourceTree = ""; }; + D102D6B345CC3BF4C7BC4E723D4F0ACD /* RecursiveLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveLock.swift; path = Platform/RecursiveLock.swift; sourceTree = ""; }; + D225E5C03674DD9F3CE6A8DE1CC909DD /* GCDWebServer-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GCDWebServer-prefix.pch"; sourceTree = ""; }; + D2E9FD0CB124731BFBD756093E872FD1 /* WithLatestFrom.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WithLatestFrom.swift; path = RxSwift/Observables/WithLatestFrom.swift; sourceTree = ""; }; + D303E3D83E22FD1525FB8E4D2457EC46 /* PublishRelay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishRelay.swift; path = RxCocoa/Traits/PublishRelay.swift; sourceTree = ""; }; + D321BE2B3A6979DBD70099045ADF171D /* GCDWebServerResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerResponse.m; path = GCDWebServer/Core/GCDWebServerResponse.m; sourceTree = ""; }; + D3BC812E63EBB9A1BE8F189026115879 /* ElementAt.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ElementAt.swift; path = RxSwift/Observables/ElementAt.swift; sourceTree = ""; }; + D3E104A91FD5736A5B464EB50E7550F3 /* RxCocoa-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "RxCocoa-Info.plist"; sourceTree = ""; }; + D48183AD5F98D081078429EF56451DFF /* Pods_ShadowsocksX_NGTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_ShadowsocksX_NGTests.framework; path = "Pods-ShadowsocksX-NGTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + D48A4078A033D9B948716B99626C26ED /* Alamofire.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.xcconfig; sourceTree = ""; }; + D4BAFDA36ADAA0AE1A0AF50E9BE316D4 /* _RX.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RX.m; path = RxCocoa/Runtime/_RX.m; sourceTree = ""; }; + D60357581333E7EC56952E31B2991366 /* Pods-ShadowsocksX-NG-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-ShadowsocksX-NG-dummy.m"; sourceTree = ""; }; + D823BB329E438EC7DCD97E71B9FE40E8 /* Delay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Delay.swift; path = RxSwift/Observables/Delay.swift; sourceTree = ""; }; + D83F47E54C3DC54EF24BA24B2D70BA3C /* DispatchQueueConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DispatchQueueConfiguration.swift; path = RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift; sourceTree = ""; }; + D86D1CC951C7C383E8872CF5549F6C8E /* Reduce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reduce.swift; path = RxSwift/Observables/Reduce.swift; sourceTree = ""; }; + D896F6A68919914B3302027C15449A1D /* Pods_ShadowsocksX_NG.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_ShadowsocksX_NG.framework; path = "Pods-ShadowsocksX-NG.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + D8C88B0B7BFE785BC9B00D1C53FDC003 /* Pods-proxy_conf_helper.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-proxy_conf_helper.debug.xcconfig"; sourceTree = ""; }; + D8E11BFF20246B446C866F0E2026C462 /* _RXKVOObserver.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXKVOObserver.m; path = RxCocoa/Runtime/_RXKVOObserver.m; sourceTree = ""; }; + D8F30E0F75BF71A5CA6D25F4C2110750 /* Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rx.swift; path = RxSwift/Rx.swift; sourceTree = ""; }; + D93C344C4C18CCB31E7C612CA1D9C919 /* ControlEvent.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlEvent.swift; path = RxCocoa/Traits/ControlEvent.swift; sourceTree = ""; }; + DA4858DED0202159CC1BF14B653B7212 /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; + DABD5E02E0387FDA13E08502747E4F78 /* GCDWebServerFileResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerFileResponse.h; path = GCDWebServer/Responses/GCDWebServerFileResponse.h; sourceTree = ""; }; + DAC4BCC1EFD1317EBF4B9BA36E1134C5 /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = RxSwift/Deprecated.swift; sourceTree = ""; }; + DB32400B5D77925D116636110300F088 /* _RXKVOObserver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXKVOObserver.h; path = RxCocoa/Runtime/include/_RXKVOObserver.h; sourceTree = ""; }; + DB6AA6287CFABD7B8375E6C2E184B08C /* Range.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Range.swift; path = RxSwift/Observables/Range.swift; sourceTree = ""; }; + DBDED7E5A4595D7859247206C13E23D1 /* SchedulerServices+Emulation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerServices+Emulation.swift"; path = "RxSwift/Schedulers/SchedulerServices+Emulation.swift"; sourceTree = ""; }; + DE24812E221CDFFB5205BF6E892D589F /* MASKeyMasks.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASKeyMasks.h; path = Framework/Model/MASKeyMasks.h; sourceTree = ""; }; + E0796DA988C10ACA64CF57C0C03993D2 /* GCDWebServerMultiPartFormRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerMultiPartFormRequest.m; path = GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.m; sourceTree = ""; }; + E21424A29849A7F0EA632156107DA963 /* MASShortcutMonitor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASShortcutMonitor.h; path = Framework/Monitoring/MASShortcutMonitor.h; sourceTree = ""; }; + E3E1FDE57B6AAF7C58D0C1396F58882A /* RxCocoa-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxCocoa-dummy.m"; sourceTree = ""; }; + E4BB4DCF53E4F360602A5F6294A69B67 /* GCDWebServer.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = GCDWebServer.xcconfig; sourceTree = ""; }; + E52D6747AFDC0620384A0FCEEAD0E0C5 /* GCDWebServerResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerResponse.h; path = GCDWebServer/Core/GCDWebServerResponse.h; sourceTree = ""; }; + E65D8EE7AF8AF72DD4DF0CCEE4C77A37 /* Sample.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sample.swift; path = RxSwift/Observables/Sample.swift; sourceTree = ""; }; + E6B48AD4A8557828C3A241C1E1E32541 /* MASShortcutMonitor.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASShortcutMonitor.m; path = Framework/Monitoring/MASShortcutMonitor.m; sourceTree = ""; }; + E6C3D177B65F84B696697C60F97A8DD8 /* GCDWebServer-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GCDWebServer-umbrella.h"; sourceTree = ""; }; + E71C2EEFAC75B0322274FAD501E14B5B /* RecursiveLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveLock.swift; path = Platform/RecursiveLock.swift; sourceTree = ""; }; + E87B13FF718D313573F766B7CC408ED7 /* GCDWebServerFunctions.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerFunctions.h; path = GCDWebServer/Core/GCDWebServerFunctions.h; sourceTree = ""; }; + E98113C743286FF04B190D6C649B6939 /* GCDWebServer-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "GCDWebServer-Info.plist"; sourceTree = ""; }; + EA3B7BA760EF5910B7586199E3CAF429 /* MASHotKey.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MASHotKey.h; path = Framework/Monitoring/MASHotKey.h; sourceTree = ""; }; + EA60B521316EFC34215D83BE18704A96 /* Skip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Skip.swift; path = RxSwift/Observables/Skip.swift; sourceTree = ""; }; + EC264F1B6B228DB4C74BDACA8C9D8AAF /* KVORepresentable+Swift.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "KVORepresentable+Swift.swift"; path = "RxCocoa/Foundation/KVORepresentable+Swift.swift"; sourceTree = ""; }; + EC35ACB06F35C9F9137AC022D163405C /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; + ED5FE7C7406ACE4E1C2E490862FC27F1 /* ObservableType+PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+PrimitiveSequence.swift"; path = "RxSwift/Traits/ObservableType+PrimitiveSequence.swift"; sourceTree = ""; }; + EE1CB6F534B91BE694EFB4B9215B6209 /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; + EE40E1C28C0ED004EC66B24A11D003A1 /* BehaviorRelay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorRelay.swift; path = RxCocoa/Traits/BehaviorRelay.swift; sourceTree = ""; }; + EEBE1A4DAC125D4D87965C8C63DA855E /* _RXObjCRuntime.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXObjCRuntime.h; path = RxCocoa/Runtime/include/_RXObjCRuntime.h; sourceTree = ""; }; + EECED9A0B941992178458CFD2789E1C3 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; + EF2675EFADCB1550AB2ABF860C0EFF1C /* DelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxy.swift; path = RxCocoa/Common/DelegateProxy.swift; sourceTree = ""; }; + EFAB70ED5E1150ADF0281CD817202D88 /* Observable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observable.swift; path = RxSwift/Observable.swift; sourceTree = ""; }; + F302AAABBBBE3D6EC60D1DD8CC05C6D5 /* Empty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Empty.swift; path = RxSwift/Observables/Empty.swift; sourceTree = ""; }; + F4A7A90485C50CEAEBCB40B7A7AC37AE /* MASDictionaryTransformer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASDictionaryTransformer.m; path = "Framework/User Defaults Storage/MASDictionaryTransformer.m"; sourceTree = ""; }; + F6B2FF71E3394A2277F5630ADE77EBEC /* GCDWebServerConnection.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerConnection.m; path = GCDWebServer/Core/GCDWebServerConnection.m; sourceTree = ""; }; + F6D644AA126B3EFD20AC7A640C25A460 /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; + F7A0359E44CDC57164E50B9D2B31CBFC /* ShareReplayScope.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShareReplayScope.swift; path = RxSwift/Observables/ShareReplayScope.swift; sourceTree = ""; }; + F7E7E3B6C10726C992A09070284DB7B6 /* MASShortcutView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MASShortcutView.m; path = Framework/UI/MASShortcutView.m; sourceTree = ""; }; + F81B4DA916899DDFA2772E61674477E8 /* DefaultIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultIfEmpty.swift; path = RxSwift/Observables/DefaultIfEmpty.swift; sourceTree = ""; }; + F8DBA570AB4D7104DF77039D23C512C1 /* RecursiveScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveScheduler.swift; path = RxSwift/Schedulers/RecursiveScheduler.swift; sourceTree = ""; }; + F955A1C05E2E4CD1A90F9C0D51BAE4F7 /* GCDWebServerDataRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerDataRequest.h; path = GCDWebServer/Requests/GCDWebServerDataRequest.h; sourceTree = ""; }; + FA6E0B479C3A2FACD878521E9CBCC11D /* GCDWebServerURLEncodedFormRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerURLEncodedFormRequest.h; path = GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.h; sourceTree = ""; }; + FB38AA80740D5626F6C00658547F42C3 /* NSLayoutConstraint+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSLayoutConstraint+Rx.swift"; path = "RxCocoa/Common/NSLayoutConstraint+Rx.swift"; sourceTree = ""; }; + FB50A95F3BC6DC12244F2B76ABEBB9BD /* Pods-ShadowsocksX-NG-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-ShadowsocksX-NG-acknowledgements.plist"; sourceTree = ""; }; + FBE439EFC638971FD247FBB52CA99A9F /* ToArray.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ToArray.swift; path = RxSwift/Observables/ToArray.swift; sourceTree = ""; }; + FC0C7A7BD6EE3E64A6CABC0AC01DEA80 /* ControlEvent+Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlEvent+Signal.swift"; path = "RxCocoa/Traits/Signal/ControlEvent+Signal.swift"; sourceTree = ""; }; + FC5ED92592EEA919122E2FBD46851375 /* AnonymousDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousDisposable.swift; path = RxSwift/Disposables/AnonymousDisposable.swift; sourceTree = ""; }; + FC7B232F24E185E666E15604B9FEC8D3 /* SerialDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDisposable.swift; path = RxSwift/Disposables/SerialDisposable.swift; sourceTree = ""; }; + FD70E833144479E2A5AA429BA6BA9C5B /* GCDWebServerRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerRequest.h; path = GCDWebServer/Core/GCDWebServerRequest.h; sourceTree = ""; }; + FDB4A4C063CE1EF210E254829012DB5B /* NSObject+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx.swift"; path = "RxCocoa/Foundation/NSObject+Rx.swift"; sourceTree = ""; }; + FDC4030A41798B054370BEA4580333DD /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = Platform/DataStructures/Queue.swift; sourceTree = ""; }; + FDE37E713660DC3D2F7ED930D7A70DE2 /* zh-Hans.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = "zh-Hans.lproj"; path = "Resources/zh-Hans.lproj"; sourceTree = ""; }; + FEB7109F32A44D56AA05F3FB731D764A /* MASShortcutView+Bindings.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MASShortcutView+Bindings.h"; path = "Framework/UI/MASShortcutView+Bindings.h"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 06DB63E0064B15C5B39BFF16CDD7970E /* Frameworks */ = { + 03EC701EA93354FA80620865021DDA20 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 374C03041AE988F0C5CE2DFB025C0CB1 /* AppKit.framework in Frameworks */, + 13C1CE0E8AA9ECEC60B23849CF09A4E0 /* Carbon.framework in Frameworks */, + 9D7607BC54363A90B707BDEF8EF1AA54 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 43B1C678B298B0D945231704CB405D53 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + FE23AFE6D8E46B3CD2505DE11CA82A8C /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 550A4EC5CA7C76FA9E91471AF2FA0F18 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + FFC27D9C106B3345B95358D853ABEB74 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 787DB3400F0D0F318E4E36A150350BDD /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 0676E07D844D50CF4505D20DE25EBF6A /* Cocoa.framework in Frameworks */, + 75FDE407AE76F5B3F25862D02BF8EFDB /* RxSwift.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8E62B48C75664826F00271649DEDBE7F /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + F7F13DADAC83BE187A2FD4D509F02A3B /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 90BE591F87E8CB0CD3B421484084CF1F /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 4F131864F47901DC9547FC3861CAA756 /* Frameworks */ = { + C2D4774AB2F0BFB25B60914F66C457AC /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 6CE3F1A01E6DE8F58A874B780C66A6FA /* Cocoa.framework in Frameworks */, + 1C12C7D2A9A258BDCA5D921F8FB43858 /* Cocoa.framework in Frameworks */, + 13283107A9C06569A786304D9A59626D /* SystemConfiguration.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 656F921478BE483858A20165B6945F4A /* Frameworks */ = { + EE0D52842751CED2CD0BD2633A30FEA4 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 626A7B01D3D6B6EA0869551ACE82FB8B /* Cocoa.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 7E718F9F87ABFC0EC82CF710FAF92DC4 /* Frameworks */ = { + F48CC03784155F3AB3D513B5BEA3AB81 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 33669A1E8FF6BB34131FB94871DDF908 /* Cocoa.framework in Frameworks */, - 382EEA9832CF0E0860B998EAD0EE66E1 /* SystemConfiguration.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - AC6EF4DCF3427EDD23A06A9ACE60D1CB /* Frameworks */ = { + F9230A35111B5DCDA46C2D1D69595EDC /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 8FEBDE87BFA67E4AD0EC88774A1097F2 /* Cocoa.framework in Frameworks */, - 75780983A83E65A597525566173E3C7C /* RxSwift.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - B14D21A682C80219D90189FAC9A7DDDF /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 9DB91F7B392D045AB8451F515D20D649 /* Cocoa.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - BC15E0C98F4999B51186E4915D7B5660 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - CD97073476795E5EAA07C91A7F7890D2 /* Cocoa.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - BFC962BBCB4EEE8B8C42B979F2D19C34 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 3DD0362B0B6B939B5D087A150121A4B1 /* Cocoa.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C8718142612A4E100493606F033235C0 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 008D88E94858B0B8190DD42951253AD2 /* Cocoa.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - CDE6AA439381DD5665018F889D1E5A6B /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 618D3C71663174E07B65950421C46D48 /* AppKit.framework in Frameworks */, - EE85F313D5EC70842C812EB16038F4F2 /* Carbon.framework in Frameworks */, - 38974DB132715266ADE00F2E3DFBB320 /* Cocoa.framework in Frameworks */, + 891D066B2A3C9C4CB0AB2BF10DBCB70E /* Cocoa.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 07568FCBBF071BD2EE0E5EBA001A4712 /* Pods-ShadowsocksX-NGTests */ = { + 016ECA8DBDA1E03C02AE6CE07B9C7B28 /* Pods-ShadowsocksX-NGTests */ = { isa = PBXGroup; children = ( - 9B8B5CBA357BDB968C73E8F58DFBC74C /* Info.plist */, - BE672B43951C625CA5F89E448A620AB0 /* Pods-ShadowsocksX-NGTests.modulemap */, - 83323A1A2936BBA3D386DCC078E3821E /* Pods-ShadowsocksX-NGTests-acknowledgements.markdown */, - 1F162D37B7B6534A6D80FEE301F586EE /* Pods-ShadowsocksX-NGTests-acknowledgements.plist */, - 46662EB64876AD1C891F548C69A89E89 /* Pods-ShadowsocksX-NGTests-dummy.m */, - 0E8A27A8C9BD6FF9AE3DCBC4050CCD76 /* Pods-ShadowsocksX-NGTests-frameworks.sh */, - B30805F63C611810B322187824EBC4A5 /* Pods-ShadowsocksX-NGTests-resources.sh */, - D7E8128F302CF60BEF206008CE11F6D3 /* Pods-ShadowsocksX-NGTests-umbrella.h */, - 9BA2A0099476E08B6CC8026BDF0C603E /* Pods-ShadowsocksX-NGTests.debug.xcconfig */, - F67191B1F87DA238C4D87250DFBE43DD /* Pods-ShadowsocksX-NGTests.release.xcconfig */, + 83899FE1EDE6090C8B2F4703A7895330 /* Pods-ShadowsocksX-NGTests.modulemap */, + 22ADD736785A6DE33628551E25AC889A /* Pods-ShadowsocksX-NGTests-acknowledgements.markdown */, + 2CFE9D0E45288EBBAF865D7685C2B983 /* Pods-ShadowsocksX-NGTests-acknowledgements.plist */, + 1C10AA3C311345DB3616BCE827B69C55 /* Pods-ShadowsocksX-NGTests-dummy.m */, + B797965188D07FBBF91BA7F69EC21D39 /* Pods-ShadowsocksX-NGTests-Info.plist */, + 72A57876EDEB24ADDFE06DD482CE250C /* Pods-ShadowsocksX-NGTests-umbrella.h */, + 196DA983244F60766BA272090829A16E /* Pods-ShadowsocksX-NGTests.debug.xcconfig */, + 5C0C485AB4EA81F3E9128F65E9AC66CA /* Pods-ShadowsocksX-NGTests.release.xcconfig */, ); name = "Pods-ShadowsocksX-NGTests"; path = "Target Support Files/Pods-ShadowsocksX-NGTests"; sourceTree = ""; }; - 3F41528D8527E7927A277FE059F9FC77 /* Support Files */ = { + 0F258020A47C1F403F36EBB32FDD9A83 /* Support Files */ = { isa = PBXGroup; children = ( - 04BAD8299F0B7A65CFCE251F1F7722C0 /* Alamofire.modulemap */, - 4CE700501A5FBA06F359007666C43958 /* Alamofire.xcconfig */, - 06FF1E1D8696715F0476C721349ABF4A /* Alamofire-dummy.m */, - 9BCF18187EC77D481751E793B1B99458 /* Alamofire-prefix.pch */, - D77C4845A393085D1F7FF68A785D6A6B /* Alamofire-umbrella.h */, - EB7F2ED22A2C64159A4F936BFADE6E45 /* Info.plist */, - ); - name = "Support Files"; - path = "../Target Support Files/Alamofire"; - sourceTree = ""; - }; - 4B6B0D327DA58988CCE4B33397397D74 /* Support Files */ = { - isa = PBXGroup; - children = ( - 2D190E53FA2881C4C0669D0F0367DE31 /* Info.plist */, - 679166C482C63EB7F940FE7A6476274B /* MASShortcut.modulemap */, - EF8570C25461953B9B13A259DDC88592 /* MASShortcut.xcconfig */, - C54EAA06C0712228D110E5F33FD72EC9 /* MASShortcut-dummy.m */, - C045555E3D465D287E7928F6180E1B12 /* MASShortcut-prefix.pch */, - ABEF7628490A51F0ED3BE67393DEB56E /* MASShortcut-umbrella.h */, - 124A08134F4F0DFD6C6D5F5B29F0F045 /* ResourceBundle-MASShortcut-Info.plist */, - ); - name = "Support Files"; - path = "../Target Support Files/MASShortcut"; - sourceTree = ""; - }; - 50D8BF310E0933E0B29656BDF88A05CF /* Core */ = { - isa = PBXGroup; - children = ( - 2C34C0B46CA55D9826447C6EF5667B77 /* GCDWebServer.h */, - 1C34DF9211C78641101C8029D821282C /* GCDWebServer.m */, - B7C8CD3DFA056CB378EA8126D471FE4D /* GCDWebServerConnection.h */, - B458372D1D2009A7FDC10C7A5379CF07 /* GCDWebServerConnection.m */, - D80BBC49309E8C0FFEE8339DD05B1420 /* GCDWebServerDataRequest.h */, - 8DF79E5957660D27729BE2711F7510D5 /* GCDWebServerDataRequest.m */, - DB253165A9F6EDB8299D6D115FAEBD42 /* GCDWebServerDataResponse.h */, - 25BD92FA972425CD9706F8177394D7DF /* GCDWebServerDataResponse.m */, - 3DD66E9E374587EE9AC648D811B5042E /* GCDWebServerErrorResponse.h */, - DB7869CB7726942306727ACBE0A6CD4E /* GCDWebServerErrorResponse.m */, - BEA567412780FF078C4F7D7AEEA21AD2 /* GCDWebServerFileRequest.h */, - 125D906DA6D12CC4B558691B8F324B0F /* GCDWebServerFileRequest.m */, - 00208F1C08F49846BFE1A47C2AD5C562 /* GCDWebServerFileResponse.h */, - 4FEDBA21F3681BC1FBEB4E058BDEF1E4 /* GCDWebServerFileResponse.m */, - 1056A640AEFE50B38D2344C0B944DC50 /* GCDWebServerFunctions.h */, - 78BF2C0D1D2976671C6F01E7CF57B7D8 /* GCDWebServerFunctions.m */, - 88223CC64D20FAA41D33B56DA90F1829 /* GCDWebServerHTTPStatusCodes.h */, - 82AB01A10760A9DBC7F68ACDB184CB9F /* GCDWebServerMultiPartFormRequest.h */, - 83A9CCC244BECF2D84BC459532DA1B78 /* GCDWebServerMultiPartFormRequest.m */, - BDAA1AF05A1F0B1B7C16588267607FE1 /* GCDWebServerPrivate.h */, - 4E035F93086E0E9404B6C0C525F9F238 /* GCDWebServerRequest.h */, - 1C6FF8174AF3551817D3375622AD00A6 /* GCDWebServerRequest.m */, - DD640DDC7E829A09ED1072907C443481 /* GCDWebServerResponse.h */, - 02C1C424F1F955C157E2AD0DF9DA85CA /* GCDWebServerResponse.m */, - 5F53F9BE0FC6F1436AD8032E8FF6D80D /* GCDWebServerStreamedResponse.h */, - 987AC2089C4B4C35C212D30E0C0E7B9A /* GCDWebServerStreamedResponse.m */, - 399E2B8BEE8E886EE4016D87C5C85C63 /* GCDWebServerURLEncodedFormRequest.h */, - D27F9B49B02CDF00CFD1E0CF066445B2 /* GCDWebServerURLEncodedFormRequest.m */, - ); - name = Core; - sourceTree = ""; - }; - 57B3F389DDA7629AE17CC01B90DDFFD1 /* Products */ = { - isa = PBXGroup; - children = ( - A6FA4BF27FB90B714947E536885E37C1 /* Alamofire.framework */, - B3193AEA5372872BA57804AA2CAE1875 /* GCDWebServer.framework */, - 63F95A3FB354F1B43BC3C7CCA7C48037 /* libBRLOptionParser.a */, - EFB5583E95D9163093E1C43B391FFCC1 /* libPods-proxy_conf_helper.a */, - 711B62B6A01799BBCBA4F90D70C6AF28 /* MASShortcut.bundle */, - E417BF107A54D2027FCFA21115B0B6BF /* MASShortcut.framework */, - C8FA0250F8F58859A42FACB6244CB83C /* Pods_ShadowsocksX_NG.framework */, - 9D966DC3E49AE0BCCC9A1CA03C275F22 /* Pods_ShadowsocksX_NGTests.framework */, - D18E7218EA86B1A581D12090718F1F3C /* RxCocoa.framework */, - 60D7A87958991203E6AEEF88F8165CB1 /* RxSwift.framework */, - ); - name = Products; - sourceTree = ""; - }; - 5B3B3628BA886BD5CC873215255A3181 /* RxSwift */ = { - isa = PBXGroup; - children = ( - 9589591754500401F219D9EC60BB6AD7 /* AddRef.swift */, - 7FF0F128359723A54E21FEBB2D99C657 /* Amb.swift */, - AB8E26A34CAE0B693F1F2C52465402C3 /* AnonymousDisposable.swift */, - EF773B3F1B1F670D5A56FC9AC6EBE4D2 /* AnonymousObserver.swift */, - 22ECE1CB75987611F39ADE574AA7352C /* AnyObserver.swift */, - 1D0C71FC59A714120E705919A119EB9C /* AsMaybe.swift */, - DF2D048928B85C0B72DFDA760FAC837E /* AsSingle.swift */, - FA0D68D388D0343FA7D9603F2972F301 /* AsyncLock.swift */, - 9B62CFED1E64A9E67642177FF31ADAB0 /* AsyncSubject.swift */, - 9E5ED856E0033C185BB3A1CFF513A42C /* Bag.swift */, - CDECDC826427AB1333B1485F32A721A3 /* Bag+Rx.swift */, - D88C03DD8DB2FDBDB751F6E0573A19DF /* BehaviorSubject.swift */, - C143DF478B2ECD2870DC326426CCA893 /* BinaryDisposable.swift */, - 7849EB1549B76C509FCE0465C3EC6585 /* BooleanDisposable.swift */, - E334CC8401F5E9485DACD3CF7F789B90 /* Buffer.swift */, - D4498044F24BEEA463A62F313DBAF34A /* Cancelable.swift */, - 48FCACAB173ADA2C6A483176B8C97F66 /* Catch.swift */, - 812492787E3005F375F66430EEFEB2D3 /* CombineLatest.swift */, - 53901D4BDA021937287E33B4491AA200 /* CombineLatest+arity.swift */, - B98A2E7455847993E52C3245DF62ACCE /* CombineLatest+Collection.swift */, - 8F5083A9395E7BC273257A316BA5D517 /* Completable.swift */, - B1FE5441218FAE87F6E57A87233B4A0F /* Completable+AndThen.swift */, - 9445256D5E0C36ADD934F62A67B04A09 /* CompositeDisposable.swift */, - F5BEEA74769B7463104E20202E1A465D /* Concat.swift */, - 740D1DD30811098DBF267CA2EBAF0448 /* ConcurrentDispatchQueueScheduler.swift */, - 7BF437276A9A9AD2789D809F09705992 /* ConcurrentMainScheduler.swift */, - 44F80D944345E3B50B5CFF78E7C4E4D9 /* ConnectableObservableType.swift */, - ABE0B812B00B54AA2F6982337A7172A2 /* Create.swift */, - 938FC605EEA4041CA074FE17C4D53535 /* CurrentThreadScheduler.swift */, - 12173B3EF2DB80B33497504CD28D0D25 /* Debounce.swift */, - 33710F9F62AA2B36412EA7B08233352D /* Debug.swift */, - D13F2EDEB0AC07D152FC818243513146 /* DefaultIfEmpty.swift */, - D1EA13DE495837C31F4526D7FA1F7795 /* Deferred.swift */, - 88AACF5B7E188D3448847253899BFC8F /* Delay.swift */, - A0F9D84DF77D8398558F3D4F5FD606DB /* DelaySubscription.swift */, - 87372668A1EA52537C962C8365145B96 /* Dematerialize.swift */, - 8EC9ECCC54FEA683BBDB8B5CD94124B1 /* Deprecated.swift */, - B4D23B3353252A87A2DFCBE6BCAC355C /* DeprecationWarner.swift */, - 8B234AB54ABD1C374D34665C3DCD649E /* DispatchQueue+Extensions.swift */, - 0141E6A6B4EB3619B0171F6D6AF2EE49 /* DispatchQueueConfiguration.swift */, - B96C6614EE1F3536C3C06892684F2657 /* Disposable.swift */, - 218389799BBF34D96B7BDE06ECC09CD9 /* Disposables.swift */, - B1FECC6066F8385524F9B523590A82C8 /* DisposeBag.swift */, - 8B8C0CBA55B2D8C521EC4555A764C4A3 /* DisposeBase.swift */, - 8289A948846D9CADF1D390856F40AF89 /* DistinctUntilChanged.swift */, - 3413B9348C850EE5AE49C8B95B12943D /* Do.swift */, - 5EA75FB12559EF9F38DE81CA6685BE6C /* ElementAt.swift */, - 62C6E1F6DE2D3160BDD5B13FBF1DD877 /* Empty.swift */, - F77DE488C839A9ACAE7A7BF4C24036BC /* Enumerated.swift */, - 68F3C7D40CA579EFBF45E9BDF4844714 /* Error.swift */, - 78755706F21BACDBA952EF615AE4223F /* Errors.swift */, - EAA642364AC03341491D3F3B2B55D566 /* Event.swift */, - 22693A1922310B1DDCE8D9B91AA49677 /* Filter.swift */, - 5D4898D741BB7A3E63AD3625C5913FF4 /* First.swift */, - 920735A244F39A83F52DF97FA4E7427B /* Generate.swift */, - E18663B7E781172BDC6EFC5AC77BA4FF /* GroupBy.swift */, - 28578489FE91CF078CD23E26E04E3BBB /* GroupedObservable.swift */, - 28409654F83C1BED4A04990DF2A46117 /* HistoricalScheduler.swift */, - B61C725932BE55BD3F51C1611F4C00E1 /* HistoricalSchedulerTimeConverter.swift */, - 257A51892B0489327105FAC5C85056BB /* ImmediateSchedulerType.swift */, - 7B940616A1513AFB926A1625599603BF /* InfiniteSequence.swift */, - 1384B3A09ECFD78F3EFC1FE31AF7DE8D /* InvocableScheduledItem.swift */, - 0FF3E0A37CDE9554E186BAE00CD9C197 /* InvocableType.swift */, - F69A770E45055FD854F3FBD6979FC418 /* Just.swift */, - 23A3D60EBC5FA9D3A2E4ACFAD6428316 /* Lock.swift */, - B2F7E00EE5AC554A4695B58D3E0EEC68 /* LockOwnerType.swift */, - 8CF4A5D83CF4FF7422C8E7F007410BA4 /* MainScheduler.swift */, - 1DF905835162609C61FE7431CEAEFE06 /* Map.swift */, - F1791718F5CC919CF52642A71FE4AAAF /* Materialize.swift */, - F735EC7A418D45C70CE0818AC93B4BA3 /* Maybe.swift */, - A0A874527BA87240185BA903D136C3AF /* Merge.swift */, - 1D3126A27429E648B79C41215C88F13B /* Multicast.swift */, - 40EA3D109B9CB1C1BBDC2E9255B38366 /* Never.swift */, - 294B1F176E9A1CBCB03CF68E8A428BFB /* NopDisposable.swift */, - AECFBD9B4972BED36C6D3ACC0177E0E5 /* Observable.swift */, - F9A3C739C0FF5F8BD8B24A9AF4939DC2 /* ObservableConvertibleType.swift */, - CF3BEDFBB2197809F6BDAF649F36F20D /* ObservableType.swift */, - 48320B8075CDD3A66743F2FB1C0AEE97 /* ObservableType+Extensions.swift */, - 51298DE535C414C093FA9AEE5A210C4E /* ObservableType+PrimitiveSequence.swift */, - 4EB0F48DB0F38B80DF2708AB2292F08B /* ObserveOn.swift */, - C15620E5544258EF1AEC163EC547C2E3 /* ObserverBase.swift */, - 3C4B04EEA1AC1BE33D71036DEBEBF937 /* ObserverType.swift */, - C38541370FCAF5848E3402B758806B42 /* OperationQueueScheduler.swift */, - CE8A310F9FBC0D6FDD4C8E3D891605E1 /* Optional.swift */, - 2BF7CE3A988F181B6A3CCFCDAA25B69E /* Platform.Darwin.swift */, - 08CE7BAE0F6A7178D9136F1DBE9CE0D3 /* Platform.Linux.swift */, - D5D00060FD1C8FC81DFDD4EAD1FC02BD /* PrimitiveSequence.swift */, - 24D58CC8AA50BE13352501DE5BA68B94 /* PrimitiveSequence+Zip+arity.swift */, - FE9523A3F66C7512A04D217B9485ED49 /* PriorityQueue.swift */, - F63A805EDA3A375F4453D75E39B46EC1 /* Producer.swift */, - 79369DACA0CF3D56E9D4D213125DD2D2 /* PublishSubject.swift */, - C57692BA24E650520C1D877523C0A5F0 /* Queue.swift */, - 09A7C38F0BA34490FE74D086703D0869 /* Range.swift */, - 04D3D547F7C9D93D846B18B3598139D0 /* Reactive.swift */, - B55BFBC972E986BB01725A95A9860DA2 /* RecursiveLock.swift */, - 52EE2194BA2C33781397BBEB8F4C9276 /* RecursiveScheduler.swift */, - A96B9F66608C047F1379AAE238F18C2A /* Reduce.swift */, - 1F7B1AB25111B41EA516AC2B26F16FB4 /* RefCountDisposable.swift */, - 94342D18D6FF2890EDEEBE3520A6E66E /* Repeat.swift */, - 2FD70811FA75DA891378A68B3B6B4E2E /* ReplaySubject.swift */, - 7566FCCEEDFE8B433D83AD311795E367 /* RetryWhen.swift */, - 37302F3E1098B88606F9963B2BFF7A3F /* Rx.swift */, - D7C21F7B579D31839F9317289084E4FA /* RxMutableBox.swift */, - 82C92E152F7133108027B5F35A4EA2F6 /* Sample.swift */, - EF846AE7A2DE452AE4DCDE6EFBEC8B26 /* Scan.swift */, - 29D5C9E52C36A6630A4B5F4A54F3666E /* ScheduledDisposable.swift */, - 617D6EBFA395952801772F1383AB8AAE /* ScheduledItem.swift */, - 5A1C35E455A2F2765CD140138D5A1EEF /* ScheduledItemType.swift */, - E356F07902E984F6D1B28C8BCA923455 /* SchedulerServices+Emulation.swift */, - 41C0048A00AC76527EB7E552AC524DAC /* SchedulerType.swift */, - 2977417D444B5687C65F2845036F130C /* Sequence.swift */, - 454DCFB400BFCA2DD8E4C2EC61190701 /* SerialDispatchQueueScheduler.swift */, - 5D0E7B6D1939F2FFB2328BAA55AB8D33 /* SerialDisposable.swift */, - 8DDB54ED8FEE2C1E06EFC2F722F8735C /* ShareReplayScope.swift */, - 9308FACB56EF2744A5DF058B75203AE6 /* Single.swift */, - C65BFED56C12E4DDC34449B0F00BC4D8 /* SingleAssignmentDisposable.swift */, - 239930698028F8A7F8F0AF8660885A40 /* SingleAsync.swift */, - 88AC45588E239E491BA98259039A6802 /* Sink.swift */, - 091B320AF46DFF5E52B1CA91938163BC /* Skip.swift */, - C2A1585CB16C85AE91BDB4B9405928A2 /* SkipUntil.swift */, - 0C851BCF7777F05B23845D5F3B42477A /* SkipWhile.swift */, - 1910F3BA8275DA306C03AAF91366CA17 /* StartWith.swift */, - 5B1C0E5A2AF56FCCFCBBA2373F04E7C8 /* String+Rx.swift */, - 3CB0942D626105573A56A84ACEC555FE /* SubjectType.swift */, - D4E00A40F2D4DE3318F31F4BD19FC986 /* SubscribeOn.swift */, - F6958C5792CD090D53D51F45E3FC8391 /* SubscriptionDisposable.swift */, - ABCEC9093299246040636BFC7D014387 /* SwiftSupport.swift */, - 91E0555770D3BEC1183279EBBF63B6EB /* Switch.swift */, - 6CA83DA1CEDBDC939542356592B40AB3 /* SwitchIfEmpty.swift */, - 98923078307F200863DB7C59FCFC7002 /* SynchronizedDisposeType.swift */, - 0716C7A069A21844C312E62BBD3AC258 /* SynchronizedOnType.swift */, - 43D1F9A72CB74DED14E390F65E400A19 /* SynchronizedUnsubscribeType.swift */, - 6C82EAFB5F96FA6732152002CA4666CC /* TailRecursiveSink.swift */, - 121D3DED6F325810B808C962150FDF6B /* Take.swift */, - 9A0D3BBA7497A389734E9EEFBAE2464D /* TakeLast.swift */, - 6756FEC1B269A6CF56EF4D67F08E050B /* TakeUntil.swift */, - D37B5D016E968A982C96D680E27224E7 /* TakeWhile.swift */, - D883EB96731562A3DB6A5D9BB316164D /* Throttle.swift */, - AF97805B59E93B8CDD1F35ADC2C1160C /* Timeout.swift */, - 17B662771CEFD0C752DAF2C38021A7EB /* Timer.swift */, - A604573634B3B440BAC80E6185340643 /* ToArray.swift */, - CA32EF7645C489DC5E33892504DE253D /* Using.swift */, - FA4CD1F6811E9C48888466AB8169A09B /* VirtualTimeConverterType.swift */, - FB5D3778780DA8CAF8A3068FF9DFDC57 /* VirtualTimeScheduler.swift */, - 4591C0BC6376C1566FEA09D9C716AB84 /* Window.swift */, - 9FD412C15BC617CC38E190F17BB06655 /* WithLatestFrom.swift */, - 1B3420B97151695E8A4E232D9A929713 /* Zip.swift */, - 91CE07E2C296F1B3388DC2668BAB1341 /* Zip+arity.swift */, - C558DBA8867D3525206597226AB7FEAC /* Zip+Collection.swift */, - 8A25A387472EAD5BB30DAAB83258C32E /* Support Files */, - ); - path = RxSwift; - sourceTree = ""; - }; - 616C5106F0376E5EC82A41692B9F5189 /* Support Files */ = { - isa = PBXGroup; - children = ( - D44EE75E565309CBCBA8CDC8C1F148EF /* BRLOptionParser.xcconfig */, - B4CB86E9D779A444876EA5C4C68A3FBD /* BRLOptionParser-dummy.m */, - F905EE6F0E88BD8C5751FFC92BFFE94A /* BRLOptionParser-prefix.pch */, - ); - name = "Support Files"; - path = "../Target Support Files/BRLOptionParser"; - sourceTree = ""; - }; - 6E2CCCE58C70E5BD024CF7CB92F938FD /* Resources */ = { - isa = PBXGroup; - children = ( - 5CC3D4BB2BA8F24225B176DDE03F8307 /* cs.lproj */, - 5B35B3E1CD06D484F53A3E476AA3686D /* de.lproj */, - 59F05446C5A1EF95AA5BF54D2E7130C0 /* en.lproj */, - 517A68D17E290C18DFC53F4AECCE8C21 /* es.lproj */, - 68B50473C6A5B2B637DC2178073B139B /* fr.lproj */, - F79B729FCFF408FC35D4D736823C9C54 /* it.lproj */, - BF25BEA59068FC2091F298B09B53F9A0 /* ja.lproj */, - 42C5B04BED868BDFDAD6B1B4CEF885F1 /* ko.lproj */, - B2929F5EBA6B563EE116F09A01CE8D7B /* nl.lproj */, - 01EE31460870DAFD92CCDA3D6C827B67 /* pl.lproj */, - 9C124E5083A1C670ECBA0CC803184E03 /* ru.lproj */, - E66FAB44C7A517141189FD000F9B5DF5 /* zh-Hans.lproj */, - 30E4F3002967D50F222222D209A56B79 /* zh-Hant.lproj */, - ); - name = Resources; - sourceTree = ""; - }; - 716AAE84A71385DD226AF96938438E03 /* RxCocoa */ = { - isa = PBXGroup; - children = ( - 8CE15615F891AE84CC28B31DD1DFED34 /* _RX.h */, - 94BAE73C588EBC604DCE573EBE4A04AB /* _RX.m */, - BD319BD2D6840013A6DB5A5E61C57FD6 /* _RXDelegateProxy.h */, - 95CD99AE9A1C290252A419DD48B2A263 /* _RXDelegateProxy.m */, - A35868FCBD5266D702CEA4A6E65DF160 /* _RXKVOObserver.h */, - 0137F5061A6992367D3A03EF05697F7C /* _RXKVOObserver.m */, - 03F1DFC052C8E6481E56E12D5099A620 /* _RXObjCRuntime.h */, - AE6FE24DA6B6C599439A0CD35E6C0C39 /* _RXObjCRuntime.m */, - 1E8515AADD6430481FAC8F2DD92FE0F8 /* Bag.swift */, - 2845A68913E943BC36DC30691EC2767F /* BehaviorRelay.swift */, - 51EC586F86D6864B74B5211875AF2253 /* BehaviorRelay+Driver.swift */, - 82B40C2141EAEBD3F4738B4EF37F735E /* Binder.swift */, - 3EB40302AC6F385C4C11271681C7BE07 /* ControlEvent.swift */, - B4E3D27538532E6FBE6335CF89442070 /* ControlEvent+Driver.swift */, - 81BA4BA48C5140576A6D93FB9EF7C2C1 /* ControlEvent+Signal.swift */, - 59CB3865143E8097440FEC7F48AF17D7 /* ControlProperty.swift */, - F998ED9B73E72761135D03EABEA4CF52 /* ControlProperty+Driver.swift */, - F8443ACD9BB292ED1C07002A2677C9A6 /* ControlTarget.swift */, - 5CC38924038209EE8DA70D12014386B4 /* DelegateProxy.swift */, - 1F9FFF0AB40ABBC9CD22047B6E5CC748 /* DelegateProxyType.swift */, - 3031DA85910A1DEDA7065204F6B9BBE1 /* Deprecated.swift */, - 7C4E2B96284BE7E91A2FAC7A35722534 /* DeprecationWarner.swift */, - B790A80F95F23886D51E59CA3075E0B7 /* DispatchQueue+Extensions.swift */, - DC9CBF3F42BE77A6A4156483F6E7A677 /* Driver.swift */, - 0F79F86B3A28700C995D5AC30EC550D6 /* Driver+Subscription.swift */, - 0BC3571EE031A7539BB287EFCD666847 /* InfiniteSequence.swift */, - 284942F9AAC3AFDD49598A09EEBAF5FE /* KVORepresentable.swift */, - BA2390463C1EED454182AA10546F90EE /* KVORepresentable+CoreGraphics.swift */, - E40D5C853F53872A9EDD51E2438864BC /* KVORepresentable+Swift.swift */, - 12628820AE714729D03F0AEE969EB3CD /* Logging.swift */, - FCAC7C3176AFDC0CD3DD5D9184E33909 /* NotificationCenter+Rx.swift */, - FB8175F2ECF55A3974C3B9F8F610B7E4 /* NSButton+Rx.swift */, - D20F25597538DF7C1290E5ECF3BA6073 /* NSControl+Rx.swift */, - 4C42E3C6553CD86CA08CB17F055E2FD1 /* NSImageView+Rx.swift */, - B3A10808A0957AA2EC5EB7D1A77E4B27 /* NSLayoutConstraint+Rx.swift */, - 0B43F76AA34F7FD88FC35F826FE0911E /* NSObject+Rx.swift */, - EFF605517B8B672280D85EF59BDBBF89 /* NSObject+Rx+KVORepresentable.swift */, - 0B4668396025D7B53E3928CAD15C1E28 /* NSObject+Rx+RawRepresentable.swift */, - 115DA97253EAAD8E69D0C8D6A825B18D /* NSSlider+Rx.swift */, - 877FB023C6C79A9CB7DD34AAFEEB6434 /* NSTextField+Rx.swift */, - 83268468D9194D59FF72E067422BC173 /* NSView+Rx.swift */, - 2761A1137851210C3B778227D6BA8376 /* Observable+Bind.swift */, - C12D136B18E0E7F8F564601A28FFF96F /* ObservableConvertibleType+Driver.swift */, - E4824FF61369273279E9C73FAE118858 /* ObservableConvertibleType+SharedSequence.swift */, - 53D3CF439796CD1B84572CBCBAAE5BA9 /* ObservableConvertibleType+Signal.swift */, - 5A5F9295B64270BDF4807BAED9FDCCF1 /* Platform.Darwin.swift */, - EC7D06D7C30521ACFE2CB8810BAD6EB4 /* Platform.Linux.swift */, - 466571AD788ED5DE02B15FD2D5AB0E3D /* PriorityQueue.swift */, - 9A04D2678FFF63F78747A96526C32525 /* PublishRelay.swift */, - B5BC8CC3D75BE1CAA9F4B2902AAF6A7F /* PublishRelay+Signal.swift */, - 1221D61D7EDFE6C6834C60D4AFAD701A /* Queue.swift */, - DE7D4EDDDDBC9A8284DF4316C7F919EB /* RecursiveLock.swift */, - 3FB4990CA1A63AF517A7F5A32C6EE3EB /* RxCocoa.h */, - 729746443824EABA89E3E1088EB4F53B /* RxCocoa.swift */, - D17DBC203AF5B8E02A628E6920BEC64B /* RxCocoaObjCRuntimeError+Extensions.swift */, - 6FF66DB8174612DE3868CD61F0C25E75 /* RxCocoaRuntime.h */, - 117E3E5CB18C4C8895AEDCB96CBFF566 /* RxTarget.swift */, - FEC68B3F3AAE886E35269B85EAAAA4A2 /* SchedulerType+SharedSequence.swift */, - A6162331FD69499451313416F088EB1C /* SectionedViewDataSourceType.swift */, - 68A72BF8AF1DC1EC8C18BFA79BE3799F /* SharedSequence.swift */, - 5FF30D62954A12098DAC3C27FB43EC7E /* SharedSequence+Operators.swift */, - C69F2408EF8B0C3BB7419872996ED01C /* SharedSequence+Operators+arity.swift */, - 1E7682153DC4B4654DC8897B52E1C68A /* Signal.swift */, - 9D3C210247CB8CE3DF722B8D487265EB /* Signal+Subscription.swift */, - B140252F1C653182982BDDFA6F4DFFEF /* TextInput.swift */, - AD54960D651138A3CA4F03327ED04C1E /* URLSession+Rx.swift */, - A78A955124EF2B235F55BC4724F30B86 /* Support Files */, - ); - path = RxCocoa; - sourceTree = ""; - }; - 785842678515C4CDC9428DD20DCD752D /* Targets Support Files */ = { - isa = PBXGroup; - children = ( - B5020B0A649E766997C633601AD85F17 /* Pods-proxy_conf_helper */, - 93AB896DD6AD247E69959A4B8C06F5AC /* Pods-ShadowsocksX-NG */, - 07568FCBBF071BD2EE0E5EBA001A4712 /* Pods-ShadowsocksX-NGTests */, - ); - name = "Targets Support Files"; - sourceTree = ""; - }; - 7DB346D0F39D3F0E887471402A8071AB = { - isa = PBXGroup; - children = ( - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, - D9727D7444B8CA54728F850F99A13C9F /* Frameworks */, - A121E30DB2EE8A9F51DB7FF968A46B32 /* Pods */, - 57B3F389DDA7629AE17CC01B90DDFFD1 /* Products */, - 785842678515C4CDC9428DD20DCD752D /* Targets Support Files */, - ); - sourceTree = ""; - }; - 8A25A387472EAD5BB30DAAB83258C32E /* Support Files */ = { - isa = PBXGroup; - children = ( - FC2C8FAFAE7C8BCB3D9CC3ED192B4B94 /* Info.plist */, - 440BA268964308AC9235A827B872F6D4 /* RxSwift.modulemap */, - BDE9D3194329F41EB9A694107DB540EE /* RxSwift.xcconfig */, - 2A10E8E2BEA43547BD31F4D396909B1C /* RxSwift-dummy.m */, - B0472FBF9DAB466EF0A53394A8D2AA12 /* RxSwift-prefix.pch */, - FBC4E57263B9AAECCE6AE5CA60FBB422 /* RxSwift-umbrella.h */, - ); - name = "Support Files"; - path = "../Target Support Files/RxSwift"; - sourceTree = ""; - }; - 8C7551BC8CC9D1DFB5418F4F38063CA9 /* Support Files */ = { - isa = PBXGroup; - children = ( - 30A75BA6552FED28E799BFDD7E6A7139 /* GCDWebServer.modulemap */, - AACEB0B4DCFE72B1C86FBDD44F903602 /* GCDWebServer.xcconfig */, - 549C9311455C020E76C0D8304E77DCBB /* GCDWebServer-dummy.m */, - 7643BF1BAF3D845AF3B73DC3CC809225 /* GCDWebServer-prefix.pch */, - AECA5396C8BF81522F020F67B5051752 /* GCDWebServer-umbrella.h */, - 9C77EDD882C5528391392F6395AEA3CC /* Info.plist */, - ); - name = "Support Files"; - path = "../Target Support Files/GCDWebServer"; - sourceTree = ""; - }; - 929EE5F74988E63CF231F9BC489D2A1A /* MASShortcut */ = { - isa = PBXGroup; - children = ( - E66E142759BB10864774D2C94E961514 /* MASDictionaryTransformer.h */, - 56904622AEC39DA2CC3FFE7AC03DEEA7 /* MASDictionaryTransformer.m */, - 14527C0C3B63CC337E971AE1EE047A07 /* MASHotKey.h */, - 8BE1FB4F6E66271CE86F1B9F3B10C4B2 /* MASHotKey.m */, - 814650269499C22D7A00826E5401B231 /* MASKeyCodes.h */, - 9BA0976D52E0B1BE7C75718D8F34D6D7 /* MASKeyMasks.h */, - 2AB0C03C6DE868D798024FA98E343764 /* MASLocalization.h */, - 6DA5EAC6F4067B7529AE728323D52317 /* MASLocalization.m */, - 1F8A0E045BE3B86CD42FE28A50C51A3F /* MASShortcut.h */, - 94D1A921D2DDCB6ADE167A6D9F9FC69D /* MASShortcut.m */, - 3F5864100C7FDE5370D2A9D47B635CA3 /* MASShortcutBinder.h */, - 4F78B857D0E9107E4AC4BE639CB5FDB5 /* MASShortcutBinder.m */, - 7A842F5AB01E533C407EF9F939D43654 /* MASShortcutMonitor.h */, - 3725898C57B3547AF4E212E583C75CE2 /* MASShortcutMonitor.m */, - 57895F669A6A45DBE1808ECFCA7E6DE8 /* MASShortcutValidator.h */, - B9FD186DCB0C2486656EE428FDF24E95 /* MASShortcutValidator.m */, - A0BF6605792D11FF8BA02337532C154B /* MASShortcutView.h */, - 02C042C63C5C999AF2FB0BFB90543584 /* MASShortcutView.m */, - 173CDFE8FFD9A8EF4825486DCB53A7A4 /* MASShortcutView+Bindings.h */, - 8090A9366A6F313575595425BA5B7C5F /* MASShortcutView+Bindings.m */, - 3F7E8032E1CE431DD241906525558580 /* Shortcut.h */, - 6E2CCCE58C70E5BD024CF7CB92F938FD /* Resources */, - 4B6B0D327DA58988CCE4B33397397D74 /* Support Files */, - ); - path = MASShortcut; - sourceTree = ""; - }; - 93AB896DD6AD247E69959A4B8C06F5AC /* Pods-ShadowsocksX-NG */ = { - isa = PBXGroup; - children = ( - 28D7F65F9E64735E3320A028DCDDDD90 /* Info.plist */, - DC250BF8313F337272DBC9DE1FB6DB6B /* Pods-ShadowsocksX-NG.modulemap */, - 3358F45A5BEC1A7F725167CD1969EDC8 /* Pods-ShadowsocksX-NG-acknowledgements.markdown */, - 52F51F94701ABD692BFFC9F92AE2E115 /* Pods-ShadowsocksX-NG-acknowledgements.plist */, - 24B01D81E3D7058FA14A053EC19874D0 /* Pods-ShadowsocksX-NG-dummy.m */, - 13333F29A08390FCEFECA0FDCDDC919F /* Pods-ShadowsocksX-NG-frameworks.sh */, - EA41BEE3B4D9F1A89F0135CA91A7F472 /* Pods-ShadowsocksX-NG-resources.sh */, - 14A9EC2BB1EC6484018A5EB4B9B2C231 /* Pods-ShadowsocksX-NG-umbrella.h */, - 98522BF2EB25C0255284080F9CA3E195 /* Pods-ShadowsocksX-NG.debug.xcconfig */, - 089EB7E66F64D3A19BB7681AFCE91031 /* Pods-ShadowsocksX-NG.release.xcconfig */, - ); - name = "Pods-ShadowsocksX-NG"; - path = "Target Support Files/Pods-ShadowsocksX-NG"; - sourceTree = ""; - }; - 9A0360C9F0BDB0487A3F29C1C2A8224B /* BRLOptionParser */ = { - isa = PBXGroup; - children = ( - 9D1F46FBDCCCDDD5DD811F74DF066657 /* BRLOptionParser.h */, - 49D4DB0A334289080782A137D04524BE /* BRLOptionParser.m */, - 616C5106F0376E5EC82A41692B9F5189 /* Support Files */, - ); - path = BRLOptionParser; - sourceTree = ""; - }; - 9D2C9C5D9941B5038F214F9E9ADC1E05 /* GCDWebServer */ = { - isa = PBXGroup; - children = ( - 50D8BF310E0933E0B29656BDF88A05CF /* Core */, - 8C7551BC8CC9D1DFB5418F4F38063CA9 /* Support Files */, - ); - path = GCDWebServer; - sourceTree = ""; - }; - A121E30DB2EE8A9F51DB7FF968A46B32 /* Pods */ = { - isa = PBXGroup; - children = ( - E24A269C6A2EF0AC968CBCCD75BB7C0A /* Alamofire */, - 9A0360C9F0BDB0487A3F29C1C2A8224B /* BRLOptionParser */, - 9D2C9C5D9941B5038F214F9E9ADC1E05 /* GCDWebServer */, - 929EE5F74988E63CF231F9BC489D2A1A /* MASShortcut */, - 716AAE84A71385DD226AF96938438E03 /* RxCocoa */, - 5B3B3628BA886BD5CC873215255A3181 /* RxSwift */, - ); - name = Pods; - sourceTree = ""; - }; - A78A955124EF2B235F55BC4724F30B86 /* Support Files */ = { - isa = PBXGroup; - children = ( - ADBBB7FC840E52C76645ADFD06C6F489 /* Info.plist */, - 3285ED8593B0D936F2A37C7D2E0BDB0D /* RxCocoa.modulemap */, - 2DD2740F8043D2CE9EA5BB7A7DBFC49D /* RxCocoa.xcconfig */, - DD070E26B8B863382F7AA226CF6D5794 /* RxCocoa-dummy.m */, - F12CA3526AFD49BC5CD55B6B6ED743C4 /* RxCocoa-prefix.pch */, - B8FB3328120B8DA4A4A0E2CA1B29F188 /* RxCocoa-umbrella.h */, + 4558876E460725F68F69FA071C6B4538 /* RxCocoa.modulemap */, + 342B4165E24ECEBD7C608D11E8E002B9 /* RxCocoa.xcconfig */, + E3E1FDE57B6AAF7C58D0C1396F58882A /* RxCocoa-dummy.m */, + D3E104A91FD5736A5B464EB50E7550F3 /* RxCocoa-Info.plist */, + 2DCBBA51B2CAFED940209847149DF1CF /* RxCocoa-prefix.pch */, + 09F3A4339E26D0176EBB9256C46EF563 /* RxCocoa-umbrella.h */, ); name = "Support Files"; path = "../Target Support Files/RxCocoa"; sourceTree = ""; }; - B5020B0A649E766997C633601AD85F17 /* Pods-proxy_conf_helper */ = { + 14CC2D5B08B273BFEAF2BE172A20C2A3 /* MASShortcut */ = { isa = PBXGroup; children = ( - 1A8CE48109F7ED7873F4FF9D2D3603AD /* Pods-proxy_conf_helper-acknowledgements.markdown */, - AE6E689502E4366B125481CD898B947E /* Pods-proxy_conf_helper-acknowledgements.plist */, - CE50445A73ECB9A2ED31A6FF93D45808 /* Pods-proxy_conf_helper-dummy.m */, - 5D84D92D27CE8A6F5C45E8A03155C1CF /* Pods-proxy_conf_helper-frameworks.sh */, - 8CDD45C6D7A038F415A78787317E931A /* Pods-proxy_conf_helper-resources.sh */, - 054C3E84057CD06DB85D99E7AD207F48 /* Pods-proxy_conf_helper.debug.xcconfig */, - A5055B8EFFFBEDE50909E935D4BCA446 /* Pods-proxy_conf_helper.release.xcconfig */, + 04DF2DB4FF92576D769744A650441E74 /* MASDictionaryTransformer.h */, + F4A7A90485C50CEAEBCB40B7A7AC37AE /* MASDictionaryTransformer.m */, + EA3B7BA760EF5910B7586199E3CAF429 /* MASHotKey.h */, + A225E632BA30EEAA6D5E842E4A2C9FB0 /* MASHotKey.m */, + 2A2A4891A6E6DAC4415135BB74993A81 /* MASKeyCodes.h */, + DE24812E221CDFFB5205BF6E892D589F /* MASKeyMasks.h */, + 3534159C69DA4B880233991C4B8E51F2 /* MASLocalization.h */, + 56EC5971E224F6AB7A2166FBA93FAA91 /* MASLocalization.m */, + B609F310C49D10770B5FB391CDAA5098 /* MASShortcut.h */, + B83DF7D23A6D5A6102B1F11A9CF28992 /* MASShortcut.m */, + 50E4F8C1AD8BDBB264641AE0A61F660A /* MASShortcutBinder.h */, + 5329DC6003732A15AF3A39647D60E307 /* MASShortcutBinder.m */, + E21424A29849A7F0EA632156107DA963 /* MASShortcutMonitor.h */, + E6B48AD4A8557828C3A241C1E1E32541 /* MASShortcutMonitor.m */, + 166824C56133ED7184FCABD50BF047FE /* MASShortcutValidator.h */, + 5E0151F462BF0AF0A35E6786D6C1F577 /* MASShortcutValidator.m */, + 17CBF34AD83F7260974C867724C5600A /* MASShortcutView.h */, + F7E7E3B6C10726C992A09070284DB7B6 /* MASShortcutView.m */, + FEB7109F32A44D56AA05F3FB731D764A /* MASShortcutView+Bindings.h */, + 79E1CB7F314AB4C9902E146240A90952 /* MASShortcutView+Bindings.m */, + 7F9D8D38BB84EDC1147440FA65F75CC1 /* Shortcut.h */, + 453F1B497243A02480F1498528732A63 /* Resources */, + 94CF34F718C008A95B4CC95556079C15 /* Support Files */, + ); + name = MASShortcut; + path = MASShortcut; + sourceTree = ""; + }; + 242ADB8D7226D536F547861AB8E34C4E /* Support Files */ = { + isa = PBXGroup; + children = ( + 894A940ECC9153003C9D4BD6A1C34075 /* BRLOptionParser.xcconfig */, + 9676CD91CE4566CA748833BF45C9E47A /* BRLOptionParser-dummy.m */, + B6F1D8358CA9E96DAEF792E0AE01A44A /* BRLOptionParser-prefix.pch */, + ); + name = "Support Files"; + path = "../Target Support Files/BRLOptionParser"; + sourceTree = ""; + }; + 453F1B497243A02480F1498528732A63 /* Resources */ = { + isa = PBXGroup; + children = ( + BB464592E309DBC6B1C32142F27DC205 /* cs.lproj */, + C473238BBA46728E853ECA6DC657B55B /* de.lproj */, + 9305CF18E7BFA5FCDDF474A3A620ADEB /* en.lproj */, + AF31FACAAF599D90A1D29D4D7516690C /* es.lproj */, + 4FA8313797668EC93B0C98D9A8F32A93 /* fr.lproj */, + 0079F2FDF314ED419382C2C30DE4939A /* it.lproj */, + 5FE698B84CF36F03C591400708F81380 /* ja.lproj */, + C0C4736BB8B495059B442618BA5752DB /* ko.lproj */, + 7362E3F349600D8BAEF12104995259FF /* nl.lproj */, + 17765F70794E8148073628BF1A46C5E9 /* pl.lproj */, + 5ADB1C3BE4EFC0F467DCA4A6810149DA /* pt.lproj */, + 9794100E1126279BFD7E0C9A3B6EA12D /* ru.lproj */, + 7F0C1BBE64769E8DB40F570A0BFF582F /* sv.lproj */, + FDE37E713660DC3D2F7ED930D7A70DE2 /* zh-Hans.lproj */, + 14A4B4A0C592EB08A8DE41B67BBB1889 /* zh-Hant.lproj */, + ); + name = Resources; + sourceTree = ""; + }; + 493933EC245DE8B9BF6A90C4A901306A /* Targets Support Files */ = { + isa = PBXGroup; + children = ( + A1DDAA49ED6DA408AC4F6220754154E6 /* Pods-proxy_conf_helper */, + B364CCC64531E6C6BC03A50131504939 /* Pods-ShadowsocksX-NG */, + 016ECA8DBDA1E03C02AE6CE07B9C7B28 /* Pods-ShadowsocksX-NGTests */, + ); + name = "Targets Support Files"; + sourceTree = ""; + }; + 6A22003E3ABE61E9089B601AA62974D4 /* Pods */ = { + isa = PBXGroup; + children = ( + ABA9D8337E8298C8FA1E75B68A30780B /* Alamofire */, + 89459EC9AE1307E2F09C4842A72B67AA /* BRLOptionParser */, + D074308686340938E18E740ADAB1804E /* GCDWebServer */, + 14CC2D5B08B273BFEAF2BE172A20C2A3 /* MASShortcut */, + EFCCCEA8E0034613C25D03F6BE1EF447 /* RxCocoa */, + 9100037345AA7DA63E61EB3B5ABD0829 /* RxSwift */, + ); + name = Pods; + sourceTree = ""; + }; + 6B317388FFEF0D533427D38EAABDDDF3 /* OS X */ = { + isa = PBXGroup; + children = ( + 2F8BAAE4D41F40C0FB9261765471538F /* AppKit.framework */, + 328B2C0D0C2801DEB8E1B0CB8BC2AB26 /* Carbon.framework */, + 82EBF3FEF6DB5B33828B9043A01A98F3 /* Cocoa.framework */, + B96E67605923D3489CF58CC32695AA2D /* SystemConfiguration.framework */, + ); + name = "OS X"; + sourceTree = ""; + }; + 7EF9E7DBDBFA523CABCA1848B3BDC6A7 /* Core */ = { + isa = PBXGroup; + children = ( + 301E6AA863985EFE6C1BBAC153C3556B /* GCDWebServer.h */, + 0A9BB2A7697A1E5DC5621D702772A4B0 /* GCDWebServer.m */, + 1B69746C147C712C959C2E7AE6C7F5C9 /* GCDWebServerConnection.h */, + F6B2FF71E3394A2277F5630ADE77EBEC /* GCDWebServerConnection.m */, + F955A1C05E2E4CD1A90F9C0D51BAE4F7 /* GCDWebServerDataRequest.h */, + 9F749FF2003212B6BB1F099230930339 /* GCDWebServerDataRequest.m */, + 77A567DE40FA2D3181D483C2E5929F11 /* GCDWebServerDataResponse.h */, + 3174248008864D7991FDA942A339917E /* GCDWebServerDataResponse.m */, + CF0B73A5BA95D377B76E97C3A4528FFE /* GCDWebServerErrorResponse.h */, + 6A6DA5E6367C8816E8C176BA368F2A94 /* GCDWebServerErrorResponse.m */, + 22ACD934B2217D0B238C7FC56C3BC0A3 /* GCDWebServerFileRequest.h */, + 63D72C07A6FFB7640878581F89B95DD0 /* GCDWebServerFileRequest.m */, + DABD5E02E0387FDA13E08502747E4F78 /* GCDWebServerFileResponse.h */, + A85201A2C8FCE9F2930DF6713A811387 /* GCDWebServerFileResponse.m */, + E87B13FF718D313573F766B7CC408ED7 /* GCDWebServerFunctions.h */, + A41B07B49552AF24E5D407B482F05423 /* GCDWebServerFunctions.m */, + 675FAF9C0AC63D45D5750450AB7DE4DA /* GCDWebServerHTTPStatusCodes.h */, + 160937B1E4D91695712F279A8D972FAA /* GCDWebServerMultiPartFormRequest.h */, + E0796DA988C10ACA64CF57C0C03993D2 /* GCDWebServerMultiPartFormRequest.m */, + 2CB175FCBAA441BA2B3E869220FAEEE0 /* GCDWebServerPrivate.h */, + FD70E833144479E2A5AA429BA6BA9C5B /* GCDWebServerRequest.h */, + 1D88DF93526FCDD4D54CEDF7DB4F0C74 /* GCDWebServerRequest.m */, + E52D6747AFDC0620384A0FCEEAD0E0C5 /* GCDWebServerResponse.h */, + D321BE2B3A6979DBD70099045ADF171D /* GCDWebServerResponse.m */, + 4069F93F454E2A1E193E29683F09840A /* GCDWebServerStreamedResponse.h */, + 238D6D2076CE4BFFFC735BFD7C475AA0 /* GCDWebServerStreamedResponse.m */, + FA6E0B479C3A2FACD878521E9CBCC11D /* GCDWebServerURLEncodedFormRequest.h */, + 3EFEAEC4BB3538D1D22890B92BB6F890 /* GCDWebServerURLEncodedFormRequest.m */, + ); + name = Core; + sourceTree = ""; + }; + 89459EC9AE1307E2F09C4842A72B67AA /* BRLOptionParser */ = { + isa = PBXGroup; + children = ( + A4BA06D76B9EA13CE2C114A88A8FB364 /* BRLOptionParser.h */, + 54ABF2FD9451CF3C229952E10B340D07 /* BRLOptionParser.m */, + 242ADB8D7226D536F547861AB8E34C4E /* Support Files */, + ); + name = BRLOptionParser; + path = BRLOptionParser; + sourceTree = ""; + }; + 9100037345AA7DA63E61EB3B5ABD0829 /* RxSwift */ = { + isa = PBXGroup; + children = ( + BF2326C544C1AA0946EA133E59536085 /* AddRef.swift */, + 06D4E80CBDA05F1578080C8034637C9B /* Amb.swift */, + FC5ED92592EEA919122E2FBD46851375 /* AnonymousDisposable.swift */, + 89228EE0C2EA97AD1FF75E74968DC294 /* AnonymousObserver.swift */, + 7EB722E3B048C0455FFA251225B24F9D /* AnyObserver.swift */, + 6629956253480EA477A1525E57799282 /* AsMaybe.swift */, + 7FF3A5DDF77CE0C90C1673EC3ED4C393 /* AsSingle.swift */, + 78D8483AFBC158FA298C6800DEDE4D74 /* AsyncLock.swift */, + A839CE99A0200CB2995E3549F9C5FBE0 /* AsyncSubject.swift */, + B0F3EB47555FFAA0DA0C139814141047 /* Bag.swift */, + B43A9BF4D6C1E31117E289729BCD09A0 /* Bag+Rx.swift */, + B157A63D0DE60AA5D33DF7A0D62C53D6 /* BehaviorSubject.swift */, + 6B6DD0B1129B9AB5BDBB166F65018490 /* BinaryDisposable.swift */, + 3CED975AC8E9111F2EC08AADBE7354E6 /* BooleanDisposable.swift */, + 76BD4617B51D3A46746C741CC790E51F /* Buffer.swift */, + 3EC92D258020E5DFC351490B403DE7A0 /* Cancelable.swift */, + 745A70C304EC58D52DC715DB747D499B /* Catch.swift */, + 0479B8153C331BBDA5162E84458371D1 /* CombineLatest.swift */, + 46D60A19372FA9D2D46D0B7614E0C8B7 /* CombineLatest+arity.swift */, + BA6BC6261543AFA8730439C5E3D6FA14 /* CombineLatest+Collection.swift */, + 9A3DC903F9DCC3992EF284E7BAF21F9A /* Completable.swift */, + AFC6CB4A62F10360B227B484260F3848 /* Completable+AndThen.swift */, + A5A188D8015FF2598B5B115664C8F68A /* CompositeDisposable.swift */, + 229E93EB9F92094DB696CEE91F99C456 /* Concat.swift */, + 5EDA6C2661B5E0A2052233A8317B2FCD /* ConcurrentDispatchQueueScheduler.swift */, + 1FC8A367D4E53A297FB864F34644E49B /* ConcurrentMainScheduler.swift */, + 85B75D69B674DE36FF51A28EF7816348 /* ConnectableObservableType.swift */, + 0BAB8B3384C32C2632F1C3DFA4B118F6 /* Create.swift */, + 111C7DF776927720315882DB26FC5BBB /* CurrentThreadScheduler.swift */, + A629CDD24AF9307B7373201BB35B6ECF /* Debounce.swift */, + AB93579EEF7A09B9E38054B8578C9D11 /* Debug.swift */, + F81B4DA916899DDFA2772E61674477E8 /* DefaultIfEmpty.swift */, + 0F5B28B1FA9A7943CC0DC304BDCD0E2C /* Deferred.swift */, + D823BB329E438EC7DCD97E71B9FE40E8 /* Delay.swift */, + 12E284916B03F86C68BE4E785FF39BB1 /* DelaySubscription.swift */, + 1195F6F6558CF153AF4F8F924191B893 /* Dematerialize.swift */, + DAC4BCC1EFD1317EBF4B9BA36E1134C5 /* Deprecated.swift */, + 72E9E70F6D9D7FB922AB7988077A8184 /* DeprecationWarner.swift */, + 538988DBA7181A56C802219FDCA9FA53 /* DispatchQueue+Extensions.swift */, + D83F47E54C3DC54EF24BA24B2D70BA3C /* DispatchQueueConfiguration.swift */, + C4692556AA35C141B365E9DA059108AE /* Disposable.swift */, + B422395440185D1EF83278571E9A224F /* Disposables.swift */, + 9EE18AC0191E46D8EC72777A7E7FB2E9 /* DisposeBag.swift */, + C4E18A4DDBFBD0CA9BD0329386CDB718 /* DisposeBase.swift */, + 52BF43E2486A183668EA2F7D38FE98F4 /* DistinctUntilChanged.swift */, + B3D3469A3044026BD104951B1BEB597D /* Do.swift */, + D3BC812E63EBB9A1BE8F189026115879 /* ElementAt.swift */, + F302AAABBBBE3D6EC60D1DD8CC05C6D5 /* Empty.swift */, + B7BA1D11655FE4B30506171E2CE70246 /* Enumerated.swift */, + 85CEDFA6110ECCC4627F7114DC0008CE /* Error.swift */, + 96B29CD14467A7E410286D296BBBAA8B /* Errors.swift */, + 1C1C1DD9817840AB191BD19AC537A360 /* Event.swift */, + D0757DAE9E8CB0717073540EE8D9C4C9 /* Filter.swift */, + 5F7B3BA16C26E03976A9E118CAB3FA56 /* First.swift */, + 7289A74DD8475BF9F706057FE4C2390D /* Generate.swift */, + 857CE58AB90955A76A17A547DE620E7F /* GroupBy.swift */, + 26FDFC56191C8EAB43CE82F44287DE64 /* GroupedObservable.swift */, + 361C23F647086DDACC833FCC3EB1C884 /* HistoricalScheduler.swift */, + 22AFF11BC84D7CDAE19F952ADC92C4ED /* HistoricalSchedulerTimeConverter.swift */, + 7A9FEE92CEA7F2A79EE5BE3CA2999508 /* ImmediateSchedulerType.swift */, + 490109B32A0DDE20F5EB889696DFE805 /* InfiniteSequence.swift */, + 3594AF696DCAF73A6B34289B67606200 /* InvocableScheduledItem.swift */, + A482C79B8AF4BC4DCC6F41EC168ECFD6 /* InvocableType.swift */, + 0998A461F66A98711145FD0EC7362C3E /* Just.swift */, + A3E163070E4653A0771719664D8AA4B9 /* Lock.swift */, + 5FAADE650ACDFC94B5D96E0D54E74087 /* LockOwnerType.swift */, + 972F864D3684F69871952707323389FC /* MainScheduler.swift */, + 33D696D0068DA801EB71A910D621AAF7 /* Map.swift */, + 0503AC0FF6C8E1EE6A1F2D01EDB16F6F /* Materialize.swift */, + 49FD9E180D0E148BE0BB19F763834874 /* Maybe.swift */, + 75EE51BF0C4BD5FAF40ECA0E6C5217A4 /* Merge.swift */, + B463BCB90F2FAE45265C8DCD6BDFAF60 /* Multicast.swift */, + 06B276FC635F3EE1CCF88162D0528484 /* Never.swift */, + 5DEE7953759AA3173B942483CF49AC76 /* NopDisposable.swift */, + EFAB70ED5E1150ADF0281CD817202D88 /* Observable.swift */, + 65FFAB74D3108D76318EA4F4A9992EDB /* ObservableConvertibleType.swift */, + 3184A63618E8158F780B9479D58AF99E /* ObservableType.swift */, + 432661022A89EF8459BE8FB7D35501B4 /* ObservableType+Extensions.swift */, + ED5FE7C7406ACE4E1C2E490862FC27F1 /* ObservableType+PrimitiveSequence.swift */, + 1CBCD2E003BDE2BAA09350A80E738BA8 /* ObserveOn.swift */, + 88EB0B10C976B5429E155B7966D4224B /* ObserverBase.swift */, + 659B63B81B45C439C5E4C86BB10375C6 /* ObserverType.swift */, + BBB4AB7E7AF099E47EDB81ED5664A10E /* OperationQueueScheduler.swift */, + 9DD7F564E610842CC3A8742AEDB98AC2 /* Optional.swift */, + 673490A3FF56A2DE4C2610609D218166 /* Platform.Darwin.swift */, + 39BF39E019699D7BF4AF2283A9934E68 /* Platform.Linux.swift */, + 97EA47DDA4738601487373C3D63E8892 /* PrimitiveSequence.swift */, + 66B7C342C89B9B142E281D1DD6AD78A1 /* PrimitiveSequence+Zip+arity.swift */, + 59E35493E3A483184D5FFB2036E99FA3 /* PriorityQueue.swift */, + CD428F0756402A68D38A9EED8F928150 /* Producer.swift */, + 1E2E71AC93716DC363E6240A532A02CB /* PublishSubject.swift */, + FDC4030A41798B054370BEA4580333DD /* Queue.swift */, + DB6AA6287CFABD7B8375E6C2E184B08C /* Range.swift */, + 40400BB78B4C5E89A007F5A074AD17DE /* Reactive.swift */, + E71C2EEFAC75B0322274FAD501E14B5B /* RecursiveLock.swift */, + F8DBA570AB4D7104DF77039D23C512C1 /* RecursiveScheduler.swift */, + D86D1CC951C7C383E8872CF5549F6C8E /* Reduce.swift */, + 23CBBCCBDEE2DD59A590CDFEFA4CA98E /* RefCountDisposable.swift */, + 8E290A37E260985BBAA653427D24EBC6 /* Repeat.swift */, + 854CFC71E31796D7E49B85709FBCEED4 /* ReplaySubject.swift */, + 1612CFDD002F4B0AC395F0217039503E /* RetryWhen.swift */, + D8F30E0F75BF71A5CA6D25F4C2110750 /* Rx.swift */, + 933CEADFC29A6EE4EBA98FC012098C32 /* RxMutableBox.swift */, + E65D8EE7AF8AF72DD4DF0CCEE4C77A37 /* Sample.swift */, + 1D7F6E51459AAD2E5A367271F6B601A1 /* Scan.swift */, + 9713B9CAC03327DA33693BA26A0F4E62 /* ScheduledDisposable.swift */, + A8B59616294393CA99FAFFB5B1270A6E /* ScheduledItem.swift */, + 4659C0DFC3E93DC4C4AEECB67FA53504 /* ScheduledItemType.swift */, + DBDED7E5A4595D7859247206C13E23D1 /* SchedulerServices+Emulation.swift */, + 471603BE2A1B99AAA1F605AD468A72F9 /* SchedulerType.swift */, + 22588616BAABD051D4BB21DC9F63F0A8 /* Sequence.swift */, + 9C7C1392947617BEB20243D3A8B5C4B4 /* SerialDispatchQueueScheduler.swift */, + FC7B232F24E185E666E15604B9FEC8D3 /* SerialDisposable.swift */, + F7A0359E44CDC57164E50B9D2B31CBFC /* ShareReplayScope.swift */, + C4D9C1DD466917BEDA486C5EB25C224B /* Single.swift */, + 115ECB3550DF888C7550F302E2254242 /* SingleAssignmentDisposable.swift */, + CB783DCBD874ACDBC21A714E04D8F52E /* SingleAsync.swift */, + 9C23644E46BE19ECA6B060B686EBF945 /* Sink.swift */, + EA60B521316EFC34215D83BE18704A96 /* Skip.swift */, + 1406AADF7C3A924EB060C46D86FC8227 /* SkipUntil.swift */, + 63526E356C51A8BE1118D01C6DEA5DBA /* SkipWhile.swift */, + BF2C8DD9A124D9A6E183D428FADF2C56 /* StartWith.swift */, + B022E3F37B012E58AB109F19D9909CF0 /* String+Rx.swift */, + 35B7A19EB6F7D1969EA6A91E8AE6874D /* SubjectType.swift */, + D06011ADC7F3A1790E57DD5652824B0A /* SubscribeOn.swift */, + B8F1ABD0F2D464C40146ACF227569C46 /* SubscriptionDisposable.swift */, + 4A444399B751E3F7B0426D48C6C2704A /* SwiftSupport.swift */, + 1C96563EB6945D0D606E685F804386C4 /* Switch.swift */, + 2898467C057BF01170A471C2FC97CEE2 /* SwitchIfEmpty.swift */, + C2CBB975A64A93ADDB9C98CE015D6EC9 /* SynchronizedDisposeType.swift */, + 9494175D49ECE1E60A7DA761334D4D16 /* SynchronizedOnType.swift */, + 4B60D1CBFBDA744C033F0B2A0C00159E /* SynchronizedUnsubscribeType.swift */, + AD0F61B9114CEA17068358E3D198DAD8 /* TailRecursiveSink.swift */, + 2898AB0C6A007CCDE297E41DBBE4F167 /* Take.swift */, + 1EEF6B3F62DF72399DE21845AAB1C070 /* TakeLast.swift */, + 14D534F0295128746E29091E5BFC9135 /* TakeUntil.swift */, + 4F130BAD4D802F4A724FD0C28BD40B03 /* TakeWhile.swift */, + A711F6A9FC3D9105FB4752EB5E8E58B0 /* Throttle.swift */, + 05CB1F73D351169ADFE842F858B733C7 /* Timeout.swift */, + 3B2576F870C297CD693237AD0C3BE041 /* Timer.swift */, + FBE439EFC638971FD247FBB52CA99A9F /* ToArray.swift */, + 44EF13F321A3D94E22A90C3C1F10A3D0 /* Using.swift */, + 154AEE55DA94FFC8A8F5C888FC2BCBDC /* VirtualTimeConverterType.swift */, + 2A766ADC1A062AA51AAC444D9A853509 /* VirtualTimeScheduler.swift */, + 75C074E6CE82F80BD31F5EF77C296905 /* Window.swift */, + D2E9FD0CB124731BFBD756093E872FD1 /* WithLatestFrom.swift */, + 732C8EA5B86127EF4191BE104639AD67 /* Zip.swift */, + A2903E99F494AA6ED5682829A7DD6746 /* Zip+arity.swift */, + 44B1F3C611C57DE6A4D945624BD46CDA /* Zip+Collection.swift */, + B836E84BF01E81C5997F30D1072E6CD5 /* Support Files */, + ); + name = RxSwift; + path = RxSwift; + sourceTree = ""; + }; + 92844F560400DDCFD6CD292F322191F2 /* Products */ = { + isa = PBXGroup; + children = ( + 5D797E9A5C5782CE845840781FA1CC81 /* Alamofire.framework */, + B68C1052A3B51DBCF7D960F898AAFA95 /* GCDWebServer.framework */, + 866C21955F27EBD7A49148F5E63A6E7E /* libBRLOptionParser.a */, + 61C23DB60A84900CD4BDA2F5EE2A0865 /* libPods-proxy_conf_helper.a */, + 230F8208BE63C052A548A7D41A1158B2 /* MASShortcut.bundle */, + 26A8810424438A12E7ADBFB3E068C658 /* MASShortcut.framework */, + D896F6A68919914B3302027C15449A1D /* Pods_ShadowsocksX_NG.framework */, + D48183AD5F98D081078429EF56451DFF /* Pods_ShadowsocksX_NGTests.framework */, + BC432FD48A5932251F1CAFBC4BF74894 /* RxCocoa.framework */, + 809C5FAB588354C9BA37DC3EAB8CB45C /* RxSwift.framework */, + ); + name = Products; + sourceTree = ""; + }; + 94CF34F718C008A95B4CC95556079C15 /* Support Files */ = { + isa = PBXGroup; + children = ( + 89943E24574E22E8826F5E16B9E34E3B /* MASShortcut.modulemap */, + 7B721804AADD486C1E3669E634568426 /* MASShortcut.xcconfig */, + 21B9CC8D2D4351D1C736B96CF7352118 /* MASShortcut-dummy.m */, + 665876ABA8BB56C49F9A0D280E812D28 /* MASShortcut-Info.plist */, + 0E0AB87B8D9EECE893AE04BA3EDEA25B /* MASShortcut-prefix.pch */, + 7C706D1A2AFEEDD4BA8727BF70C3CE95 /* MASShortcut-umbrella.h */, + A0149BCB55A4206031C9E2E594FE7715 /* ResourceBundle-MASShortcut-MASShortcut-Info.plist */, + ); + name = "Support Files"; + path = "../Target Support Files/MASShortcut"; + sourceTree = ""; + }; + 9DA8083E0201AADC23556BEF7A5D5DBA /* Support Files */ = { + isa = PBXGroup; + children = ( + 868590BF301A4775E02F84F7B16E329B /* Alamofire.modulemap */, + D48A4078A033D9B948716B99626C26ED /* Alamofire.xcconfig */, + 486BEA30038CDF0DEBAD9828A2E17A9A /* Alamofire-dummy.m */, + 189E6C1A4BD7664104577BB5F2AF04EE /* Alamofire-Info.plist */, + DA4858DED0202159CC1BF14B653B7212 /* Alamofire-prefix.pch */, + 4B36FFE0DCF03216A753C52928989B26 /* Alamofire-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/Alamofire"; + sourceTree = ""; + }; + A00D572F62872CE6C8D401EFA214A674 /* Support Files */ = { + isa = PBXGroup; + children = ( + 7D8A7098C7C1DDA259811EBC985DDD4B /* GCDWebServer.modulemap */, + E4BB4DCF53E4F360602A5F6294A69B67 /* GCDWebServer.xcconfig */, + 0BA23B93F7078237272FE6927584FDE4 /* GCDWebServer-dummy.m */, + E98113C743286FF04B190D6C649B6939 /* GCDWebServer-Info.plist */, + D225E5C03674DD9F3CE6A8DE1CC909DD /* GCDWebServer-prefix.pch */, + E6C3D177B65F84B696697C60F97A8DD8 /* GCDWebServer-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/GCDWebServer"; + sourceTree = ""; + }; + A1DDAA49ED6DA408AC4F6220754154E6 /* Pods-proxy_conf_helper */ = { + isa = PBXGroup; + children = ( + 74656C1BF53AED56A45CDA8600A787D1 /* Pods-proxy_conf_helper-acknowledgements.markdown */, + 11F97CBA2FD3653262BC227DD1340D90 /* Pods-proxy_conf_helper-acknowledgements.plist */, + 8752D17209EE8AAD7681107D6444113F /* Pods-proxy_conf_helper-dummy.m */, + D8C88B0B7BFE785BC9B00D1C53FDC003 /* Pods-proxy_conf_helper.debug.xcconfig */, + 4A70BE8C07BCE9C6D6F47AC73225C959 /* Pods-proxy_conf_helper.release.xcconfig */, ); name = "Pods-proxy_conf_helper"; path = "Target Support Files/Pods-proxy_conf_helper"; sourceTree = ""; }; - D9727D7444B8CA54728F850F99A13C9F /* Frameworks */ = { + ABA9D8337E8298C8FA1E75B68A30780B /* Alamofire */ = { isa = PBXGroup; children = ( - B792280B7BC7CA44B5D7090C8F732A0D /* RxSwift.framework */, - E2E3EA611324A191E7D403B061C56915 /* OS X */, + 1D64077070F9B8085996B83FF7C2D5CD /* AFError.swift */, + EE1CB6F534B91BE694EFB4B9215B6209 /* Alamofire.swift */, + 6FA608A971EF8C9973AB0C7F7EE2126F /* DispatchQueue+Alamofire.swift */, + 0381AFE52669B9575C47B566ACDDEDC7 /* MultipartFormData.swift */, + BA24D82F4D58FD5CB27352BDF333E409 /* NetworkReachabilityManager.swift */, + EC35ACB06F35C9F9137AC022D163405C /* Notifications.swift */, + 118D091E5C6B9D52CB5543E9F5EC00E1 /* ParameterEncoding.swift */, + 19E4CA80D5785F989D1F5D4C42C3FE6E /* Request.swift */, + 57AB489E11676A4AE9EA56EADF0E63F2 /* Response.swift */, + 34E4A22716CB388EB870522B28DD7CF7 /* ResponseSerialization.swift */, + EECED9A0B941992178458CFD2789E1C3 /* Result.swift */, + 23D29C20A0BE889312381C6336E4A2D9 /* ServerTrustPolicy.swift */, + 2D4B5E26C476B344C6D8CFF6FC4A5EF7 /* SessionDelegate.swift */, + 5931EBFD159B49E78EE1BB093CFE15B5 /* SessionManager.swift */, + F6D644AA126B3EFD20AC7A640C25A460 /* TaskDelegate.swift */, + 8155B6EF42E8149F4CD7F0BC05D1950F /* Timeline.swift */, + 336C288E815BB0146FB5044555064273 /* Validation.swift */, + 9DA8083E0201AADC23556BEF7A5D5DBA /* Support Files */, + ); + name = Alamofire; + path = Alamofire; + sourceTree = ""; + }; + B364CCC64531E6C6BC03A50131504939 /* Pods-ShadowsocksX-NG */ = { + isa = PBXGroup; + children = ( + 1EA29F7E0E65B6A9619DB77448844EC1 /* Pods-ShadowsocksX-NG.modulemap */, + A907FA326D15CD08847B63032F80EB64 /* Pods-ShadowsocksX-NG-acknowledgements.markdown */, + FB50A95F3BC6DC12244F2B76ABEBB9BD /* Pods-ShadowsocksX-NG-acknowledgements.plist */, + D60357581333E7EC56952E31B2991366 /* Pods-ShadowsocksX-NG-dummy.m */, + 2A11F032AFA3310A3EEE63E67481B01E /* Pods-ShadowsocksX-NG-frameworks.sh */, + 96C80DBAD0A8D59912E005E60636A935 /* Pods-ShadowsocksX-NG-Info.plist */, + CD95085BFAA31431686824B236DB9319 /* Pods-ShadowsocksX-NG-umbrella.h */, + 9A71B9958F30759ED2645E0DF9ADF314 /* Pods-ShadowsocksX-NG.debug.xcconfig */, + 92B4BB091693150E5B1FCC6987683C6F /* Pods-ShadowsocksX-NG.release.xcconfig */, + ); + name = "Pods-ShadowsocksX-NG"; + path = "Target Support Files/Pods-ShadowsocksX-NG"; + sourceTree = ""; + }; + B633DF5B92729A2C1D0550F244AD04C5 /* Frameworks */ = { + isa = PBXGroup; + children = ( + C75A980446438AE106AEB35138F54A85 /* RxSwift.framework */, + 6B317388FFEF0D533427D38EAABDDDF3 /* OS X */, ); name = Frameworks; sourceTree = ""; }; - E24A269C6A2EF0AC968CBCCD75BB7C0A /* Alamofire */ = { + B836E84BF01E81C5997F30D1072E6CD5 /* Support Files */ = { isa = PBXGroup; children = ( - 822A32C67318B2171827F9F276472026 /* AFError.swift */, - 11C843F0A8CC61D5B0B5CCFFC9B6EE77 /* Alamofire.swift */, - 420BCA1748F9506534FB0A233C6EB49A /* DispatchQueue+Alamofire.swift */, - 970A1485E6688625754970DC8BBC7072 /* MultipartFormData.swift */, - 8F59435F621E888DE7C2D34F05907491 /* NetworkReachabilityManager.swift */, - 1325C66E30F87E4F665AF154722DABD6 /* Notifications.swift */, - 5C658B994B5D0A61D71450AAF4863AC8 /* ParameterEncoding.swift */, - F58912C1C682D706B91088B2E3E28849 /* Request.swift */, - 874D86BD8C4CCD8EC1708994A7C75D5A /* Response.swift */, - 1E17FA1477E37C745A33298D5655B877 /* ResponseSerialization.swift */, - 4B9730D65B8F0B8AE3F7A91E58EB6705 /* Result.swift */, - F41F3F896039E0F2EE235A159F853B08 /* ServerTrustPolicy.swift */, - E39B6AE9C7DBAF6F7102DDE428C6D4DA /* SessionDelegate.swift */, - 0DD3EF9C6F47C3257FC0151069723CD1 /* SessionManager.swift */, - 18D47804A6E897EF20B93DDAE8450B08 /* TaskDelegate.swift */, - 219ED455E5F4B8EBAC276EB23D845469 /* Timeline.swift */, - EEF0E141DA73C02E3495E9BC4F3BCB79 /* Validation.swift */, - 3F41528D8527E7927A277FE059F9FC77 /* Support Files */, + 4987E3BE8BCDB45015225A951A34F4E6 /* RxSwift.modulemap */, + 2404E7D73F00A4945F5DC184D2B99C7F /* RxSwift.xcconfig */, + 20739FDF831BB0F4991E635F037F4D53 /* RxSwift-dummy.m */, + AC7B5BFC733D26F4D5622E3A9CD8C0AC /* RxSwift-Info.plist */, + C102E4BA9204E05BAF18BF208FEE50AE /* RxSwift-prefix.pch */, + C040A24C79BECD83D8DAEBB732CA2C4C /* RxSwift-umbrella.h */, ); - path = Alamofire; + name = "Support Files"; + path = "../Target Support Files/RxSwift"; sourceTree = ""; }; - E2E3EA611324A191E7D403B061C56915 /* OS X */ = { + CF1408CF629C7361332E53B88F7BD30C = { isa = PBXGroup; children = ( - 139134EE845E284F4B3ED2EF2F9A302B /* AppKit.framework */, - EFD468F10CD22B3EFAB406DAC3FCC7C9 /* Carbon.framework */, - EA9A1A86E1594EEC96C2B7214E16E50F /* Cocoa.framework */, - 4FEC4B8DFE8753A9B1DE598293568F30 /* SystemConfiguration.framework */, + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, + B633DF5B92729A2C1D0550F244AD04C5 /* Frameworks */, + 6A22003E3ABE61E9089B601AA62974D4 /* Pods */, + 92844F560400DDCFD6CD292F322191F2 /* Products */, + 493933EC245DE8B9BF6A90C4A901306A /* Targets Support Files */, ); - name = "OS X"; + sourceTree = ""; + }; + D074308686340938E18E740ADAB1804E /* GCDWebServer */ = { + isa = PBXGroup; + children = ( + 7EF9E7DBDBFA523CABCA1848B3BDC6A7 /* Core */, + A00D572F62872CE6C8D401EFA214A674 /* Support Files */, + ); + name = GCDWebServer; + path = GCDWebServer; + sourceTree = ""; + }; + EFCCCEA8E0034613C25D03F6BE1EF447 /* RxCocoa */ = { + isa = PBXGroup; + children = ( + 8BF0A688C22F29DB903EF9A236ED7348 /* _RX.h */, + D4BAFDA36ADAA0AE1A0AF50E9BE316D4 /* _RX.m */, + 1A87F66B7C0A2A769A71E74D77CC0F6E /* _RXDelegateProxy.h */, + C6CBC513FD67E4B9D27B37B20FE77767 /* _RXDelegateProxy.m */, + DB32400B5D77925D116636110300F088 /* _RXKVOObserver.h */, + D8E11BFF20246B446C866F0E2026C462 /* _RXKVOObserver.m */, + EEBE1A4DAC125D4D87965C8C63DA855E /* _RXObjCRuntime.h */, + 1A31ED91CC7DB5FC9CCE04EA8F05E7CA /* _RXObjCRuntime.m */, + A4514618AF4A8785D792681F9D0B5746 /* Bag.swift */, + EE40E1C28C0ED004EC66B24A11D003A1 /* BehaviorRelay.swift */, + 4ACE6D9E8FB2E240CB7793D4F491AF48 /* BehaviorRelay+Driver.swift */, + 55FE174008A548419E3616A8304792F3 /* Binder.swift */, + D93C344C4C18CCB31E7C612CA1D9C919 /* ControlEvent.swift */, + 1AAAFEAAB56AAD738235F68EF3B9D64A /* ControlEvent+Driver.swift */, + FC0C7A7BD6EE3E64A6CABC0AC01DEA80 /* ControlEvent+Signal.swift */, + 8277BA3F6A56D35A69BE1B109040BAAD /* ControlProperty.swift */, + A73DA8FC3EC519393FA7257C0DBC08F9 /* ControlProperty+Driver.swift */, + 14E6D271BA2BAC998BEC96349915043A /* ControlTarget.swift */, + EF2675EFADCB1550AB2ABF860C0EFF1C /* DelegateProxy.swift */, + 940CF5F9A64D84BB22B13B11080B86A0 /* DelegateProxyType.swift */, + 1A592F999686D738A8A59DF187637CA5 /* Deprecated.swift */, + 3C6A4FC4585A5649410CE0A0227307F1 /* DeprecationWarner.swift */, + C0539693C0F2FC077F09DC01D9DD9889 /* DispatchQueue+Extensions.swift */, + B6D11F1F9EBFD924C95404221C791A6A /* Driver.swift */, + CE59059EEA9DD611319BD64150DB48A8 /* Driver+Subscription.swift */, + 5C263CEED8FEBEBA9E5ED42A571DCBAC /* InfiniteSequence.swift */, + 23C02B368180FB853CF69D8BD92B525D /* KVORepresentable.swift */, + 77962C4AC841E11BD3C119CD4360E5F2 /* KVORepresentable+CoreGraphics.swift */, + EC264F1B6B228DB4C74BDACA8C9D8AAF /* KVORepresentable+Swift.swift */, + A3559D9AF301168A7297F8316642A1D9 /* Logging.swift */, + 92806FA2DD6EBD0D101F4EB0F315034E /* NotificationCenter+Rx.swift */, + 3C03042C06157044F423F9D10F9B7EE0 /* NSButton+Rx.swift */, + B500AB6C7812692C521D5DD14DF74004 /* NSControl+Rx.swift */, + BE4D4254E7BF6ACFAA307212458040FA /* NSImageView+Rx.swift */, + FB38AA80740D5626F6C00658547F42C3 /* NSLayoutConstraint+Rx.swift */, + FDB4A4C063CE1EF210E254829012DB5B /* NSObject+Rx.swift */, + 134C64056AF906740FD1018C35BEF701 /* NSObject+Rx+KVORepresentable.swift */, + 2C27FEA407D98B278E6001B742691810 /* NSObject+Rx+RawRepresentable.swift */, + 9580718B59112E917F818E1005D06AD5 /* NSSlider+Rx.swift */, + 69DFCECA2DA77DAE2A2C434E84344679 /* NSTextField+Rx.swift */, + 383D3A040BF1C400C324B79A7396A910 /* NSView+Rx.swift */, + 3412FD7CC7AFAA07876D64625DF8FA8E /* Observable+Bind.swift */, + CC5891807424EE31938582ED13293B62 /* ObservableConvertibleType+Driver.swift */, + 78610C90655E1113118379D3EAA0451C /* ObservableConvertibleType+SharedSequence.swift */, + 9ED8A086BE8CA5BEE3E5C0D37A2CD14F /* ObservableConvertibleType+Signal.swift */, + 5F5571F7DA898207F53AFA04E29656E2 /* Platform.Darwin.swift */, + BAF3CA88F186E7EF40DF399A454757DC /* Platform.Linux.swift */, + C05663B4BAFA8BAE8DD2907768B939E5 /* PriorityQueue.swift */, + D303E3D83E22FD1525FB8E4D2457EC46 /* PublishRelay.swift */, + C94C26FB4F7BF070740AFEF36696885A /* PublishRelay+Signal.swift */, + 75C134F788D816D15D57A2D18B4FB891 /* Queue.swift */, + D102D6B345CC3BF4C7BC4E723D4F0ACD /* RecursiveLock.swift */, + A1402ED175029AB00EF213BFBA8CFD49 /* RxCocoa.h */, + 78FBB4CC86926BA09E37559F66D42AB1 /* RxCocoa.swift */, + 69E916AFF16DCCD934972C769B239C3C /* RxCocoaObjCRuntimeError+Extensions.swift */, + 3309D64568C776424A4E0B6F079247F1 /* RxCocoaRuntime.h */, + 91ED414CA91E90DB1FC1DDB09736FF57 /* RxTarget.swift */, + BB395D06F703BC5DABE7B987F87E93F4 /* SchedulerType+SharedSequence.swift */, + 2A376CB3E32D61CDCB42BF0B1CEB11EF /* SectionedViewDataSourceType.swift */, + 0AC97FCB44A4D1C5C8DB2728DBE8C88A /* SharedSequence.swift */, + B98F8BDDE507E7BD87B849BAA6DB3EB9 /* SharedSequence+Operators.swift */, + C492AED829C3ECE9C4CCE59D7345E275 /* SharedSequence+Operators+arity.swift */, + 26A4C5501C41F777203D2271A2F2E0F6 /* Signal.swift */, + 0994F80676488AA08BC591E58CFD98A1 /* Signal+Subscription.swift */, + A58214A49C128D7A4C7544E87344A3C1 /* TextInput.swift */, + 3A6BB051BFA77EC4B09F22D2F8F247E2 /* URLSession+Rx.swift */, + 0F258020A47C1F403F36EBB32FDD9A83 /* Support Files */, + ); + name = RxCocoa; + path = RxCocoa; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - 49E47E8FB0395F70E77651B02346BF41 /* Headers */ = { + 02DE883E52E24926250E9AD6741D4B5D /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 2DBAC0452D6B85DF3E41E3AEFB4EEC16 /* Pods-ShadowsocksX-NGTests-umbrella.h in Headers */, + 8737CB32F7C27B2303F2CBFD4C19D5D4 /* _RX.h in Headers */, + F15171E22983A407B401CB0880A24A4A /* _RXDelegateProxy.h in Headers */, + 7599841888359DCE8152EF1AE1B59757 /* _RXKVOObserver.h in Headers */, + 99C5C550C3E6F00811BA4C57B7D7F58F /* _RXObjCRuntime.h in Headers */, + B2C333B276395247F48EA9A9AC76E374 /* RxCocoa-umbrella.h in Headers */, + AE76B4AB2F2D2F7BF228CCEC7A09B3F4 /* RxCocoa.h in Headers */, + ECC9A343A71FC98D07B545D6BDC5AB0C /* RxCocoaRuntime.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 515CC0B658FC2F28D886B75DF18D212D /* Headers */ = { + 1D6AF7C7E222FECC8BAF23CA1F6589F8 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - F2853E97BDDC82B8F91AE2954D27F775 /* RxSwift-umbrella.h in Headers */, + 9AE25D49EBC96F6D6E68CF6D566E85D6 /* MASDictionaryTransformer.h in Headers */, + D9DB9FA552C86B626E12CD5650E444F7 /* MASHotKey.h in Headers */, + E08992C32D31129A0055514FA5BD3849 /* MASKeyCodes.h in Headers */, + 0A53115AAF2399246743B41ED6E5D5A5 /* MASKeyMasks.h in Headers */, + CE2760C82C07084992BC176BA8AF41DE /* MASLocalization.h in Headers */, + 7874ED6812E4ECD587B3494B42649DFC /* MASShortcut-umbrella.h in Headers */, + 7C503D266F5974D82BD0A60DC4225FCD /* MASShortcut.h in Headers */, + 538B8D7C14FE9DD26B5BF85355ABB93B /* MASShortcutBinder.h in Headers */, + D8C2E8F2D3D1319BB11642F41372A188 /* MASShortcutMonitor.h in Headers */, + E9795B875E10345C330065C812F46AD3 /* MASShortcutValidator.h in Headers */, + C74FBC45A8CC8865F2E254DC0B9F9AC6 /* MASShortcutView+Bindings.h in Headers */, + 22E8DE42AE23B3210B04D02E0AAFB895 /* MASShortcutView.h in Headers */, + C8E0EEE042EA7C2FF22A3E452A7922EE /* Shortcut.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 532B704827707EAEFF5F8967E662D4F7 /* Headers */ = { + 2582784E4FA6A1AC5D23FC53AC3F6EE2 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 2C16189485F3647493E5E74E8C629E54 /* Pods-ShadowsocksX-NG-umbrella.h in Headers */, + F7B74645E07C39771156A1FA413B98D4 /* Alamofire-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 68FE8321E00587BF5072825A5E9B4704 /* Headers */ = { + 29E59AC9928AE6EC96301B11A400DC97 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - EE3A79FAA60A198321767854B60B772F /* MASDictionaryTransformer.h in Headers */, - AA7CDF00DFA1EAFF7F28CAF33FE5BC37 /* MASHotKey.h in Headers */, - F94ACA6AA0DD416E5BF05E2425E5F2A6 /* MASKeyCodes.h in Headers */, - 76537FCDFF46E2EAA84E9632DB6A21ED /* MASKeyMasks.h in Headers */, - 751AC207B038ADC338015FD80AA54B76 /* MASLocalization.h in Headers */, - 3076DFAD05E4F7F0356153478F071D74 /* MASShortcut-umbrella.h in Headers */, - 7E20F5346ADC8F4F5C069EDDE10897FD /* MASShortcut.h in Headers */, - 81B6397FECC803695902CEDB37CB4DFA /* MASShortcutBinder.h in Headers */, - 5FF7D42F51FEAEB192E61355AAEAC6DE /* MASShortcutMonitor.h in Headers */, - 8C5EA18EEE22A60BF10955E38F0D3A75 /* MASShortcutValidator.h in Headers */, - E97573A653DE3A4CB8BAC26FB7B3E9A9 /* MASShortcutView+Bindings.h in Headers */, - 51358F3E24AC8F1A4172E388769FF1FA /* MASShortcutView.h in Headers */, - DFA6E4455415B3EB3BB38A9F48EEB044 /* Shortcut.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 6B9981C9382CA48E42CADD9274429C8D /* Headers */ = { + 6D5EE38D1C1016BBF38E27BDF0AE819C /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 30E2A73CDE464DC6C23D3524F07FBB9F /* GCDWebServer-umbrella.h in Headers */, - EA6D2E46B967F447FFC46520EC328B5E /* GCDWebServer.h in Headers */, - 66AD0D86950A5C05121AE482F5257717 /* GCDWebServerConnection.h in Headers */, - 4EDE49009B5B68074CD71F8B362F0DDC /* GCDWebServerDataRequest.h in Headers */, - 1568BC317134F1902AB76EE65E0A18CE /* GCDWebServerDataResponse.h in Headers */, - 1EF1D9B948C91F3CAD0F2998F3765D8B /* GCDWebServerErrorResponse.h in Headers */, - 015A2D47B6DA8E170E4E64108EC177CA /* GCDWebServerFileRequest.h in Headers */, - 0B8140968914C908CFB4949F67745DD7 /* GCDWebServerFileResponse.h in Headers */, - B7EF65DA3A34ABF3B41F50ADCD198BDC /* GCDWebServerFunctions.h in Headers */, - 7C46C6DFBF9F5A96C6BCE1C93052B63D /* GCDWebServerHTTPStatusCodes.h in Headers */, - 3E715DFE443524EB6ADE892E4A676224 /* GCDWebServerMultiPartFormRequest.h in Headers */, - 03810806C0578A750613717248DC37CC /* GCDWebServerPrivate.h in Headers */, - 36E0FA5FE4424D20F0215B1C2CD85D90 /* GCDWebServerRequest.h in Headers */, - 2527F62CEADDA5CE60852E0C067D3438 /* GCDWebServerResponse.h in Headers */, - 6C62ACD1AF9B80626023D3E654D3E77B /* GCDWebServerStreamedResponse.h in Headers */, - 098AA417A5494FC829E777DC5CF06ECC /* GCDWebServerURLEncodedFormRequest.h in Headers */, + CEA50BEC377AEE2AAA9DB5B71DEA418C /* BRLOptionParser.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 8D0544708D493A52C828804099AE01DC /* Headers */ = { + 8AC5AA6FFC615596F505AD8BD785D837 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 86F7FE179A98E2787500CA0DD68F2574 /* _RX.h in Headers */, - DF2762B53F71DBC62F8CE6D5A89E7461 /* _RXDelegateProxy.h in Headers */, - FF647F4502B0AE29095FA14A256612EE /* _RXKVOObserver.h in Headers */, - 6D1B82733CCD35C7B720D8B306969DB2 /* _RXObjCRuntime.h in Headers */, - DB94D782C6F193FB6F56D52926F2A84B /* RxCocoa-umbrella.h in Headers */, - 9A551C74F80912EFDFC942535ECA28BE /* RxCocoa.h in Headers */, - 08067F41CEECB56CE74FFCA481092E8D /* RxCocoaRuntime.h in Headers */, + 1D5606C6BD48C543FA0DB2C82B8791B7 /* GCDWebServer-umbrella.h in Headers */, + AECCE1EAA0757255BC4D722A53202DB0 /* GCDWebServer.h in Headers */, + 7D5AE7E56AC7636F1D00076095F57745 /* GCDWebServerConnection.h in Headers */, + 8BEDC2C0D907FBB47A65EE0E01DE2A59 /* GCDWebServerDataRequest.h in Headers */, + 901D8E9CC22C5E7FDB218557EBBB3559 /* GCDWebServerDataResponse.h in Headers */, + F5C3C227785D45C44F1FA8157EF99C71 /* GCDWebServerErrorResponse.h in Headers */, + 4892C3EBD345FAE187A5E15D7FA19CBE /* GCDWebServerFileRequest.h in Headers */, + D33C1AD2E019F48235F734A00CE7C24C /* GCDWebServerFileResponse.h in Headers */, + B47372436C56EE24B909DE97D5005A64 /* GCDWebServerFunctions.h in Headers */, + C341FC8944C28CCA39FB9AC4B0F23763 /* GCDWebServerHTTPStatusCodes.h in Headers */, + FCBF7F9DA53A194F0653EE7E00B57BC8 /* GCDWebServerMultiPartFormRequest.h in Headers */, + DF3FD63D6A37C12FDB09B8CA5AE80AC3 /* GCDWebServerPrivate.h in Headers */, + 6809229B402FC6C91774DA8664AD4F2F /* GCDWebServerRequest.h in Headers */, + 88F5FF298C4C3D2CDCA5EB7B0BE2B52C /* GCDWebServerResponse.h in Headers */, + 1FAEB66513E2610FE37D99FDD8F9E46D /* GCDWebServerStreamedResponse.h in Headers */, + BD379AB5D6DF4FF97EF15732D9635186 /* GCDWebServerURLEncodedFormRequest.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - B4002B6E97835FDCCAA5963EFE09A3E0 /* Headers */ = { + BA45FFACDF942A08AC3A4626AA4D2824 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 1B9EDEDC964E6B08F78920B4F4B9DB84 /* Alamofire-umbrella.h in Headers */, + 782A03F46C3FEEB4EC333D3D458ADE29 /* Pods-ShadowsocksX-NG-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - D6D75A22098E62174AFAD752CA5F6BEC /* Headers */ = { + C80E99098EA3759E6E3B00F01D9F293F /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 7A88AD6D91DEB45F24205AB36E456007 /* BRLOptionParser.h in Headers */, + 4B9B87B95A8879430CC52C18DCEDD999 /* RxSwift-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE6EB12F29AADD5E1AA58A7842CE9B9C /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + F141581ECD51D5136051D061A8F96539 /* Pods-ShadowsocksX-NGTests-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 00C94ED0B49A44FBF0C4E2F6C875CFFC /* MASShortcut */ = { + 00F92A6698B766C4479D7B608F28D680 /* BRLOptionParser */ = { isa = PBXNativeTarget; - buildConfigurationList = 3F916C3627231C409340EF9C88C37F7E /* Build configuration list for PBXNativeTarget "MASShortcut" */; + buildConfigurationList = 6D442598AC59E49374231C4242255CA3 /* Build configuration list for PBXNativeTarget "BRLOptionParser" */; buildPhases = ( - 2A63CAAD91A284BB01FE7A2D488ADAC4 /* Sources */, - CDE6AA439381DD5665018F889D1E5A6B /* Frameworks */, - BDD1FBDDF5D87D58DCD6110D44F7737E /* Resources */, - 68FE8321E00587BF5072825A5E9B4704 /* Headers */, - ); - buildRules = ( - ); - dependencies = ( - 6D8935AB78317EC6C1ABBB09EA86C5FB /* PBXTargetDependency */, - ); - name = MASShortcut; - productName = MASShortcut; - productReference = E417BF107A54D2027FCFA21115B0B6BF /* MASShortcut.framework */; - productType = "com.apple.product-type.framework"; - }; - 05800FAF969AA3CD7F8AEB1C36988B53 /* Pods-proxy_conf_helper */ = { - isa = PBXNativeTarget; - buildConfigurationList = 246647E8AB354727F9ECD0879805161F /* Build configuration list for PBXNativeTarget "Pods-proxy_conf_helper" */; - buildPhases = ( - B8B68DF2BFB4B345BDF00E3B4B94B92C /* Sources */, - BFC962BBCB4EEE8B8C42B979F2D19C34 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - 7C03549F53DE7DA200E36C0642A79977 /* PBXTargetDependency */, - ); - name = "Pods-proxy_conf_helper"; - productName = "Pods-proxy_conf_helper"; - productReference = EFB5583E95D9163093E1C43B391FFCC1 /* libPods-proxy_conf_helper.a */; - productType = "com.apple.product-type.library.static"; - }; - 339CC546E4A1696296EFEDC2FA79ADE0 /* Pods-ShadowsocksX-NGTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 78B338CAC10BFFE58C0DE5D189212D60 /* Build configuration list for PBXNativeTarget "Pods-ShadowsocksX-NGTests" */; - buildPhases = ( - AFD9223E8E59CD878E1C56F1407DA2C8 /* Sources */, - BC15E0C98F4999B51186E4915D7B5660 /* Frameworks */, - 49E47E8FB0395F70E77651B02346BF41 /* Headers */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "Pods-ShadowsocksX-NGTests"; - productName = "Pods-ShadowsocksX-NGTests"; - productReference = 9D966DC3E49AE0BCCC9A1CA03C275F22 /* Pods_ShadowsocksX_NGTests.framework */; - productType = "com.apple.product-type.framework"; - }; - 3CB2B8006B2B1ACAF9ADCA1DC82E2290 /* BRLOptionParser */ = { - isa = PBXNativeTarget; - buildConfigurationList = 4B561109B4C51E9DC9F5F27E9C033405 /* Build configuration list for PBXNativeTarget "BRLOptionParser" */; - buildPhases = ( - 2899546AD56DA12F9B03BC5050860413 /* Sources */, - C8718142612A4E100493606F033235C0 /* Frameworks */, - D6D75A22098E62174AFAD752CA5F6BEC /* Headers */, + 6D5EE38D1C1016BBF38E27BDF0AE819C /* Headers */, + DFF2B5F26ABB5074146BB93EA5DBE095 /* Sources */, + EE0D52842751CED2CD0BD2633A30FEA4 /* Frameworks */, ); buildRules = ( ); @@ -1591,107 +1550,54 @@ ); name = BRLOptionParser; productName = BRLOptionParser; - productReference = 63F95A3FB354F1B43BC3C7CCA7C48037 /* libBRLOptionParser.a */; + productReference = 866C21955F27EBD7A49148F5E63A6E7E /* libBRLOptionParser.a */; productType = "com.apple.product-type.library.static"; }; - 50DA2BB85DEBA27DDBB9E2D53E8E2A1A /* RxCocoa */ = { + 2B2B481A164695722839BD581D442457 /* MASShortcut */ = { isa = PBXNativeTarget; - buildConfigurationList = D913F5C08F647E9FCC34C3A5B3030BD5 /* Build configuration list for PBXNativeTarget "RxCocoa" */; + buildConfigurationList = 5CCE7C934C2A3B1A21E22C728B195981 /* Build configuration list for PBXNativeTarget "MASShortcut" */; buildPhases = ( - 599911CCEC78C34ADF97D68041012691 /* Sources */, - AC6EF4DCF3427EDD23A06A9ACE60D1CB /* Frameworks */, - 8D0544708D493A52C828804099AE01DC /* Headers */, + 1D6AF7C7E222FECC8BAF23CA1F6589F8 /* Headers */, + CC0A6861257CB532973FF86E2158080D /* Sources */, + 03EC701EA93354FA80620865021DDA20 /* Frameworks */, + 5EFE0CB740750F37B670FCC84E1A05C2 /* Resources */, ); buildRules = ( ); dependencies = ( - 3AB65F40E1512A92325180D6E33602FE /* PBXTargetDependency */, + 785DF10A7F6D077AAC7E454D1492F078 /* PBXTargetDependency */, ); - name = RxCocoa; - productName = RxCocoa; - productReference = D18E7218EA86B1A581D12090718F1F3C /* RxCocoa.framework */; + name = MASShortcut; + productName = MASShortcut; + productReference = 26A8810424438A12E7ADBFB3E068C658 /* MASShortcut.framework */; productType = "com.apple.product-type.framework"; }; - 5B8B0ED1046111D92895FC95F12DBC10 /* GCDWebServer */ = { + 2E91F9FD8B0C7DA58DD330CBF2096926 /* Pods-ShadowsocksX-NGTests */ = { isa = PBXNativeTarget; - buildConfigurationList = 010811070A86F912EA0CD2BB98136CD9 /* Build configuration list for PBXNativeTarget "GCDWebServer" */; + buildConfigurationList = FFBCBA759AC5392D04EBA19E125E32BA /* Build configuration list for PBXNativeTarget "Pods-ShadowsocksX-NGTests" */; buildPhases = ( - 81F40976E91E102E115D6BE30CCC18E9 /* Sources */, - 7E718F9F87ABFC0EC82CF710FAF92DC4 /* Frameworks */, - 6B9981C9382CA48E42CADD9274429C8D /* Headers */, + DE6EB12F29AADD5E1AA58A7842CE9B9C /* Headers */, + F8B0EA0009838166B85F3E1499E8E0B4 /* Sources */, + F9230A35111B5DCDA46C2D1D69595EDC /* Frameworks */, + 452930C554E1EA81757FA25E811D94D5 /* Resources */, ); buildRules = ( ); dependencies = ( + BE993D535080B4168378C516D8CB2A03 /* PBXTargetDependency */, ); - name = GCDWebServer; - productName = GCDWebServer; - productReference = B3193AEA5372872BA57804AA2CAE1875 /* GCDWebServer.framework */; + name = "Pods-ShadowsocksX-NGTests"; + productName = "Pods-ShadowsocksX-NGTests"; + productReference = D48183AD5F98D081078429EF56451DFF /* Pods_ShadowsocksX_NGTests.framework */; productType = "com.apple.product-type.framework"; }; - 88D587684BF4E7ECC675C83B7E824D75 /* Pods-ShadowsocksX-NG */ = { + 73C37A16ECCEAD845651DCDEE95675BE /* MASShortcut-MASShortcut */ = { isa = PBXNativeTarget; - buildConfigurationList = E185892330EBDCF4E8B37928210771A9 /* Build configuration list for PBXNativeTarget "Pods-ShadowsocksX-NG" */; + buildConfigurationList = 14EDD71B3D9BB25C4467E6BAFABDB673 /* Build configuration list for PBXNativeTarget "MASShortcut-MASShortcut" */; buildPhases = ( - 904AEEA871CD0088ACE9F674EED25700 /* Sources */, - 4F131864F47901DC9547FC3861CAA756 /* Frameworks */, - 532B704827707EAEFF5F8967E662D4F7 /* Headers */, - ); - buildRules = ( - ); - dependencies = ( - 333E7BAB0E0DB09E26646BD8E93FFDCE /* PBXTargetDependency */, - 3E1EF8FCF446C8D86D778D5D1ABFA9CD /* PBXTargetDependency */, - 895CE87A9D309D30CEFBF51BA07CDBEA /* PBXTargetDependency */, - C65B838B24FDE9D70E5E870D8780B5EB /* PBXTargetDependency */, - D9D65FB37163F6C00197A5C036F871E6 /* PBXTargetDependency */, - ); - name = "Pods-ShadowsocksX-NG"; - productName = "Pods-ShadowsocksX-NG"; - productReference = C8FA0250F8F58859A42FACB6244CB83C /* Pods_ShadowsocksX_NG.framework */; - productType = "com.apple.product-type.framework"; - }; - 88E9EC28B8B46C3631E6B242B50F4442 /* Alamofire */ = { - isa = PBXNativeTarget; - buildConfigurationList = 419E5D95491847CD79841B971A8A3277 /* Build configuration list for PBXNativeTarget "Alamofire" */; - buildPhases = ( - 32B9974868188C4803318E36329C87FE /* Sources */, - B14D21A682C80219D90189FAC9A7DDDF /* Frameworks */, - B4002B6E97835FDCCAA5963EFE09A3E0 /* Headers */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = Alamofire; - productName = Alamofire; - productReference = A6FA4BF27FB90B714947E536885E37C1 /* Alamofire.framework */; - productType = "com.apple.product-type.framework"; - }; - 9759FFB1455B05FE96A5765890590110 /* RxSwift */ = { - isa = PBXNativeTarget; - buildConfigurationList = C3C04E339BA1928DBC29CEFD07DC6ADF /* Build configuration list for PBXNativeTarget "RxSwift" */; - buildPhases = ( - CB73BD32F4C74B161BA96C32EA4C8206 /* Sources */, - 656F921478BE483858A20165B6945F4A /* Frameworks */, - 515CC0B658FC2F28D886B75DF18D212D /* Headers */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = RxSwift; - productName = RxSwift; - productReference = 60D7A87958991203E6AEEF88F8165CB1 /* RxSwift.framework */; - productType = "com.apple.product-type.framework"; - }; - D6E5ED8DAF7CA937C8F68F342C48B26E /* MASShortcut-MASShortcut */ = { - isa = PBXNativeTarget; - buildConfigurationList = B2542ED88CE98D477B8D38769095CE5E /* Build configuration list for PBXNativeTarget "MASShortcut-MASShortcut" */; - buildPhases = ( - C85081056E3DF73EFBB147D8F01CDE65 /* Sources */, - 06DB63E0064B15C5B39BFF16CDD7970E /* Frameworks */, - B7977A817BCC9300C280AC3762FC58AB /* Resources */, + 52860AF2B250CED8219DBAE5624918DF /* Sources */, + F48CC03784155F3AB3D513B5BEA3AB81 /* Frameworks */, + 96F9ACF6860FAF22B9F4A51BB6FE02BC /* Resources */, ); buildRules = ( ); @@ -1699,495 +1605,669 @@ ); name = "MASShortcut-MASShortcut"; productName = "MASShortcut-MASShortcut"; - productReference = 711B62B6A01799BBCBA4F90D70C6AF28 /* MASShortcut.bundle */; + productReference = 230F8208BE63C052A548A7D41A1158B2 /* MASShortcut.bundle */; productType = "com.apple.product-type.bundle"; }; + 7AD0C6DCDC9CEC8A3C7C10C7FEE07BE6 /* RxCocoa */ = { + isa = PBXNativeTarget; + buildConfigurationList = FFAD12CB87D7846A886FC2434E2DE4B9 /* Build configuration list for PBXNativeTarget "RxCocoa" */; + buildPhases = ( + 02DE883E52E24926250E9AD6741D4B5D /* Headers */, + 0E09F912842A904A97E2A321DCD7BFED /* Sources */, + 787DB3400F0D0F318E4E36A150350BDD /* Frameworks */, + 7C3B35A6F4201B10A6A98F3454372AB8 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + F00501C22F92B40870956958AF4E7DBE /* PBXTargetDependency */, + ); + name = RxCocoa; + productName = RxCocoa; + productReference = BC432FD48A5932251F1CAFBC4BF74894 /* RxCocoa.framework */; + productType = "com.apple.product-type.framework"; + }; + 9155E0B9A1C6F689BA4B61F3B690FDA1 /* Pods-proxy_conf_helper */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1DEF4FDEB2EC08FC81953652795253B2 /* Build configuration list for PBXNativeTarget "Pods-proxy_conf_helper" */; + buildPhases = ( + 29E59AC9928AE6EC96301B11A400DC97 /* Headers */, + EE68890D9822CF6FA54B7B7954CBBB99 /* Sources */, + 90BE591F87E8CB0CD3B421484084CF1F /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 5A80703760D05602640CE0D9867EAB10 /* PBXTargetDependency */, + ); + name = "Pods-proxy_conf_helper"; + productName = "Pods-proxy_conf_helper"; + productReference = 61C23DB60A84900CD4BDA2F5EE2A0865 /* libPods-proxy_conf_helper.a */; + productType = "com.apple.product-type.library.static"; + }; + AD904F32069787EFB2DFFE05EB82F5BD /* GCDWebServer */ = { + isa = PBXNativeTarget; + buildConfigurationList = 690C9430B03B92419AFA4555712EC873 /* Build configuration list for PBXNativeTarget "GCDWebServer" */; + buildPhases = ( + 8AC5AA6FFC615596F505AD8BD785D837 /* Headers */, + A169CD366B0A64342FFF6E09CEC61622 /* Sources */, + C2D4774AB2F0BFB25B60914F66C457AC /* Frameworks */, + AE499806FA299FC184E575472A14EE39 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = GCDWebServer; + productName = GCDWebServer; + productReference = B68C1052A3B51DBCF7D960F898AAFA95 /* GCDWebServer.framework */; + productType = "com.apple.product-type.framework"; + }; + E9FDECF69808DB0491D4B4C08CF920DC /* Pods-ShadowsocksX-NG */ = { + isa = PBXNativeTarget; + buildConfigurationList = D615352A0712488A75D13633F6615244 /* Build configuration list for PBXNativeTarget "Pods-ShadowsocksX-NG" */; + buildPhases = ( + BA45FFACDF942A08AC3A4626AA4D2824 /* Headers */, + 6B35D8D6ED2987D6628CAEB0336B2646 /* Sources */, + 550A4EC5CA7C76FA9E91471AF2FA0F18 /* Frameworks */, + 85E834A7BB49C536EAEA94B7B90B9720 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 654DB0D5AC01F5EF1152E085ECE374A4 /* PBXTargetDependency */, + 4A7AAAD9A6547DFC55534D9C39318A02 /* PBXTargetDependency */, + 39D6AB4AF7BACA4C0F770EA14F554517 /* PBXTargetDependency */, + 46E99C1329CF17A8F03B941D9AC8AD8F /* PBXTargetDependency */, + 41B55A0E7F732663E471B4A675F9C6F2 /* PBXTargetDependency */, + ); + name = "Pods-ShadowsocksX-NG"; + productName = "Pods-ShadowsocksX-NG"; + productReference = D896F6A68919914B3302027C15449A1D /* Pods_ShadowsocksX_NG.framework */; + productType = "com.apple.product-type.framework"; + }; + EA9EA43B3B503823EE36C60D9C8A865F /* RxSwift */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1CA538C48EFF5400714AA4B2CC6A5D32 /* Build configuration list for PBXNativeTarget "RxSwift" */; + buildPhases = ( + C80E99098EA3759E6E3B00F01D9F293F /* Headers */, + A4C51FC7C9B72BB2A91F942C54465CD1 /* Sources */, + 43B1C678B298B0D945231704CB405D53 /* Frameworks */, + 0152F849FA1F3573B0EF1FFB125783F5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = RxSwift; + productName = RxSwift; + productReference = 809C5FAB588354C9BA37DC3EAB8CB45C /* RxSwift.framework */; + productType = "com.apple.product-type.framework"; + }; + EAAA1AD3A8A1B59AB91319EE40752C6D /* Alamofire */ = { + isa = PBXNativeTarget; + buildConfigurationList = E4A5194ABAF7A4780609E0E581DA6B54 /* Build configuration list for PBXNativeTarget "Alamofire" */; + buildPhases = ( + 2582784E4FA6A1AC5D23FC53AC3F6EE2 /* Headers */, + 2DDFD9AC10F181CD7130BDF5F9E0502B /* Sources */, + 8E62B48C75664826F00271649DEDBE7F /* Frameworks */, + 473D3E892ABB6C798CFF290644259B34 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Alamofire; + productName = Alamofire; + productReference = 5D797E9A5C5782CE845840781FA1CC81 /* Alamofire.framework */; + productType = "com.apple.product-type.framework"; + }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { + BFDFE7DC352907FC980B868725387E98 /* Project object */ = { isa = PBXProject; attributes = { - LastSwiftUpdateCheck = 0830; - LastUpgradeCheck = 0930; + LastSwiftUpdateCheck = 1100; + LastUpgradeCheck = 1100; }; - buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; + buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, ); - mainGroup = 7DB346D0F39D3F0E887471402A8071AB; - productRefGroup = 57B3F389DDA7629AE17CC01B90DDFFD1 /* Products */; + mainGroup = CF1408CF629C7361332E53B88F7BD30C; + productRefGroup = 92844F560400DDCFD6CD292F322191F2 /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - 88E9EC28B8B46C3631E6B242B50F4442 /* Alamofire */, - 3CB2B8006B2B1ACAF9ADCA1DC82E2290 /* BRLOptionParser */, - 5B8B0ED1046111D92895FC95F12DBC10 /* GCDWebServer */, - 00C94ED0B49A44FBF0C4E2F6C875CFFC /* MASShortcut */, - D6E5ED8DAF7CA937C8F68F342C48B26E /* MASShortcut-MASShortcut */, - 05800FAF969AA3CD7F8AEB1C36988B53 /* Pods-proxy_conf_helper */, - 88D587684BF4E7ECC675C83B7E824D75 /* Pods-ShadowsocksX-NG */, - 339CC546E4A1696296EFEDC2FA79ADE0 /* Pods-ShadowsocksX-NGTests */, - 50DA2BB85DEBA27DDBB9E2D53E8E2A1A /* RxCocoa */, - 9759FFB1455B05FE96A5765890590110 /* RxSwift */, + EAAA1AD3A8A1B59AB91319EE40752C6D /* Alamofire */, + 00F92A6698B766C4479D7B608F28D680 /* BRLOptionParser */, + AD904F32069787EFB2DFFE05EB82F5BD /* GCDWebServer */, + 2B2B481A164695722839BD581D442457 /* MASShortcut */, + 73C37A16ECCEAD845651DCDEE95675BE /* MASShortcut-MASShortcut */, + 9155E0B9A1C6F689BA4B61F3B690FDA1 /* Pods-proxy_conf_helper */, + E9FDECF69808DB0491D4B4C08CF920DC /* Pods-ShadowsocksX-NG */, + 2E91F9FD8B0C7DA58DD330CBF2096926 /* Pods-ShadowsocksX-NGTests */, + 7AD0C6DCDC9CEC8A3C7C10C7FEE07BE6 /* RxCocoa */, + EA9EA43B3B503823EE36C60D9C8A865F /* RxSwift */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - B7977A817BCC9300C280AC3762FC58AB /* Resources */ = { + 0152F849FA1F3573B0EF1FFB125783F5 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - EFFA4247C90B98FD9160F30905A64569 /* cs.lproj in Resources */, - 66DEB394C39F5DCCD70A27ECEF274983 /* de.lproj in Resources */, - E560A21728B29AF234BD0F37AFE16F36 /* en.lproj in Resources */, - D6EA93219364CDC135BAFE63084F6361 /* es.lproj in Resources */, - C06EE84D23391E9FA94864DEDE34F548 /* fr.lproj in Resources */, - E66F7AFACFC665B23022A09E46815B5C /* it.lproj in Resources */, - 5F1FA9D431587CD257C703AF16134030 /* ja.lproj in Resources */, - 12149EA10608B7DE38879E6242D2826C /* ko.lproj in Resources */, - 97B374490F695A6ECB06271EF080EB6C /* nl.lproj in Resources */, - DE24C629B3DB152EE4924B56E3CC59F5 /* pl.lproj in Resources */, - A4DBF0AB2E88B1A9D1078042F47618B0 /* ru.lproj in Resources */, - F44386819D44846A436139CEF3D372A5 /* zh-Hans.lproj in Resources */, - 20887597017160017549465EBFB7E977 /* zh-Hant.lproj in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; - BDD1FBDDF5D87D58DCD6110D44F7737E /* Resources */ = { + 452930C554E1EA81757FA25E811D94D5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 473D3E892ABB6C798CFF290644259B34 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 5EFE0CB740750F37B670FCC84E1A05C2 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 511F5B5244A4CB3ED46CEFE35E521627 /* MASShortcut.bundle in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 7C3B35A6F4201B10A6A98F3454372AB8 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 85E834A7BB49C536EAEA94B7B90B9720 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 96F9ACF6860FAF22B9F4A51BB6FE02BC /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 90C5842904E656BF7A039C84F7FBFB32 /* cs.lproj in Resources */, + 294475DD8EA64DF850E639B4CAD2C5B2 /* de.lproj in Resources */, + 6F7AB23C264C288E6EB82C7FB426D6D2 /* en.lproj in Resources */, + 9531E77DE653809AD14A22A24211598E /* es.lproj in Resources */, + 8190CA8AD81A524AB88704089F9C39AD /* fr.lproj in Resources */, + 2EC203255048349AB8DD1E17BADE0513 /* it.lproj in Resources */, + 752D0C96FE2144251DF2441CED062A06 /* ja.lproj in Resources */, + 7B4306650BA9D20E721F32F0583A5966 /* ko.lproj in Resources */, + 5ED12989C4D24FDA28EF9297382A2169 /* nl.lproj in Resources */, + 1ED634081035209BE23CECD2AC078AEA /* pl.lproj in Resources */, + 220BA570F3035336F7A313E21758E285 /* pt.lproj in Resources */, + 50185BA242844E837BC42B4955AD82D7 /* ru.lproj in Resources */, + 54CD223EA54101A1118255D97FEDC22B /* sv.lproj in Resources */, + A034D9B64004D8F11B2E133B48E605A9 /* zh-Hans.lproj in Resources */, + 8F51DEA2A5487C5E0294DB4D4E0156E4 /* zh-Hant.lproj in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + AE499806FA299FC184E575472A14EE39 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 4818C1BB29E7C2BF255D9941737665EA /* MASShortcut.bundle in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 2899546AD56DA12F9B03BC5050860413 /* Sources */ = { + 0E09F912842A904A97E2A321DCD7BFED /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 2545E11592C408516EA9AC047FFD47FD /* BRLOptionParser-dummy.m in Sources */, - 0A402C97D8A2855E4F69D8E2BFEE752E /* BRLOptionParser.m in Sources */, + 525DB8EA2CF023DA5ECE57D0D545B70F /* _RX.m in Sources */, + FD62BA6360DA5EA60B540BDD45FE4EFC /* _RXDelegateProxy.m in Sources */, + C465894C47CD0298BA08084BA33DBB91 /* _RXKVOObserver.m in Sources */, + CF0AE4EF7AED02762D3BE8C143D136DA /* _RXObjCRuntime.m in Sources */, + ADFBCA3691E85C61468E1A0EBC94933E /* Bag.swift in Sources */, + 6EEF2F81A2D05CC00F27FCB98BB78E55 /* BehaviorRelay+Driver.swift in Sources */, + 78F3197E081D4119D4408F82FB6EA7F2 /* BehaviorRelay.swift in Sources */, + E652F245F72DFF1F9B833845B7D7AA91 /* Binder.swift in Sources */, + 0678B90AD6B6082C2A20EB9240655B76 /* ControlEvent+Driver.swift in Sources */, + 6B6B0744215081B56B360A8C5F205F53 /* ControlEvent+Signal.swift in Sources */, + 083DFF2A8257F2E9540362657929656C /* ControlEvent.swift in Sources */, + 702C4E98D87BA0D04C126E41D7053EF5 /* ControlProperty+Driver.swift in Sources */, + 99BAFF62363D520438B1E0F3448F7A4B /* ControlProperty.swift in Sources */, + 87375BFEEF5DD77711B527A21CFA0570 /* ControlTarget.swift in Sources */, + A851EAE4D6886C3C872E30ECECFE8F51 /* DelegateProxy.swift in Sources */, + AFD59761FA2F298F4CF03E472A2933F4 /* DelegateProxyType.swift in Sources */, + 614B5FC036650C47C42C61EBA247DA7B /* Deprecated.swift in Sources */, + 2CB9C6B952E93BEA2374852977A8DF57 /* DeprecationWarner.swift in Sources */, + 987A52B558A731D9E5EAE255793EA0E6 /* DispatchQueue+Extensions.swift in Sources */, + 8AFDA337729B5018B01946BDCD64910F /* Driver+Subscription.swift in Sources */, + 745C986934CF24FAA1E952B709541788 /* Driver.swift in Sources */, + 1868345555E42BC30895DCE50D6F1310 /* InfiniteSequence.swift in Sources */, + 97EF5791EF698C1FCBDD8B035392202E /* KVORepresentable+CoreGraphics.swift in Sources */, + 341878EA7DD42586445947D23F50B1D2 /* KVORepresentable+Swift.swift in Sources */, + E17757E19A1BD01D2B61FE5A55AD512A /* KVORepresentable.swift in Sources */, + CA614AD744B004718A9353C70A9E7462 /* Logging.swift in Sources */, + A7F087A0EFC61267F7FC07DC9CD15EA5 /* NotificationCenter+Rx.swift in Sources */, + C651B7E5627EFBC7E3149EA6E104E25A /* NSButton+Rx.swift in Sources */, + B540CDA825C4FA9E973193CFC024CB8F /* NSControl+Rx.swift in Sources */, + 011D8A5668D7EB19D8E3CB7D9640AA21 /* NSImageView+Rx.swift in Sources */, + 6FE5A36731EEA4F5D75A1DABC532A761 /* NSLayoutConstraint+Rx.swift in Sources */, + 960CF054CB54A14DFE94A441F50153E3 /* NSObject+Rx+KVORepresentable.swift in Sources */, + 3C7FF0651E1F27A9DCBA1E2354959EDB /* NSObject+Rx+RawRepresentable.swift in Sources */, + 27C9CBC711B4605657682EAB85555EDD /* NSObject+Rx.swift in Sources */, + 9AF34F771009CA842019CED30F0BDD3E /* NSSlider+Rx.swift in Sources */, + 2DF006CC8E3C63990204E69368A177AE /* NSTextField+Rx.swift in Sources */, + 67F7B3E4493E34621401131D603AC048 /* NSView+Rx.swift in Sources */, + 1A93AAE263F17A9F7CCE98C9EFE312C7 /* Observable+Bind.swift in Sources */, + 795393C7220BA106B9FE98B35E260F70 /* ObservableConvertibleType+Driver.swift in Sources */, + 591E1BC68C4667E57AC918E48BBDDA6E /* ObservableConvertibleType+SharedSequence.swift in Sources */, + 7D6E5058E1D3B79330B224B48231C787 /* ObservableConvertibleType+Signal.swift in Sources */, + E515BB42C00D3E319BC699FD34BA9868 /* Platform.Darwin.swift in Sources */, + 3FD2169D593D27C3D7748E65A940EFB7 /* Platform.Linux.swift in Sources */, + 541EDAD462653C37513336E0FA10089F /* PriorityQueue.swift in Sources */, + 3A6AC9D4496C9F008E9341C3B35EF9BA /* PublishRelay+Signal.swift in Sources */, + 332CBD3F6701F04264854877FEB72F8E /* PublishRelay.swift in Sources */, + 09B8793FC8FAB2B92E7DFD3FD271EBEF /* Queue.swift in Sources */, + ED9B50D196B86E63644CA70705CE10C8 /* RecursiveLock.swift in Sources */, + DE32FE946EF661EF0CAF45874720809A /* RxCocoa-dummy.m in Sources */, + 11EF5C61BE19A4E3F5C1F6057D97B29B /* RxCocoa.swift in Sources */, + 9DE5D6962DFFA2F4FEE374E6587715FF /* RxCocoaObjCRuntimeError+Extensions.swift in Sources */, + F37D6AAF13142C549822DC6C337D2D3E /* RxTarget.swift in Sources */, + C19C2288E40AAF1B7B0FFC4E9B30B28B /* SchedulerType+SharedSequence.swift in Sources */, + FCAEC096A064FAEB7E094807F7FBED59 /* SectionedViewDataSourceType.swift in Sources */, + 291C68FE102994BC1A97E5BF35B7D1CF /* SharedSequence+Operators+arity.swift in Sources */, + 5683409364F0736345FF7863835771D7 /* SharedSequence+Operators.swift in Sources */, + 28EA125E86E7D01A57419BCC1B790D2A /* SharedSequence.swift in Sources */, + CC3AD135FB7F1E40A08F0B0F29D78DC0 /* Signal+Subscription.swift in Sources */, + 563BA31DA1D7982CE6ACBE2B23724F94 /* Signal.swift in Sources */, + E7E20EFC14FC25ADBDECCC14D8B7F7F8 /* TextInput.swift in Sources */, + EB2C4D98DA3C5FC4AFC77C6EF339A6A4 /* URLSession+Rx.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 2A63CAAD91A284BB01FE7A2D488ADAC4 /* Sources */ = { + 2DDFD9AC10F181CD7130BDF5F9E0502B /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 4A6AF0A712D4C473177BE88389D15D2A /* MASDictionaryTransformer.m in Sources */, - 8FFA3A6A77962B3A36B009A49634D081 /* MASHotKey.m in Sources */, - C50FA5B211B8916770FBE55623B83DA4 /* MASLocalization.m in Sources */, - 6B4361F5ADC6268E7953732371174FE9 /* MASShortcut-dummy.m in Sources */, - 157AE1FBA8F6C3B710CDE90F86492010 /* MASShortcut.m in Sources */, - 5A30DAB76BB1814664FA7DC30939DA24 /* MASShortcutBinder.m in Sources */, - 74EFCC6DC65CEBCF60B106F7FBB14EA2 /* MASShortcutMonitor.m in Sources */, - 58CE04D9C6CAC7243825ABF4AB20EF32 /* MASShortcutValidator.m in Sources */, - ACBE29C4BF8BAEA483D6EEA940FE5314 /* MASShortcutView+Bindings.m in Sources */, - E5312C0FED7C61135F252D3A7A112990 /* MASShortcutView.m in Sources */, + 83956E20859CDBBE7BC38ABADE0170FB /* AFError.swift in Sources */, + 1945CD5D63A1C164AEAAA9A33E85571E /* Alamofire-dummy.m in Sources */, + BEE6B677416CA71C981D1D3F60B18C96 /* Alamofire.swift in Sources */, + D3D8C379C6E4FB487E5ABD6800AD7B7E /* DispatchQueue+Alamofire.swift in Sources */, + 1986B50C74F1697EA43F68335C93CEB3 /* MultipartFormData.swift in Sources */, + 3571F958A3907B3A806E62D50C2550D4 /* NetworkReachabilityManager.swift in Sources */, + 132E0F619E4338E5D1B27E4C72076B3F /* Notifications.swift in Sources */, + 0C5E11DE24DAA737704B355F5F2F3426 /* ParameterEncoding.swift in Sources */, + 98A929C8E9012AB167672714FFD2113C /* Request.swift in Sources */, + D65C254F5ABF2CB5ECEE50FE8F8E1A80 /* Response.swift in Sources */, + E3747EC31FCCA97D75A81FC700CF7E24 /* ResponseSerialization.swift in Sources */, + 64744C911253C3E01461FAD7C935C8D7 /* Result.swift in Sources */, + F13F2AA7F2E6D95A181CAB99B900D531 /* ServerTrustPolicy.swift in Sources */, + 2C61B040BA6A9A7AE66C4D9BA26D5520 /* SessionDelegate.swift in Sources */, + 931BBB8230A25161D5C37528A8F9FECF /* SessionManager.swift in Sources */, + AFC64B1097F7355FF423D6A73E9C7210 /* TaskDelegate.swift in Sources */, + 933FDA5970AA525D6CB92BFEBA2BAB4A /* Timeline.swift in Sources */, + 53791F5E5F07400F92CFDFC89A432305 /* Validation.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 32B9974868188C4803318E36329C87FE /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 9ED2BB2981896E0A39EFA365503F58CE /* AFError.swift in Sources */, - A9EEEA7477981DEEBC72432DE9990A4B /* Alamofire-dummy.m in Sources */, - F8B3D3092ED0417E8CDF32033F6122F5 /* Alamofire.swift in Sources */, - 61200D01A1855D7920CEF835C8BE00B0 /* DispatchQueue+Alamofire.swift in Sources */, - B65FCF589DA398C3EFE0128064E510EC /* MultipartFormData.swift in Sources */, - A2A6F71B727312BD45CC7A4AAD7B0AB7 /* NetworkReachabilityManager.swift in Sources */, - EFD264FC408EBF3BA2528E70B08DDD94 /* Notifications.swift in Sources */, - BE5C67A07E289FE1F9BE27335B159997 /* ParameterEncoding.swift in Sources */, - 5387216E723A3C68E851CA15573CDD71 /* Request.swift in Sources */, - CB6D60925223897FFA2662667DF83E8A /* Response.swift in Sources */, - F6BECD98B97CBFEBE2C96F0E9E72A6C0 /* ResponseSerialization.swift in Sources */, - 7D8CC01E8C9EFFF9F4D65406CDE0AB66 /* Result.swift in Sources */, - 62F65AD8DC4F0F9610F4B8B4738EC094 /* ServerTrustPolicy.swift in Sources */, - 7B5FE28C7EA4122B0598738E54DBEBD8 /* SessionDelegate.swift in Sources */, - AE1EF48399533730D0066E04B22CA2D6 /* SessionManager.swift in Sources */, - 3626B94094672CB1C9DEA32B9F9502E1 /* TaskDelegate.swift in Sources */, - 10EB23E9ECC4B33E16933BB1EA560B6A /* Timeline.swift in Sources */, - BBEFE2F9CEB73DC7BD97FFA66A0D9D4F /* Validation.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 599911CCEC78C34ADF97D68041012691 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 7DE11B1BFD40161461B75775ACEA53D4 /* _RX.m in Sources */, - 897F13577AAA8382269EC194094D0916 /* _RXDelegateProxy.m in Sources */, - FDACBD92C66F0C5D0F33FD059BCB35FD /* _RXKVOObserver.m in Sources */, - C7E42F03821DCAD169FB9E5C2663C873 /* _RXObjCRuntime.m in Sources */, - EA4470F28E55838D29E625ED1F2EDCA5 /* Bag.swift in Sources */, - B09D2E9A8525D7217DA1233D0D3D3163 /* BehaviorRelay+Driver.swift in Sources */, - 363B6BA64ABF7E326581E60BF57E9E73 /* BehaviorRelay.swift in Sources */, - 0FFB5E639F74E4ADCEA6B4691231D788 /* Binder.swift in Sources */, - 9046C1C876045990B2EA13AAC3595F3A /* ControlEvent+Driver.swift in Sources */, - 774A0ED04EAE9326B4CE4E588A87C32E /* ControlEvent+Signal.swift in Sources */, - E00B7623181A63716524D50FB52AF9EF /* ControlEvent.swift in Sources */, - 16C4E1D2700082128AEFB0A56E339123 /* ControlProperty+Driver.swift in Sources */, - 9B428D0BA1F182F5113B861921972176 /* ControlProperty.swift in Sources */, - 7E7F8834C1CEC6FC91F47FD16545AC6B /* ControlTarget.swift in Sources */, - F9E086C2872C233495E02147B2EB4115 /* DelegateProxy.swift in Sources */, - B2D921758B432E5510A4916377700E9C /* DelegateProxyType.swift in Sources */, - BF4EBAA751C53BA5462FF75957BF1A89 /* Deprecated.swift in Sources */, - 83E17A8F8042821DBFE379B8E721D9D3 /* DeprecationWarner.swift in Sources */, - FCE8C2F9D08C36D48A6423761DEF3072 /* DispatchQueue+Extensions.swift in Sources */, - 6B26270D538BBE32EC979CE071CC218D /* Driver+Subscription.swift in Sources */, - 58D21664187909739FA5E11A5AC1EB04 /* Driver.swift in Sources */, - 54D6EC90DA6336155F9A83D7F630E4EC /* InfiniteSequence.swift in Sources */, - 1306B351B70FAEA38005826E3E0B7F3A /* KVORepresentable+CoreGraphics.swift in Sources */, - A47881E900B27D5C9E6201B96C6F9B40 /* KVORepresentable+Swift.swift in Sources */, - 04C0394D629A610FA6BE32906A9772C5 /* KVORepresentable.swift in Sources */, - 4165379A8A38766F01C8DCA38C1636EF /* Logging.swift in Sources */, - D491E71A28D78BC00368C3F5EFA16EF6 /* NotificationCenter+Rx.swift in Sources */, - C4BF841C95A8E72CC6FF74F77BD92F0C /* NSButton+Rx.swift in Sources */, - 2A1DB4D085BAA9578B77458893659DDC /* NSControl+Rx.swift in Sources */, - 7487316C5EAAC9C271C7B797E99D3D22 /* NSImageView+Rx.swift in Sources */, - 5CC209128C782B168EEBF07741EA406C /* NSLayoutConstraint+Rx.swift in Sources */, - D5AD134F7DB2BF3A1ADEAED307320E0F /* NSObject+Rx+KVORepresentable.swift in Sources */, - D14843F20202C1CD6FC26520F816EC1E /* NSObject+Rx+RawRepresentable.swift in Sources */, - 63BE27B8249C72EC539F4F5367E9DCF5 /* NSObject+Rx.swift in Sources */, - 3B89F320811AC31E66E7B14CDF9046CB /* NSSlider+Rx.swift in Sources */, - C48FFAB1DDCF9FDEE249D169DD3AB317 /* NSTextField+Rx.swift in Sources */, - 2D0D484C1ED547F456B759214405D595 /* NSView+Rx.swift in Sources */, - 89B177904145220E5B578A6EFEE5D5A2 /* Observable+Bind.swift in Sources */, - 305A214BC25347F3EF3994A5DE5C5F25 /* ObservableConvertibleType+Driver.swift in Sources */, - 623781D4B229E4D819BF3997A2F6F954 /* ObservableConvertibleType+SharedSequence.swift in Sources */, - B6D7EC205EBE545C0FFC283C99959B88 /* ObservableConvertibleType+Signal.swift in Sources */, - AEA4F5986FE7926A033E0AF86F931282 /* Platform.Darwin.swift in Sources */, - 4708A1DA6FBEAAC23B4535D8770289E3 /* Platform.Linux.swift in Sources */, - C35E5A2FB5AF7879770EA0DFF62DDB8F /* PriorityQueue.swift in Sources */, - 8949803FBCD4E3F9D862412EC64C1B2A /* PublishRelay+Signal.swift in Sources */, - 1F60D3DB469D63B9ACB07A1C8C322879 /* PublishRelay.swift in Sources */, - 7BB8ED49DD0593318DBAB158D154AEC4 /* Queue.swift in Sources */, - 0A80FDAE7915EE476A38C9CCC68FAC69 /* RecursiveLock.swift in Sources */, - 7B42E31B60FD9B8235C6AE41B32931B2 /* RxCocoa-dummy.m in Sources */, - B2E47D0CDCC58CD8D3193EAD385B3D54 /* RxCocoa.swift in Sources */, - A903683F7163C5A9A7E5C592A1E46803 /* RxCocoaObjCRuntimeError+Extensions.swift in Sources */, - 8240214BBCE95C6957ED5D6DC5D97550 /* RxTarget.swift in Sources */, - 4021AF3A4FAF79BB86F80005B72627BE /* SchedulerType+SharedSequence.swift in Sources */, - E5A9C51D2B5CBE025C396CDEB5900BA2 /* SectionedViewDataSourceType.swift in Sources */, - 92BA6B417A495F5740EE5C3C35CC86A6 /* SharedSequence+Operators+arity.swift in Sources */, - A4DCFC022D92D0731971797EFFEE46DC /* SharedSequence+Operators.swift in Sources */, - C3E79028E8D9C078CCC8F7B5F6B63624 /* SharedSequence.swift in Sources */, - 6A7F23D172685A59F7890947DE5B288A /* Signal+Subscription.swift in Sources */, - 572B991A35A12B7D033F2DC67451FC0B /* Signal.swift in Sources */, - 45E690B4908CA6A5E5903A62C51B4813 /* TextInput.swift in Sources */, - FDF45F406FE3B124880C5ABD4FC68FF5 /* URLSession+Rx.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 81F40976E91E102E115D6BE30CCC18E9 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - D63E514E26A060F7C90A92AE8E9B49F9 /* GCDWebServer-dummy.m in Sources */, - FBF219CBB84DD6F373B818708C889C9D /* GCDWebServer.m in Sources */, - D7524216B4C0994A50624825DFB7CB6B /* GCDWebServerConnection.m in Sources */, - 7B70A32CB535894B889DC0400D0DE4B5 /* GCDWebServerDataRequest.m in Sources */, - C96E54153198E59FF0F8B9F7408523E0 /* GCDWebServerDataResponse.m in Sources */, - E62DD91C60246BD1E4E8A0AF5D7BF0E7 /* GCDWebServerErrorResponse.m in Sources */, - D2B04C075D6CA6AF10C35D8BF7DEF0D3 /* GCDWebServerFileRequest.m in Sources */, - 886E89D85907BBD7A8C8BAA088D23E3D /* GCDWebServerFileResponse.m in Sources */, - F359857602B1D4C91B4AC3D1A2CDFE1B /* GCDWebServerFunctions.m in Sources */, - 286A79B0F2405FD08804042FE30407B1 /* GCDWebServerMultiPartFormRequest.m in Sources */, - 53D63A17DB43C044EFBAA17337600276 /* GCDWebServerRequest.m in Sources */, - 35B3DA850A250223EE5CEB9DB04D1FC4 /* GCDWebServerResponse.m in Sources */, - 48FE45BD7BF4ABB32A024550ED96B4C6 /* GCDWebServerStreamedResponse.m in Sources */, - 0551162B7568A0F3028CF7CE13E9C1C7 /* GCDWebServerURLEncodedFormRequest.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 904AEEA871CD0088ACE9F674EED25700 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - EBEFF85070E25F0A581B7BA1E08138AC /* Pods-ShadowsocksX-NG-dummy.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - AFD9223E8E59CD878E1C56F1407DA2C8 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 1AB0577134E333EA71DCCE332191A260 /* Pods-ShadowsocksX-NGTests-dummy.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - B8B68DF2BFB4B345BDF00E3B4B94B92C /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ADE45FBACDF07286A544DC20605FE624 /* Pods-proxy_conf_helper-dummy.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C85081056E3DF73EFBB147D8F01CDE65 /* Sources */ = { + 52860AF2B250CED8219DBAE5624918DF /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - CB73BD32F4C74B161BA96C32EA4C8206 /* Sources */ = { + 6B35D8D6ED2987D6628CAEB0336B2646 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 4A4408FFA76EAF3E6C82888069FA74BA /* AddRef.swift in Sources */, - F25EB58E105AFB65A62E5B4D670EC3A4 /* Amb.swift in Sources */, - 0C8240D6CEBBEEA043891D3FC5B6583D /* AnonymousDisposable.swift in Sources */, - 7AD32C4A8B13DDEFF05DCF521E89B9E5 /* AnonymousObserver.swift in Sources */, - 80F39A93408F43D4234F807D51686664 /* AnyObserver.swift in Sources */, - C3DE1F5F412BB52D0D46E179A69B0D58 /* AsMaybe.swift in Sources */, - E9BA2F04B8242EBC70AD366755DDE682 /* AsSingle.swift in Sources */, - 6C70E6D376363F78D7BEA000B5A1C309 /* AsyncLock.swift in Sources */, - 113A11F61DC88927204A3B8024EEDEE5 /* AsyncSubject.swift in Sources */, - D486060C6A0F9300A1680DC208841BE8 /* Bag+Rx.swift in Sources */, - C05242C7AD45BFA7D14EEA269E8F77F8 /* Bag.swift in Sources */, - 5E04C336772C75B4BD3DE0FDC9D7F082 /* BehaviorSubject.swift in Sources */, - 5AB4432DDFDFFBAF30B04131BEA65884 /* BinaryDisposable.swift in Sources */, - 6303F577E7E204EDD3290341645A3C93 /* BooleanDisposable.swift in Sources */, - 17BD24642744FE2260FA6811B165388B /* Buffer.swift in Sources */, - 8635269F248F424E4EECB84EAA5025FA /* Cancelable.swift in Sources */, - 8F6CC2B52C9EDF0C6F87877E25AB523E /* Catch.swift in Sources */, - AF9067B9CDA7BD3E92AB740E2B4D4313 /* CombineLatest+arity.swift in Sources */, - D047C60851BFC9D2C493A36A4EF177E6 /* CombineLatest+Collection.swift in Sources */, - E0FF2B53C79DE29F557295CD66849772 /* CombineLatest.swift in Sources */, - A8DBD1857EC662A08D54BBA95E42E2D5 /* Completable+AndThen.swift in Sources */, - 4EA7780B43C03F302BC16E613600AEE6 /* Completable.swift in Sources */, - F765730BADD93DCC345E2DE56E6C62CA /* CompositeDisposable.swift in Sources */, - 6252C2B00AFB3FC879D405191C4F8A4C /* Concat.swift in Sources */, - 6A64206CD6836AC8FEF84C6156CD8BEA /* ConcurrentDispatchQueueScheduler.swift in Sources */, - 71E974A4435358B0B1B371FFA5EF58C7 /* ConcurrentMainScheduler.swift in Sources */, - 42B758DEB73A71CFEE6AB0091A4D51FA /* ConnectableObservableType.swift in Sources */, - F03E764DDC08BFFE403CDE649961A182 /* Create.swift in Sources */, - B6B64BA6DF509EBBCDDA2E3D0FFD15BF /* CurrentThreadScheduler.swift in Sources */, - 91C0EF4EEBFE321C2F441FA4F4C11B10 /* Debounce.swift in Sources */, - F4E2663E1F8C4822B9F1CB7DF2D20D49 /* Debug.swift in Sources */, - D9C652378242BAE39E7190AB1479615D /* DefaultIfEmpty.swift in Sources */, - 62B5F416D74F8147F7DF9151B9CB0A96 /* Deferred.swift in Sources */, - B9C213FE3345C49943F292D94145CBC2 /* Delay.swift in Sources */, - 09A6B67CF6F6BDAF375261535340DD3A /* DelaySubscription.swift in Sources */, - 06E53ABF634928697CF55B2D6DD415F4 /* Dematerialize.swift in Sources */, - FB6F90016D5931C84A6C6246AA8FC589 /* Deprecated.swift in Sources */, - 7B4C3C45E92DB455C98680E229867CE9 /* DeprecationWarner.swift in Sources */, - B5C5B8AD50BA9EF13CF2FCC39D233BEA /* DispatchQueue+Extensions.swift in Sources */, - 4B011F87C4CD25363F21DEF2C9581B25 /* DispatchQueueConfiguration.swift in Sources */, - 317DE7777E93EDA37B798E4778E8AF24 /* Disposable.swift in Sources */, - 0B24DF0C1B8DFEC4738DE16AE0467553 /* Disposables.swift in Sources */, - 0FFA1CFFE797C9500D68689C5D9AE025 /* DisposeBag.swift in Sources */, - 277E1C593CBC2FC2935E8377ADCB4F9D /* DisposeBase.swift in Sources */, - 6135396E25194755B2FCFC03C62263B3 /* DistinctUntilChanged.swift in Sources */, - B64418D3CA2AEEF18D0EC5AD9331418F /* Do.swift in Sources */, - 88FBCBFFE4425441DC4AED87182340F3 /* ElementAt.swift in Sources */, - 820C8506D425B8392259E83BAD962B3E /* Empty.swift in Sources */, - BF9A718095FF8B6D50B86CE5E49D2806 /* Enumerated.swift in Sources */, - 420D4C0DA53B332CDDAA294AE3E7B740 /* Error.swift in Sources */, - 1FC45BAE1645E857B19EBB05E0CBA244 /* Errors.swift in Sources */, - 203CA8CA9FC10517AD691B4CD2D35B40 /* Event.swift in Sources */, - 46BF838ED5099DE5FF962D68D79D2349 /* Filter.swift in Sources */, - 2DC07EB6B16990A067D1D053382C1573 /* First.swift in Sources */, - 2184836F18B35AAF94E8BE8B40206F15 /* Generate.swift in Sources */, - 027E63B83CAF0C92F57B9AB56674EB04 /* GroupBy.swift in Sources */, - 490B8F69828862C7939BE0F47D6DB89C /* GroupedObservable.swift in Sources */, - 05EFEC2BDEDBF30BF56C3F2DB0AE7A56 /* HistoricalScheduler.swift in Sources */, - 984CFED13106FED5980C072A6BE6A8ED /* HistoricalSchedulerTimeConverter.swift in Sources */, - E4C1BCACA652B5F16936BD89A8C8F298 /* ImmediateSchedulerType.swift in Sources */, - 775A47C2CC9C252F6F612BC52258D549 /* InfiniteSequence.swift in Sources */, - CE3433577AC6A3A699828941BED494AD /* InvocableScheduledItem.swift in Sources */, - 1D51BDA7275CF818A0072751DE5EF399 /* InvocableType.swift in Sources */, - A984AE396834F1EF8C1063A1B658151C /* Just.swift in Sources */, - 37F45802E36DFB8D332DE998347FC8EB /* Lock.swift in Sources */, - B8B5444B935D4EB27FB9043B91B7051E /* LockOwnerType.swift in Sources */, - E25A92CC625C9F817B6E30D8BA3FA362 /* MainScheduler.swift in Sources */, - FF48776622396EC0C1D7776DF09781EE /* Map.swift in Sources */, - 3C507AB95BF1F4AC2F692FE5CADA9CB2 /* Materialize.swift in Sources */, - CE72C87BA2E459F034007E66425F212A /* Maybe.swift in Sources */, - 6854825AC3848196270B428A36FBB043 /* Merge.swift in Sources */, - 7DCF1C20B4759A0D61B023AAEE75BAA1 /* Multicast.swift in Sources */, - AE4469ABED69AF5CCDA9F79F39CEC4D9 /* Never.swift in Sources */, - FDD7A9BACD4F983FAF4443179C5DD53E /* NopDisposable.swift in Sources */, - B253253B456FF86F30E0295D61253313 /* Observable.swift in Sources */, - 350B80BF6F26209C3BD76F4FD3E93E3F /* ObservableConvertibleType.swift in Sources */, - DEB685D908D2D7D908A292A761456A8F /* ObservableType+Extensions.swift in Sources */, - 612281D2096564D60D241186DCAE5706 /* ObservableType+PrimitiveSequence.swift in Sources */, - B7645B89B4EA9E40E73FE8453A104EEB /* ObservableType.swift in Sources */, - 7F7AD0AEE5FEC490EAC6DA63559A6E3C /* ObserveOn.swift in Sources */, - 7F9313D68927235417B8703B0B4FC5E0 /* ObserverBase.swift in Sources */, - D4A99917EBD151044BFA8E751E1250E7 /* ObserverType.swift in Sources */, - 7866C369C49972E30DD646C16447C682 /* OperationQueueScheduler.swift in Sources */, - 32F59423331F13E53E93207A23CAB81A /* Optional.swift in Sources */, - 83311F362776862EBDE3EA84F204F11D /* Platform.Darwin.swift in Sources */, - 141D65E8D754B3CD6053D152E60EBCC7 /* Platform.Linux.swift in Sources */, - FC370E0DDDC82C67228A592097A39548 /* PrimitiveSequence+Zip+arity.swift in Sources */, - 2BB6D185FB842C820E5EAC08FDB3A19F /* PrimitiveSequence.swift in Sources */, - 12498A71D7F9769F2686E137BEE742A4 /* PriorityQueue.swift in Sources */, - 720E93B2FE64C66DC3CFA6088DD40A2E /* Producer.swift in Sources */, - BA323A31F89C4B1236C98E5E097BE573 /* PublishSubject.swift in Sources */, - 4540E2CEAA8B2C8A52C60707F64C9952 /* Queue.swift in Sources */, - 8738EB95B710731B66BECC5468B235C1 /* Range.swift in Sources */, - A305AF2A15236E49B1F690DB9E8DEDB3 /* Reactive.swift in Sources */, - B9ABFFC64C4C6D69E54B241E66628A05 /* RecursiveLock.swift in Sources */, - 2942BED5614FBEF4C6D07C7B9C746F1F /* RecursiveScheduler.swift in Sources */, - AC7D8A725626167C483F03B8BDBACF4E /* Reduce.swift in Sources */, - A27AE5C98C89D359EF8B6E8A6A0C805E /* RefCountDisposable.swift in Sources */, - FCD2C753E6D8C65EBDC798994D1CC902 /* Repeat.swift in Sources */, - 87DF52BA9D6A9A8A28DA38395FD6E52A /* ReplaySubject.swift in Sources */, - 67D8ED58AD2C8315F19FB3F7DD968893 /* RetryWhen.swift in Sources */, - F3C91131A98744C6A84091DEBE562A83 /* Rx.swift in Sources */, - DDE3C9634B3BA4568D8BD96898046373 /* RxMutableBox.swift in Sources */, - A141E74893719F61806F5D6F6BF78A5C /* RxSwift-dummy.m in Sources */, - 6C97654D360B43FE6AF6582D4E27FB55 /* Sample.swift in Sources */, - 0616475CEB33DAF817FA5A06022D5D7B /* Scan.swift in Sources */, - F00844DA1200A12EE14C14E23E2BC859 /* ScheduledDisposable.swift in Sources */, - 80C368BB52E090970B402E0BA9D8B088 /* ScheduledItem.swift in Sources */, - 891AF67A55755172995A43569453491A /* ScheduledItemType.swift in Sources */, - C5ACAD7575831DEE4FF98E4372CF0BEF /* SchedulerServices+Emulation.swift in Sources */, - 41FD1695AFDC553E66D35A26AB0E14E0 /* SchedulerType.swift in Sources */, - 4E7600A3BA0F81B1973B887E025DF056 /* Sequence.swift in Sources */, - AC297FE8A2A32B699310FD27F624C8C9 /* SerialDispatchQueueScheduler.swift in Sources */, - 640BB2DA5629DF979311584E6F4AC09B /* SerialDisposable.swift in Sources */, - 7C74AC76B4D748648227C86121B08243 /* ShareReplayScope.swift in Sources */, - 2356019614669E69E722D77C43A90A07 /* Single.swift in Sources */, - 31DE016EE6C90B9498B1F08BC34CDC9B /* SingleAssignmentDisposable.swift in Sources */, - DD8CC605B5F5ADD0C2AE422ACCC55F1C /* SingleAsync.swift in Sources */, - C6B65F4F3D935F320EB1186D15FCD725 /* Sink.swift in Sources */, - F333C550B300576B6D1872CEBF2DCA56 /* Skip.swift in Sources */, - 7D9AEF684D4E202E7D4D08DB26362A63 /* SkipUntil.swift in Sources */, - 33A3CD60ECC4477B864CD8463A4179C0 /* SkipWhile.swift in Sources */, - 0C68821E6FFBD9B3D36F863B392E9D1E /* StartWith.swift in Sources */, - A66B49B60C9D0471B8E41130A01C1807 /* String+Rx.swift in Sources */, - A03ADA7F9A7D390E62A9367B65B29D95 /* SubjectType.swift in Sources */, - 010E5C9355217455596792A83A1A86AD /* SubscribeOn.swift in Sources */, - D80D125190DBE2395B2038A0E58CE8B1 /* SubscriptionDisposable.swift in Sources */, - 532068C53B54FD7232B59B5DB2D9EF77 /* SwiftSupport.swift in Sources */, - B5B98C960E1620AF04F5EB54A6F94060 /* Switch.swift in Sources */, - 67257E0D79F725528DFE2B3DCC0293D5 /* SwitchIfEmpty.swift in Sources */, - 3D22B1CDCC3977BC8CF2B71D3645386B /* SynchronizedDisposeType.swift in Sources */, - 80D8BB858F559DD7483D2488BF11E820 /* SynchronizedOnType.swift in Sources */, - 0CD517FAACCA346523AC5681E5451D4A /* SynchronizedUnsubscribeType.swift in Sources */, - 2F9F38633F6ED088810B32CD54529D84 /* TailRecursiveSink.swift in Sources */, - 172294F530504F23FBD67243FC416996 /* Take.swift in Sources */, - 70D7281997BAECEADCC60D9DEDCE4FC3 /* TakeLast.swift in Sources */, - A7873C6DF1BF7D59F9412A098EFE1D7B /* TakeUntil.swift in Sources */, - 4101FFED5C58EEB5FFF2F58ACDE18AD9 /* TakeWhile.swift in Sources */, - 500E908BCC57EF5E1F7F918B9876CE23 /* Throttle.swift in Sources */, - DD0FAF2DB130AB4B3459135864A9A8AC /* Timeout.swift in Sources */, - 0E5DDCC45FFD8714E2DCB955C83D4130 /* Timer.swift in Sources */, - 1C68805E7E2B3594CB435A185A6C7A6B /* ToArray.swift in Sources */, - DE92C75444AC6056D4B04914CCE93EF9 /* Using.swift in Sources */, - 23A86C508AE8C5C1615208352A05ABC4 /* VirtualTimeConverterType.swift in Sources */, - 73D927F9EA3335CEB0C45239F31A9A79 /* VirtualTimeScheduler.swift in Sources */, - E1D2EC0D3A8E1454CA8723F3DB19BEDD /* Window.swift in Sources */, - 3A9F650F4A2FC5D727FF281AAC625171 /* WithLatestFrom.swift in Sources */, - D698FD4BE7CDC647AF0875009AEF8F75 /* Zip+arity.swift in Sources */, - F233490E2120C2D6637CB3F6F8737F5A /* Zip+Collection.swift in Sources */, - 8ACEEFF8AA92153C984BCD3E6FEEFDD1 /* Zip.swift in Sources */, + C26CB165F100DBF624F4906EB2EBDA7F /* Pods-ShadowsocksX-NG-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A169CD366B0A64342FFF6E09CEC61622 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1C11628696BD0C889E0A4FC6CA4B6922 /* GCDWebServer-dummy.m in Sources */, + E9B95D42F4510C79E2D8A8CFA251CD49 /* GCDWebServer.m in Sources */, + D260B45339932BAA56D7024048E2D155 /* GCDWebServerConnection.m in Sources */, + CD782D1189ADBAA42D087B87D53838A0 /* GCDWebServerDataRequest.m in Sources */, + 3BBEC4A24B60E2276CBC26E555F64F41 /* GCDWebServerDataResponse.m in Sources */, + D5E020763D69E9336EB398ACD48FEBB0 /* GCDWebServerErrorResponse.m in Sources */, + 4940AB8BC3936DEBDC02BF49FE5E97A1 /* GCDWebServerFileRequest.m in Sources */, + 99ABB4C207FE146C78313E8A9A581FD6 /* GCDWebServerFileResponse.m in Sources */, + 36DED9F6B7737F022FB0B01ECE2BB88E /* GCDWebServerFunctions.m in Sources */, + 221F057199246D7709DD91C950746B7B /* GCDWebServerMultiPartFormRequest.m in Sources */, + BF1EB892BE3CF9CDFA0DAC7F9392435C /* GCDWebServerRequest.m in Sources */, + 3685E20BBC5AFEA3BC80FE12732AB269 /* GCDWebServerResponse.m in Sources */, + F7DAD2EF3F86BC40F7D4F2EE49362418 /* GCDWebServerStreamedResponse.m in Sources */, + 5989329B01C0737EFDB490C5A771FDC2 /* GCDWebServerURLEncodedFormRequest.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A4C51FC7C9B72BB2A91F942C54465CD1 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C22F0B2EA77E200D482C75D9190A431E /* AddRef.swift in Sources */, + D75FE9731E218DBF907D405CAB505E63 /* Amb.swift in Sources */, + 5F84A80201CD5399840E697218154F7B /* AnonymousDisposable.swift in Sources */, + 4704E9B042CD96198A37C0DEAA90F13D /* AnonymousObserver.swift in Sources */, + 66F179A156E9DD69FE7A545D9FB16566 /* AnyObserver.swift in Sources */, + 3CF9212B8055E9F4296325D5968B29C2 /* AsMaybe.swift in Sources */, + 201ED81D2166F3968ECB6E48DE0607C0 /* AsSingle.swift in Sources */, + EB7391B7EDDA5DE95FFFB6B832227540 /* AsyncLock.swift in Sources */, + 6AEE1E5DF21EEC4D1D719D16A42485A3 /* AsyncSubject.swift in Sources */, + BCE9CC03270FD3712F145791D8ED54BF /* Bag+Rx.swift in Sources */, + 41AA88C160103369F8C1227E48ED5582 /* Bag.swift in Sources */, + FF4803398CBF968AFC7FAE55F747D855 /* BehaviorSubject.swift in Sources */, + 7B6523D7FA42A0460FB4CE8D13F5FBFF /* BinaryDisposable.swift in Sources */, + 9CDFBE5ADC30DD07735EE7DBA9FD8983 /* BooleanDisposable.swift in Sources */, + 845592AD96CB8483DC386AEDF2D3B48F /* Buffer.swift in Sources */, + 318FD4A3D5E0CB562CDE38499BB5C041 /* Cancelable.swift in Sources */, + 301B5027AE11A8E073E40B5F51712AF6 /* Catch.swift in Sources */, + E48A4104888DE8E471F9634CC8F44907 /* CombineLatest+arity.swift in Sources */, + F331A147FAAB420AABC7C14891842DF2 /* CombineLatest+Collection.swift in Sources */, + 63343FFD356B9EDA573A9F4F14D01D03 /* CombineLatest.swift in Sources */, + 31D2FAFB0B86937EE68B2CCD8E4E7E5F /* Completable+AndThen.swift in Sources */, + 3DBAFD54724CDCAD09DFE55BC7D4DDF3 /* Completable.swift in Sources */, + 70BE0E3BF717507FE4DD84F100179435 /* CompositeDisposable.swift in Sources */, + 6812B06F1732B2AB72E539A45F778D26 /* Concat.swift in Sources */, + 6B43ED637D62A4C79BAF2EF7720C4747 /* ConcurrentDispatchQueueScheduler.swift in Sources */, + C6DAF6C0D6F27D1DE787EBB142429D83 /* ConcurrentMainScheduler.swift in Sources */, + BA86B1FF01D04619DDB2105D122BA3DF /* ConnectableObservableType.swift in Sources */, + 01CE6BD23BB5D82B5F6488A03ABE628A /* Create.swift in Sources */, + 276CF2E53E542CAA090F21247E6746CA /* CurrentThreadScheduler.swift in Sources */, + 023E25137FE2A7B0742E59BBC4CBA61F /* Debounce.swift in Sources */, + 63108241AFEC143A7CE5A55A15B88C5C /* Debug.swift in Sources */, + 2F557426C66280E6EB6E54710FFFCAD7 /* DefaultIfEmpty.swift in Sources */, + D90CE923E9B7F51F51E0B746E95D2E9A /* Deferred.swift in Sources */, + FD8D9D70346CADDCA4A7E1B65B0F899A /* Delay.swift in Sources */, + A17D2C5ADA416A08995012AF143D8C51 /* DelaySubscription.swift in Sources */, + B2473477B3CB132E8500A6BADA89A604 /* Dematerialize.swift in Sources */, + DD820720F7D1FB87B6E84F1ECDEF021D /* Deprecated.swift in Sources */, + A19FE69FE0C3137353868C40FD53A184 /* DeprecationWarner.swift in Sources */, + 03D2C11CCA768056C2F9F003E29E201E /* DispatchQueue+Extensions.swift in Sources */, + 385948C0C4BD131D4903844657737769 /* DispatchQueueConfiguration.swift in Sources */, + FA1E98EE32887265C3C81F46454254D6 /* Disposable.swift in Sources */, + 80E012C2A2015806F8528178FB9DF4D3 /* Disposables.swift in Sources */, + 389C439D647C134D0FEF85AC777C6BB0 /* DisposeBag.swift in Sources */, + AF3A48D7C341FF115262FC6578A0A379 /* DisposeBase.swift in Sources */, + 28D2240E242A5453B94AF56E0F834402 /* DistinctUntilChanged.swift in Sources */, + 2E725CDD67785178D7A6E0E04325CD75 /* Do.swift in Sources */, + 6954B8273B86139FAEB8E0F2C8E6116E /* ElementAt.swift in Sources */, + 05A735A66C7A8B32DEED40D3B8C17C76 /* Empty.swift in Sources */, + 7EA7AB5B1F0590AF84AFB4C681259A83 /* Enumerated.swift in Sources */, + BF73874654C35AD28C8C59725C37B3E4 /* Error.swift in Sources */, + C9FE3365FD7CF7C8357AB027CEF051FC /* Errors.swift in Sources */, + 72C37916698D08B9EEA007C62556129B /* Event.swift in Sources */, + CDE4E8E448307F279A4A518F69967BA8 /* Filter.swift in Sources */, + 084902A36379E77E2913680DE9D104E3 /* First.swift in Sources */, + 71E3C0D80BB9722F607C0AC2AC77AD6D /* Generate.swift in Sources */, + 7C4A42A6326D52FAA6FAC33623BF5FF9 /* GroupBy.swift in Sources */, + A0D651CCF060DE95FB3AD92090C9823C /* GroupedObservable.swift in Sources */, + 9E2F30F029D823F821E92030B1D3B3AB /* HistoricalScheduler.swift in Sources */, + 9CE546B41DF541383848AA3DAF0A76D6 /* HistoricalSchedulerTimeConverter.swift in Sources */, + 95EB285925E08BB131FF22D55C56E2FA /* ImmediateSchedulerType.swift in Sources */, + 8951CBBB313C8C794FA1841F34202AD4 /* InfiniteSequence.swift in Sources */, + 639B436DAD36B619E19CD96EB6BEF252 /* InvocableScheduledItem.swift in Sources */, + 4CD392944AA69406F1AA9D7050AE6395 /* InvocableType.swift in Sources */, + A6D570655609D81EF8C8B846BFCCF3B2 /* Just.swift in Sources */, + A0EEE15B01577DEF666E80843804F220 /* Lock.swift in Sources */, + BCF2F7D297EBB25A1F7E56FF0F74198B /* LockOwnerType.swift in Sources */, + 6F03B4DEB6E7911B4FE78F0EFAB05DA3 /* MainScheduler.swift in Sources */, + 267D280C61427E398672B58BE896DB9E /* Map.swift in Sources */, + D5D3589FC11DDE2B3FA8385212E7CF00 /* Materialize.swift in Sources */, + D6CAD7BA87459D229C6C8ECC10AFFDD4 /* Maybe.swift in Sources */, + 3AAF3373D4EE3C69461F2C356D0073E5 /* Merge.swift in Sources */, + D60D01E508521F9CCCCB06F88C09F2B8 /* Multicast.swift in Sources */, + F42673501FB54ED9ECA67F6B7543B4A4 /* Never.swift in Sources */, + A670B21154F12D8B6FA7D1028A7540DA /* NopDisposable.swift in Sources */, + 0E2E9D644BE88DB7FA74E460DA0686DD /* Observable.swift in Sources */, + 027FF0C2F2E777CF51274107C4F63F1F /* ObservableConvertibleType.swift in Sources */, + 7F07E009A22327E25AB27C0F981F8788 /* ObservableType+Extensions.swift in Sources */, + CEA20B358A638C758796672D2B3F79A1 /* ObservableType+PrimitiveSequence.swift in Sources */, + 053340CEED7468CCDEC4A6370135D8EE /* ObservableType.swift in Sources */, + 2C77F4707DB0E0D53780F8F8947D6620 /* ObserveOn.swift in Sources */, + C33109A82F2CA01B76C245C711BC46D8 /* ObserverBase.swift in Sources */, + F5933F324B497E7CB1973438CA903A4D /* ObserverType.swift in Sources */, + 241B04A01368320551B43056878256E5 /* OperationQueueScheduler.swift in Sources */, + 86BEB5F3D2E0A50F79D0EDD7F9C73C8D /* Optional.swift in Sources */, + 3122DE9B6C1EE8C88F53AF3227A7EEF8 /* Platform.Darwin.swift in Sources */, + 6F75BDF36BD15F6889C0C1F8F53C65F3 /* Platform.Linux.swift in Sources */, + 91A9378F365989E46E76598435A650EA /* PrimitiveSequence+Zip+arity.swift in Sources */, + E5A645BBD1085E54FD24C7D22910871A /* PrimitiveSequence.swift in Sources */, + 1CE5FF63F7ACED251179D16ABC92775D /* PriorityQueue.swift in Sources */, + 5C99A371F14E044D11D3532C3920597B /* Producer.swift in Sources */, + E8C1AAAB8792FB705C11A5D0588A8719 /* PublishSubject.swift in Sources */, + ED71F853D231BEB7D4875BBB62FA0DA8 /* Queue.swift in Sources */, + B533E4FA12CB73346704AC7F8044EB6E /* Range.swift in Sources */, + FE242D48F9F0D8E9E9C8F8F08044F2B7 /* Reactive.swift in Sources */, + 6CA90C27C8BC46F957F5DFA16DE1F6DF /* RecursiveLock.swift in Sources */, + E92B804E3A9D9AA570AACE5602D8F91F /* RecursiveScheduler.swift in Sources */, + 5A9C8B1937570C10A566CEC226A37455 /* Reduce.swift in Sources */, + 98B1F09F036284B2894F3DDA0186120F /* RefCountDisposable.swift in Sources */, + D626490EB656C5A3185DDE11F40CB19F /* Repeat.swift in Sources */, + B1205EDD5125DA3CABC1BEA0CC72887C /* ReplaySubject.swift in Sources */, + 01EE3DA00A9902B8F95E8F63FD9B8B58 /* RetryWhen.swift in Sources */, + D8B22B99DE2C2888FE7CE25BB48E0E9A /* Rx.swift in Sources */, + E6C96618F2E5765583BEB3CCD22A14FC /* RxMutableBox.swift in Sources */, + 35E4F87BB80C4585C5F18B851C373A41 /* RxSwift-dummy.m in Sources */, + 6569E155FC66240D716FE118A0A38D23 /* Sample.swift in Sources */, + DA51957DA41CBBCF0A60227FEF092BD2 /* Scan.swift in Sources */, + 16596C83B6DBE022B4470FE43C0AC722 /* ScheduledDisposable.swift in Sources */, + 3F2178F39696663BD474D0A7FF74DA5E /* ScheduledItem.swift in Sources */, + E3DB60489438B9004ADC99A579CEDFB9 /* ScheduledItemType.swift in Sources */, + 888C585A2F8726322E0BC00DC09E72B5 /* SchedulerServices+Emulation.swift in Sources */, + 0E4BC1DF7EEC497DDDE361BF5AD6F880 /* SchedulerType.swift in Sources */, + 7BE30C183CA9A016F2FB88EE3084F951 /* Sequence.swift in Sources */, + 7DED517CC9069DD03366F81383143915 /* SerialDispatchQueueScheduler.swift in Sources */, + F7DF537750D167A28BDFAF3491E6DD92 /* SerialDisposable.swift in Sources */, + FB6C7066B1C54D684A6AD303E5EDCB05 /* ShareReplayScope.swift in Sources */, + C29B9EF856D077ED109CD7C9FA0B1CBF /* Single.swift in Sources */, + 2CAD7AAC3469DC34B3228B6CDFCD775C /* SingleAssignmentDisposable.swift in Sources */, + 56AF76478DFF0A844D5F4FFFB6CC5B98 /* SingleAsync.swift in Sources */, + 7CB442933B3C96F58AE9A8D5866A5DD6 /* Sink.swift in Sources */, + D60395623AAC509D52C2C6E84A4700C7 /* Skip.swift in Sources */, + E5D04C0E217F198AEB9F6BDAC210E291 /* SkipUntil.swift in Sources */, + 35E691AD4674B4E9B64B837F845F1426 /* SkipWhile.swift in Sources */, + B77D5473CAC0536BC81029CBC771A8F0 /* StartWith.swift in Sources */, + 35185C5FB8524278300EB1CB6F1D2894 /* String+Rx.swift in Sources */, + 9A52A556A72DB9F7BEB16B9818ED1236 /* SubjectType.swift in Sources */, + 5AFF64CC5D0948C435900098C1F1AF57 /* SubscribeOn.swift in Sources */, + 309F2CA8FA508077A891DE3B2C8D6CA1 /* SubscriptionDisposable.swift in Sources */, + 0C20EB076556CC423E8145F5FE0B914C /* SwiftSupport.swift in Sources */, + 3D917B5B0C0A18BCB387B7C67176A336 /* Switch.swift in Sources */, + 76981DA1EDEE940519860BDFD53F8745 /* SwitchIfEmpty.swift in Sources */, + 54CCD54B8966A69C6B123D67F423D127 /* SynchronizedDisposeType.swift in Sources */, + EEC333CECC6D0FEB54E762724D0A005A /* SynchronizedOnType.swift in Sources */, + E8230128BCE280559AB98B0D3F2B0C47 /* SynchronizedUnsubscribeType.swift in Sources */, + CBC42E74E1BBB0032DFF65BE9E847C9B /* TailRecursiveSink.swift in Sources */, + 0AE51C9D714A16E946FE71BFC7500269 /* Take.swift in Sources */, + 9B185ED18916DCD9071E9F9916A9CCB2 /* TakeLast.swift in Sources */, + A74F2320298D8948EC5558CC7D477B4B /* TakeUntil.swift in Sources */, + 31D26B88A9D8B32DC06D10BF1A58C186 /* TakeWhile.swift in Sources */, + D22D589EF8F50A79EEBA0DC2E4B2477A /* Throttle.swift in Sources */, + E4E5A913FDD01F55D97369CA4B8C1DF0 /* Timeout.swift in Sources */, + BBC49B5F97840EBF1C18C5E28E67A29F /* Timer.swift in Sources */, + 444F1B5C26B7B4F46158B9C54AB3D29E /* ToArray.swift in Sources */, + 6A37140A2F79D99F1C39014CE9982C84 /* Using.swift in Sources */, + CA10B3564675FD5894121E0467FBEA29 /* VirtualTimeConverterType.swift in Sources */, + A4D0E970AC99503381692223C32575AB /* VirtualTimeScheduler.swift in Sources */, + 5559786A45440341BBF5FA2C59490F94 /* Window.swift in Sources */, + 95E4DC9EC6C3F40F6B1CE36C155930A7 /* WithLatestFrom.swift in Sources */, + 4E9A89CFDE8BAB82ECCF1C7F9F097EAC /* Zip+arity.swift in Sources */, + 4E1DA2C0E69E355160AB4FBD45D58B49 /* Zip+Collection.swift in Sources */, + EC2052D689C4D4040C17CDF0CF0ADBD4 /* Zip.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + CC0A6861257CB532973FF86E2158080D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 4B61D6280D8104C8C94D8A2E38932FD8 /* MASDictionaryTransformer.m in Sources */, + 2E479B49C8875661D4FF5339810F276B /* MASHotKey.m in Sources */, + B15ED57BB6169227262E67AA3ECFA244 /* MASLocalization.m in Sources */, + 12FD49A8563BBEF869A9771BC62728E9 /* MASShortcut-dummy.m in Sources */, + AA7BDC661C446D3395F51983870E88DD /* MASShortcut.m in Sources */, + 3B8D861404B9396C0D3A8F330D74EE7B /* MASShortcutBinder.m in Sources */, + 9AE7E3531DC26BFE93CC0D52FF123B7D /* MASShortcutMonitor.m in Sources */, + 027392317FE52FB220E6E444A24737EB /* MASShortcutValidator.m in Sources */, + 681004138A52D29E6E30A47B5892F239 /* MASShortcutView+Bindings.m in Sources */, + 7BA10A26B371B9647D6084EE42793ED9 /* MASShortcutView.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DFF2B5F26ABB5074146BB93EA5DBE095 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 3E2FF4CBA1E2C3A36060CB61A25F80F7 /* BRLOptionParser-dummy.m in Sources */, + EDD85DAC7DC88B01D5A2C20969416C9B /* BRLOptionParser.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + EE68890D9822CF6FA54B7B7954CBBB99 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 60FD8F0AF2C5FB1A2DB03113AB3F9A6F /* Pods-proxy_conf_helper-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + F8B0EA0009838166B85F3E1499E8E0B4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + F29953E3ED745AECAF0820B614ADDDD3 /* Pods-ShadowsocksX-NGTests-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 333E7BAB0E0DB09E26646BD8E93FFDCE /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = Alamofire; - target = 88E9EC28B8B46C3631E6B242B50F4442 /* Alamofire */; - targetProxy = 3F9C089DC9458E35616C2D072F1349CE /* PBXContainerItemProxy */; - }; - 3AB65F40E1512A92325180D6E33602FE /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RxSwift; - target = 9759FFB1455B05FE96A5765890590110 /* RxSwift */; - targetProxy = 3C966E4001966C610E2B35B4896D0EA0 /* PBXContainerItemProxy */; - }; - 3E1EF8FCF446C8D86D778D5D1ABFA9CD /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = GCDWebServer; - target = 5B8B0ED1046111D92895FC95F12DBC10 /* GCDWebServer */; - targetProxy = 73B1C6F65534B8F327FD1E3C4EFB4D79 /* PBXContainerItemProxy */; - }; - 6D8935AB78317EC6C1ABBB09EA86C5FB /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "MASShortcut-MASShortcut"; - target = D6E5ED8DAF7CA937C8F68F342C48B26E /* MASShortcut-MASShortcut */; - targetProxy = A7708F6CFFF6E4FD2E6FDB5109CDF5E7 /* PBXContainerItemProxy */; - }; - 7C03549F53DE7DA200E36C0642A79977 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = BRLOptionParser; - target = 3CB2B8006B2B1ACAF9ADCA1DC82E2290 /* BRLOptionParser */; - targetProxy = FDE579D9762D0D9F86EDB1DE6EADE62F /* PBXContainerItemProxy */; - }; - 895CE87A9D309D30CEFBF51BA07CDBEA /* PBXTargetDependency */ = { + 39D6AB4AF7BACA4C0F770EA14F554517 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = MASShortcut; - target = 00C94ED0B49A44FBF0C4E2F6C875CFFC /* MASShortcut */; - targetProxy = 7BF76F7FBFF9CC917BC74620BE20739E /* PBXContainerItemProxy */; + target = 2B2B481A164695722839BD581D442457 /* MASShortcut */; + targetProxy = EA1FE8E3D449D591462D9C6EE190AF7D /* PBXContainerItemProxy */; }; - C65B838B24FDE9D70E5E870D8780B5EB /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RxCocoa; - target = 50DA2BB85DEBA27DDBB9E2D53E8E2A1A /* RxCocoa */; - targetProxy = 5A421F3FED66CE2F7D5D41431FD05426 /* PBXContainerItemProxy */; - }; - D9D65FB37163F6C00197A5C036F871E6 /* PBXTargetDependency */ = { + 41B55A0E7F732663E471B4A675F9C6F2 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = RxSwift; - target = 9759FFB1455B05FE96A5765890590110 /* RxSwift */; - targetProxy = 9AAE001A73362881B10E1F0C00EDCC5C /* PBXContainerItemProxy */; + target = EA9EA43B3B503823EE36C60D9C8A865F /* RxSwift */; + targetProxy = 3D3DAA0D09FD35193B2FE8AE074A7797 /* PBXContainerItemProxy */; + }; + 46E99C1329CF17A8F03B941D9AC8AD8F /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RxCocoa; + target = 7AD0C6DCDC9CEC8A3C7C10C7FEE07BE6 /* RxCocoa */; + targetProxy = BBE89C54AB7DC8916BC97CC5A0E3118D /* PBXContainerItemProxy */; + }; + 4A7AAAD9A6547DFC55534D9C39318A02 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = GCDWebServer; + target = AD904F32069787EFB2DFFE05EB82F5BD /* GCDWebServer */; + targetProxy = 820F9F5511703CAF38B31090F0E3ADB4 /* PBXContainerItemProxy */; + }; + 5A80703760D05602640CE0D9867EAB10 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = BRLOptionParser; + target = 00F92A6698B766C4479D7B608F28D680 /* BRLOptionParser */; + targetProxy = D3B5B0706F67D4DB8B0474CF78BA5EA7 /* PBXContainerItemProxy */; + }; + 654DB0D5AC01F5EF1152E085ECE374A4 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Alamofire; + target = EAAA1AD3A8A1B59AB91319EE40752C6D /* Alamofire */; + targetProxy = 3B221F01E98A161177B97110EDD71D8E /* PBXContainerItemProxy */; + }; + 785DF10A7F6D077AAC7E454D1492F078 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "MASShortcut-MASShortcut"; + target = 73C37A16ECCEAD845651DCDEE95675BE /* MASShortcut-MASShortcut */; + targetProxy = A9C471B1560788DF79C58AEDB5C43A59 /* PBXContainerItemProxy */; + }; + BE993D535080B4168378C516D8CB2A03 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Pods-ShadowsocksX-NG"; + target = E9FDECF69808DB0491D4B4C08CF920DC /* Pods-ShadowsocksX-NG */; + targetProxy = 94ED2D61EE75F52B47928F8794016B5F /* PBXContainerItemProxy */; + }; + F00501C22F92B40870956958AF4E7DBE /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RxSwift; + target = EA9EA43B3B503823EE36C60D9C8A865F /* RxSwift */; + targetProxy = D6EED04D076BCDB1274DE7B848A7C3E9 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 014D6135D20B2A831876728B582DD866 /* Debug */ = { + 0535D62339AF3E59BA3821B25D2DAEB1 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 9BA2A0099476E08B6CC8026BDF0C603E /* Pods-ShadowsocksX-NGTests.debug.xcconfig */; + baseConfigurationReference = 7B721804AADD486C1E3669E634568426 /* MASShortcut.xcconfig */; buildSettings = { - CODE_SIGN_IDENTITY = ""; + CODE_SIGN_IDENTITY = "-"; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/MASShortcut"; + INFOPLIST_FILE = "Target Support Files/MASShortcut/ResourceBundle-MASShortcut-MASShortcut-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; + MACOSX_DEPLOYMENT_TARGET = 10.10; + PRODUCT_NAME = MASShortcut; + SDKROOT = macosx; + SKIP_INSTALL = YES; + WRAPPER_EXTENSION = bundle; + }; + name = Release; + }; + 08069C305478C2371FAE2DCD8D80AC56 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D8C88B0B7BFE785BC9B00D1C53FDC003 /* Pods-proxy_conf_helper.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = "-"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - INFOPLIST_FILE = "Target Support Files/Pods-ShadowsocksX-NGTests/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + EXECUTABLE_PREFIX = lib; MACH_O_TYPE = staticlib; MACOSX_DEPLOYMENT_TARGET = 10.11; - MODULEMAP_FILE = "Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = Pods_ShadowsocksX_NGTests; SDKROOT = macosx; SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; }; name = Debug; }; - 0A9023DCD8653BA4D6E580B803AAB761 /* Release */ = { + 0AE678E0D802A39C5EEB8E254FC43085 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 4CE700501A5FBA06F359007666C43958 /* Alamofire.xcconfig */; + baseConfigurationReference = 92B4BB091693150E5B1FCC6987683C6F /* Pods-ShadowsocksX-NG.release.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2199,27 +2279,86 @@ DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; FRAMEWORK_VERSION = A; - GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Alamofire/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.10; - MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; - PRODUCT_NAME = Alamofire; + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SDKROOT = macosx; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - 157463F8BA9AC88622CED9BD197CFDBD /* Release */ = { + 16098D8D72B4AA2E189FD7D466C47975 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AACEB0B4DCFE72B1C86FBDD44F903602 /* GCDWebServer.xcconfig */; + baseConfigurationReference = 342B4165E24ECEBD7C608D11E8E002B9 /* RxCocoa.xcconfig */; buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + GCC_PREFIX_HEADER = "Target Support Files/RxCocoa/RxCocoa-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RxCocoa/RxCocoa-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MODULEMAP_FILE = "Target Support Files/RxCocoa/RxCocoa.modulemap"; + PRODUCT_MODULE_NAME = RxCocoa; + PRODUCT_NAME = RxCocoa; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 4EC91AF8DBAB33976CDD8CE6F35A43CE /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 4A70BE8C07BCE9C6D6F47AC73225C959 /* Pods-proxy_conf_helper.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = "-"; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + EXECUTABLE_PREFIX = lib; + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.11; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = macosx; + SKIP_INSTALL = YES; + }; + name = Release; + }; + 53E8FB6CDE23BA5AAAAE6D000AD23705 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E4BB4DCF53E4F360602A5F6294A69B67 /* GCDWebServer.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2232,11 +2371,12 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; FRAMEWORK_VERSION = A; GCC_PREFIX_HEADER = "Target Support Files/GCDWebServer/GCDWebServer-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/GCDWebServer/Info.plist"; + INFOPLIST_FILE = "Target Support Files/GCDWebServer/GCDWebServer-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.7; MODULEMAP_FILE = "Target Support Files/GCDWebServer/GCDWebServer.modulemap"; + PRODUCT_MODULE_NAME = GCDWebServer; PRODUCT_NAME = GCDWebServer; SDKROOT = macosx; SKIP_INSTALL = YES; @@ -2247,96 +2387,7 @@ }; name = Release; }; - 172C3A07261D84F0894DEDBF9913ECB2 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BDE9D3194329F41EB9A694107DB540EE /* RxSwift.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - GCC_PREFIX_HEADER = "Target Support Files/RxSwift/RxSwift-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxSwift/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.10; - MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; - PRODUCT_NAME = RxSwift; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 312ACE5D8CB6F9064A5725F7C4CF9B12 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = EF8570C25461953B9B13A259DDC88592 /* MASShortcut.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "-"; - COMBINE_HIDPI_IMAGES = YES; - CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/MASShortcut"; - INFOPLIST_FILE = "Target Support Files/MASShortcut/ResourceBundle-MASShortcut-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; - MACOSX_DEPLOYMENT_TARGET = 10.6; - PRODUCT_NAME = MASShortcut; - SDKROOT = macosx; - SKIP_INSTALL = YES; - WRAPPER_EXTENSION = bundle; - }; - name = Debug; - }; - 353215786D69646983337802C8F2A8A3 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D44EE75E565309CBCBA8CDC8C1F148EF /* BRLOptionParser.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "-"; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - EXECUTABLE_PREFIX = lib; - GCC_PREFIX_HEADER = "Target Support Files/BRLOptionParser/BRLOptionParser-prefix.pch"; - MACOSX_DEPLOYMENT_TARGET = 10.7; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PRIVATE_HEADERS_FOLDER_PATH = ""; - PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = macosx; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - }; - name = Debug; - }; - 38AFE42E0B6F59BF0F8C611B2315CE8A /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = A5055B8EFFFBEDE50909E935D4BCA446 /* Pods-proxy_conf_helper.release.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "-"; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - EXECUTABLE_PREFIX = lib; - MACH_O_TYPE = staticlib; - MACOSX_DEPLOYMENT_TARGET = 10.11; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - SDKROOT = macosx; - SKIP_INSTALL = YES; - }; - name = Release; - }; - 3918C3731F97F7B1A6B91CA53EA9B086 /* Debug */ = { + 7440D515053ED0806561AA62F9D68F06 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -2346,6 +2397,511 @@ CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = 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_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_RELEASE=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; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Release; + }; + 7D5249D5EF441F84FD259FCF1683C052 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5C0C485AB4EA81F3E9128F65E9AC66CA /* Pods-ShadowsocksX-NGTests.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + INFOPLIST_FILE = "Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 7E2FB6F6284598754F6E81986E7E3BCE /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 894A940ECC9153003C9D4BD6A1C34075 /* BRLOptionParser.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CODE_SIGN_IDENTITY = "-"; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + EXECUTABLE_PREFIX = lib; + GCC_PREFIX_HEADER = "Target Support Files/BRLOptionParser/BRLOptionParser-prefix.pch"; + MACOSX_DEPLOYMENT_TARGET = 10.7; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = BRLOptionParser; + PRODUCT_NAME = BRLOptionParser; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + }; + name = Release; + }; + A2C3CB6527F49F0D6C40066C07E89466 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 342B4165E24ECEBD7C608D11E8E002B9 /* RxCocoa.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + GCC_PREFIX_HEADER = "Target Support Files/RxCocoa/RxCocoa-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RxCocoa/RxCocoa-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MODULEMAP_FILE = "Target Support Files/RxCocoa/RxCocoa.modulemap"; + PRODUCT_MODULE_NAME = RxCocoa; + PRODUCT_NAME = RxCocoa; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + A4FC375A3166B99F12E81F7A96B1088B /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D48A4078A033D9B948716B99626C26ED /* Alamofire.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Alamofire/Alamofire-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; + PRODUCT_MODULE_NAME = Alamofire; + PRODUCT_NAME = Alamofire; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + A89F60F34A256E6C6B9FD9DE21413B8A /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2404E7D73F00A4945F5DC184D2B99C7F /* RxSwift.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + GCC_PREFIX_HEADER = "Target Support Files/RxSwift/RxSwift-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RxSwift/RxSwift-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; + PRODUCT_MODULE_NAME = RxSwift; + PRODUCT_NAME = RxSwift; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + AC8E36069436708A3D1CF74B6DBEDADE /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E4BB4DCF53E4F360602A5F6294A69B67 /* GCDWebServer.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + GCC_PREFIX_HEADER = "Target Support Files/GCDWebServer/GCDWebServer-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/GCDWebServer/GCDWebServer-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.7; + MODULEMAP_FILE = "Target Support Files/GCDWebServer/GCDWebServer.modulemap"; + PRODUCT_MODULE_NAME = GCDWebServer; + PRODUCT_NAME = GCDWebServer; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + B2457791BEDD24A5E2DE7EBFECE0A533 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7B721804AADD486C1E3669E634568426 /* MASShortcut.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + GCC_PREFIX_HEADER = "Target Support Files/MASShortcut/MASShortcut-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MASShortcut/MASShortcut-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MODULEMAP_FILE = "Target Support Files/MASShortcut/MASShortcut.modulemap"; + PRODUCT_MODULE_NAME = MASShortcut; + PRODUCT_NAME = MASShortcut; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + BC39E3CA1C38AB7ACED9E46D3BFD0D06 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2404E7D73F00A4945F5DC184D2B99C7F /* RxSwift.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + GCC_PREFIX_HEADER = "Target Support Files/RxSwift/RxSwift-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RxSwift/RxSwift-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; + PRODUCT_MODULE_NAME = RxSwift; + PRODUCT_NAME = RxSwift; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + BF7C4EE8C1888A8BF15F655A7B0FE23D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9A71B9958F30759ED2645E0DF9ADF314 /* Pods-ShadowsocksX-NG.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + INFOPLIST_FILE = "Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + C039273308059B1222CA8F75ED129C4B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D48A4078A033D9B948716B99626C26ED /* Alamofire.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Alamofire/Alamofire-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; + PRODUCT_MODULE_NAME = Alamofire; + PRODUCT_NAME = Alamofire; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + C18C649C9C942DFE2F63A98673E6EBDE /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 894A940ECC9153003C9D4BD6A1C34075 /* BRLOptionParser.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CODE_SIGN_IDENTITY = "-"; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + EXECUTABLE_PREFIX = lib; + GCC_PREFIX_HEADER = "Target Support Files/BRLOptionParser/BRLOptionParser-prefix.pch"; + MACOSX_DEPLOYMENT_TARGET = 10.7; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = BRLOptionParser; + PRODUCT_NAME = BRLOptionParser; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + }; + name = Debug; + }; + E3B9DD26CBDC85D9B58F3AB8E86621EE /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7B721804AADD486C1E3669E634568426 /* MASShortcut.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "-"; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/MASShortcut"; + INFOPLIST_FILE = "Target Support Files/MASShortcut/ResourceBundle-MASShortcut-MASShortcut-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; + MACOSX_DEPLOYMENT_TARGET = 10.10; + PRODUCT_NAME = MASShortcut; + SDKROOT = macosx; + SKIP_INSTALL = YES; + WRAPPER_EXTENSION = bundle; + }; + name = Debug; + }; + F166F449884E9B5146A9CEB7CC0ADCFD /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7B721804AADD486C1E3669E634568426 /* MASShortcut.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + GCC_PREFIX_HEADER = "Target Support Files/MASShortcut/MASShortcut-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MASShortcut/MASShortcut-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MODULEMAP_FILE = "Target Support Files/MASShortcut/MASShortcut.modulemap"; + PRODUCT_MODULE_NAME = MASShortcut; + PRODUCT_NAME = MASShortcut; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + F90CA7473A90ABA5D7A588E387D56694 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 196DA983244F60766BA272090829A16E /* Pods-ShadowsocksX-NGTests.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + INFOPLIST_FILE = "Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + FF78091F2E132A0C4F200C5D32A31F56 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; @@ -2367,7 +2923,6 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_REQUIRED = NO; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; @@ -2388,557 +2943,121 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; MACOSX_DEPLOYMENT_TARGET = 10.11; - MTL_ENABLE_DEBUG_INFO = YES; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/; STRIP_INSTALLED_PRODUCT = NO; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; SYMROOT = "${SRCROOT}/../build"; }; name = Debug; }; - 3E4FE876BE3FE23B968D72994E45F33E /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D44EE75E565309CBCBA8CDC8C1F148EF /* BRLOptionParser.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "-"; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - EXECUTABLE_PREFIX = lib; - GCC_PREFIX_HEADER = "Target Support Files/BRLOptionParser/BRLOptionParser-prefix.pch"; - MACOSX_DEPLOYMENT_TARGET = 10.7; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PRIVATE_HEADERS_FOLDER_PATH = ""; - PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = macosx; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - }; - name = Release; - }; - 517CFD2BFFC625AF59D3081574562C7C /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = AACEB0B4DCFE72B1C86FBDD44F903602 /* GCDWebServer.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - GCC_PREFIX_HEADER = "Target Support Files/GCDWebServer/GCDWebServer-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/GCDWebServer/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.7; - MODULEMAP_FILE = "Target Support Files/GCDWebServer/GCDWebServer.modulemap"; - PRODUCT_NAME = GCDWebServer; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 52B3502E90247836A684BCE55D949DFB /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 054C3E84057CD06DB85D99E7AD207F48 /* Pods-proxy_conf_helper.debug.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "-"; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - EXECUTABLE_PREFIX = lib; - MACH_O_TYPE = staticlib; - MACOSX_DEPLOYMENT_TARGET = 10.11; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - SDKROOT = macosx; - SKIP_INSTALL = YES; - }; - name = Debug; - }; - 585970A6B2E97B1118A2E7870AE18684 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = F67191B1F87DA238C4D87250DFBE43DD /* Pods-ShadowsocksX-NGTests.release.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - INFOPLIST_FILE = "Target Support Files/Pods-ShadowsocksX-NGTests/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MACOSX_DEPLOYMENT_TARGET = 10.11; - MODULEMAP_FILE = "Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = Pods_ShadowsocksX_NGTests; - SDKROOT = macosx; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 602E11CAE6E17BD0FB30DD5EE3E0E88A /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = EF8570C25461953B9B13A259DDC88592 /* MASShortcut.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - GCC_PREFIX_HEADER = "Target Support Files/MASShortcut/MASShortcut-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MASShortcut/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.6; - MODULEMAP_FILE = "Target Support Files/MASShortcut/MASShortcut.modulemap"; - PRODUCT_NAME = MASShortcut; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 6560A4AFF004D1420AB4047ED7B3E45A /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = 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_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_REQUIRED = NO; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_PREPROCESSOR_DEFINITIONS = ( - "POD_CONFIGURATION_RELEASE=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; - MACOSX_DEPLOYMENT_TARGET = 10.11; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/; - STRIP_INSTALLED_PRODUCT = NO; - SWIFT_COMPILATION_MODE = wholemodule; - SYMROOT = "${SRCROOT}/../build"; - }; - name = Release; - }; - 7DDA088AC519B45C54DE31DD7B6A497F /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = EF8570C25461953B9B13A259DDC88592 /* MASShortcut.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "-"; - COMBINE_HIDPI_IMAGES = YES; - CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/MASShortcut"; - INFOPLIST_FILE = "Target Support Files/MASShortcut/ResourceBundle-MASShortcut-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; - MACOSX_DEPLOYMENT_TARGET = 10.6; - PRODUCT_NAME = MASShortcut; - SDKROOT = macosx; - SKIP_INSTALL = YES; - WRAPPER_EXTENSION = bundle; - }; - name = Release; - }; - 7E6BB39B8757E394B68675AD8FE6EFB3 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 2DD2740F8043D2CE9EA5BB7A7DBFC49D /* RxCocoa.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - GCC_PREFIX_HEADER = "Target Support Files/RxCocoa/RxCocoa-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxCocoa/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.10; - MODULEMAP_FILE = "Target Support Files/RxCocoa/RxCocoa.modulemap"; - PRODUCT_NAME = RxCocoa; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 84C19B554DB00F35C8105BC241A1C0E9 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 089EB7E66F64D3A19BB7681AFCE91031 /* Pods-ShadowsocksX-NG.release.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - INFOPLIST_FILE = "Target Support Files/Pods-ShadowsocksX-NG/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MACOSX_DEPLOYMENT_TARGET = 10.11; - MODULEMAP_FILE = "Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = Pods_ShadowsocksX_NG; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - AB22803FF442FDA32B9017FBF80DF1A8 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = EF8570C25461953B9B13A259DDC88592 /* MASShortcut.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - GCC_PREFIX_HEADER = "Target Support Files/MASShortcut/MASShortcut-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MASShortcut/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.6; - MODULEMAP_FILE = "Target Support Files/MASShortcut/MASShortcut.modulemap"; - PRODUCT_NAME = MASShortcut; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - B2F84BB079C7C6D70C2D3424C89A317F /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 4CE700501A5FBA06F359007666C43958 /* Alamofire.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Alamofire/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.10; - MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; - PRODUCT_NAME = Alamofire; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - C99271978245C97876F72EBC3C6563ED /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 98522BF2EB25C0255284080F9CA3E195 /* Pods-ShadowsocksX-NG.debug.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - INFOPLIST_FILE = "Target Support Files/Pods-ShadowsocksX-NG/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MACOSX_DEPLOYMENT_TARGET = 10.11; - MODULEMAP_FILE = "Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = Pods_ShadowsocksX_NG; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - E4E33ED50D7F60200978CC42446E6D58 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 2DD2740F8043D2CE9EA5BB7A7DBFC49D /* RxCocoa.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - GCC_PREFIX_HEADER = "Target Support Files/RxCocoa/RxCocoa-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxCocoa/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.10; - MODULEMAP_FILE = "Target Support Files/RxCocoa/RxCocoa.modulemap"; - PRODUCT_NAME = RxCocoa; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - F9052EF393B6D890664BCF053BB54BFB /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BDE9D3194329F41EB9A694107DB540EE /* RxSwift.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_VERSION = A; - GCC_PREFIX_HEADER = "Target Support Files/RxSwift/RxSwift-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxSwift/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.10; - MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; - PRODUCT_NAME = RxSwift; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 010811070A86F912EA0CD2BB98136CD9 /* Build configuration list for PBXNativeTarget "GCDWebServer" */ = { + 14EDD71B3D9BB25C4467E6BAFABDB673 /* Build configuration list for PBXNativeTarget "MASShortcut-MASShortcut" */ = { isa = XCConfigurationList; buildConfigurations = ( - 517CFD2BFFC625AF59D3081574562C7C /* Debug */, - 157463F8BA9AC88622CED9BD197CFDBD /* Release */, + E3B9DD26CBDC85D9B58F3AB8E86621EE /* Debug */, + 0535D62339AF3E59BA3821B25D2DAEB1 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 246647E8AB354727F9ECD0879805161F /* Build configuration list for PBXNativeTarget "Pods-proxy_conf_helper" */ = { + 1CA538C48EFF5400714AA4B2CC6A5D32 /* Build configuration list for PBXNativeTarget "RxSwift" */ = { isa = XCConfigurationList; buildConfigurations = ( - 52B3502E90247836A684BCE55D949DFB /* Debug */, - 38AFE42E0B6F59BF0F8C611B2315CE8A /* Release */, + A89F60F34A256E6C6B9FD9DE21413B8A /* Debug */, + BC39E3CA1C38AB7ACED9E46D3BFD0D06 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { + 1DEF4FDEB2EC08FC81953652795253B2 /* Build configuration list for PBXNativeTarget "Pods-proxy_conf_helper" */ = { isa = XCConfigurationList; buildConfigurations = ( - 3918C3731F97F7B1A6B91CA53EA9B086 /* Debug */, - 6560A4AFF004D1420AB4047ED7B3E45A /* Release */, + 08069C305478C2371FAE2DCD8D80AC56 /* Debug */, + 4EC91AF8DBAB33976CDD8CE6F35A43CE /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 3F916C3627231C409340EF9C88C37F7E /* Build configuration list for PBXNativeTarget "MASShortcut" */ = { + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - AB22803FF442FDA32B9017FBF80DF1A8 /* Debug */, - 602E11CAE6E17BD0FB30DD5EE3E0E88A /* Release */, + FF78091F2E132A0C4F200C5D32A31F56 /* Debug */, + 7440D515053ED0806561AA62F9D68F06 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 419E5D95491847CD79841B971A8A3277 /* Build configuration list for PBXNativeTarget "Alamofire" */ = { + 5CCE7C934C2A3B1A21E22C728B195981 /* Build configuration list for PBXNativeTarget "MASShortcut" */ = { isa = XCConfigurationList; buildConfigurations = ( - B2F84BB079C7C6D70C2D3424C89A317F /* Debug */, - 0A9023DCD8653BA4D6E580B803AAB761 /* Release */, + F166F449884E9B5146A9CEB7CC0ADCFD /* Debug */, + B2457791BEDD24A5E2DE7EBFECE0A533 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 4B561109B4C51E9DC9F5F27E9C033405 /* Build configuration list for PBXNativeTarget "BRLOptionParser" */ = { + 690C9430B03B92419AFA4555712EC873 /* Build configuration list for PBXNativeTarget "GCDWebServer" */ = { isa = XCConfigurationList; buildConfigurations = ( - 353215786D69646983337802C8F2A8A3 /* Debug */, - 3E4FE876BE3FE23B968D72994E45F33E /* Release */, + AC8E36069436708A3D1CF74B6DBEDADE /* Debug */, + 53E8FB6CDE23BA5AAAAE6D000AD23705 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 78B338CAC10BFFE58C0DE5D189212D60 /* Build configuration list for PBXNativeTarget "Pods-ShadowsocksX-NGTests" */ = { + 6D442598AC59E49374231C4242255CA3 /* Build configuration list for PBXNativeTarget "BRLOptionParser" */ = { isa = XCConfigurationList; buildConfigurations = ( - 014D6135D20B2A831876728B582DD866 /* Debug */, - 585970A6B2E97B1118A2E7870AE18684 /* Release */, + C18C649C9C942DFE2F63A98673E6EBDE /* Debug */, + 7E2FB6F6284598754F6E81986E7E3BCE /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - B2542ED88CE98D477B8D38769095CE5E /* Build configuration list for PBXNativeTarget "MASShortcut-MASShortcut" */ = { + D615352A0712488A75D13633F6615244 /* Build configuration list for PBXNativeTarget "Pods-ShadowsocksX-NG" */ = { isa = XCConfigurationList; buildConfigurations = ( - 312ACE5D8CB6F9064A5725F7C4CF9B12 /* Debug */, - 7DDA088AC519B45C54DE31DD7B6A497F /* Release */, + BF7C4EE8C1888A8BF15F655A7B0FE23D /* Debug */, + 0AE678E0D802A39C5EEB8E254FC43085 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - C3C04E339BA1928DBC29CEFD07DC6ADF /* Build configuration list for PBXNativeTarget "RxSwift" */ = { + E4A5194ABAF7A4780609E0E581DA6B54 /* Build configuration list for PBXNativeTarget "Alamofire" */ = { isa = XCConfigurationList; buildConfigurations = ( - F9052EF393B6D890664BCF053BB54BFB /* Debug */, - 172C3A07261D84F0894DEDBF9913ECB2 /* Release */, + A4FC375A3166B99F12E81F7A96B1088B /* Debug */, + C039273308059B1222CA8F75ED129C4B /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - D913F5C08F647E9FCC34C3A5B3030BD5 /* Build configuration list for PBXNativeTarget "RxCocoa" */ = { + FFAD12CB87D7846A886FC2434E2DE4B9 /* Build configuration list for PBXNativeTarget "RxCocoa" */ = { isa = XCConfigurationList; buildConfigurations = ( - E4E33ED50D7F60200978CC42446E6D58 /* Debug */, - 7E6BB39B8757E394B68675AD8FE6EFB3 /* Release */, + 16098D8D72B4AA2E189FD7D466C47975 /* Debug */, + A2C3CB6527F49F0D6C40066C07E89466 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - E185892330EBDCF4E8B37928210771A9 /* Build configuration list for PBXNativeTarget "Pods-ShadowsocksX-NG" */ = { + FFBCBA759AC5392D04EBA19E125E32BA /* Build configuration list for PBXNativeTarget "Pods-ShadowsocksX-NGTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - C99271978245C97876F72EBC3C6563ED /* Debug */, - 84C19B554DB00F35C8105BC241A1C0E9 /* Release */, + F90CA7473A90ABA5D7A588E387D56694 /* Debug */, + 7D5249D5EF441F84FD259FCF1683C052 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; - rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + rootObject = BFDFE7DC352907FC980B868725387E98 /* Project object */; } diff --git a/Pods/Target Support Files/Alamofire/Alamofire-Info.plist b/Pods/Target Support Files/Alamofire/Alamofire-Info.plist new file mode 100644 index 0000000..2aba7e5 --- /dev/null +++ b/Pods/Target Support Files/Alamofire/Alamofire-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 4.7.3 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Pods/Target Support Files/Alamofire/Alamofire.xcconfig b/Pods/Target Support Files/Alamofire/Alamofire.xcconfig index dda36c1..267e31c 100644 --- a/Pods/Target Support Files/Alamofire/Alamofire.xcconfig +++ b/Pods/Target Support Files/Alamofire/Alamofire.xcconfig @@ -1,8 +1,7 @@ CODE_SIGN_IDENTITY = CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Alamofire GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/BRLOptionParser" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Pods/Target Support Files/BRLOptionParser/BRLOptionParser.xcconfig b/Pods/Target Support Files/BRLOptionParser/BRLOptionParser.xcconfig index af364a6..74e0192 100644 --- a/Pods/Target Support Files/BRLOptionParser/BRLOptionParser.xcconfig +++ b/Pods/Target Support Files/BRLOptionParser/BRLOptionParser.xcconfig @@ -1,6 +1,6 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/BRLOptionParser GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/BRLOptionParser" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/BRLOptionParser" +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/BRLOptionParser" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/BRLOptionParser" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Pods/Target Support Files/GCDWebServer/GCDWebServer-Info.plist b/Pods/Target Support Files/GCDWebServer/GCDWebServer-Info.plist new file mode 100644 index 0000000..04856ce --- /dev/null +++ b/Pods/Target Support Files/GCDWebServer/GCDWebServer-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 3.5.3 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Pods/Target Support Files/GCDWebServer/GCDWebServer.xcconfig b/Pods/Target Support Files/GCDWebServer/GCDWebServer.xcconfig index db18519..7edf50d 100644 --- a/Pods/Target Support Files/GCDWebServer/GCDWebServer.xcconfig +++ b/Pods/Target Support Files/GCDWebServer/GCDWebServer.xcconfig @@ -1,8 +1,7 @@ CODE_SIGN_IDENTITY = CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/BRLOptionParser" -OTHER_LDFLAGS = -l"z" -framework "SystemConfiguration" +OTHER_LDFLAGS = $(inherited) -l"z" -framework "SystemConfiguration" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Pods/Target Support Files/MASShortcut/MASShortcut-Info.plist b/Pods/Target Support Files/MASShortcut/MASShortcut-Info.plist new file mode 100644 index 0000000..e526849 --- /dev/null +++ b/Pods/Target Support Files/MASShortcut/MASShortcut-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 2.4.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Pods/Target Support Files/MASShortcut/MASShortcut-umbrella.h b/Pods/Target Support Files/MASShortcut/MASShortcut-umbrella.h index 7dc0053..73b04d4 100644 --- a/Pods/Target Support Files/MASShortcut/MASShortcut-umbrella.h +++ b/Pods/Target Support Files/MASShortcut/MASShortcut-umbrella.h @@ -10,18 +10,18 @@ #endif #endif -#import "MASDictionaryTransformer.h" -#import "MASHotKey.h" #import "MASKeyCodes.h" #import "MASKeyMasks.h" -#import "MASLocalization.h" #import "MASShortcut.h" -#import "MASShortcutBinder.h" -#import "MASShortcutMonitor.h" #import "MASShortcutValidator.h" +#import "MASHotKey.h" +#import "MASShortcutMonitor.h" +#import "Shortcut.h" +#import "MASLocalization.h" #import "MASShortcutView+Bindings.h" #import "MASShortcutView.h" -#import "Shortcut.h" +#import "MASDictionaryTransformer.h" +#import "MASShortcutBinder.h" FOUNDATION_EXPORT double MASShortcutVersionNumber; FOUNDATION_EXPORT const unsigned char MASShortcutVersionString[]; diff --git a/Pods/Target Support Files/MASShortcut/MASShortcut.xcconfig b/Pods/Target Support Files/MASShortcut/MASShortcut.xcconfig index befd45a..b859647 100644 --- a/Pods/Target Support Files/MASShortcut/MASShortcut.xcconfig +++ b/Pods/Target Support Files/MASShortcut/MASShortcut.xcconfig @@ -1,8 +1,7 @@ CODE_SIGN_IDENTITY = CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/BRLOptionParser" -OTHER_LDFLAGS = -framework "AppKit" -framework "Carbon" +OTHER_LDFLAGS = $(inherited) -framework "AppKit" -framework "Carbon" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Pods/Target Support Files/MASShortcut/ResourceBundle-MASShortcut-MASShortcut-Info.plist b/Pods/Target Support Files/MASShortcut/ResourceBundle-MASShortcut-MASShortcut-Info.plist new file mode 100644 index 0000000..76f452a --- /dev/null +++ b/Pods/Target Support Files/MASShortcut/ResourceBundle-MASShortcut-MASShortcut-Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + BNDL + CFBundleShortVersionString + 2.4.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + NSPrincipalClass + + + diff --git a/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-Info.plist b/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-Info.plist new file mode 100644 index 0000000..2243fe6 --- /dev/null +++ b/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-frameworks.sh b/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-frameworks.sh index 9cc82ab..881b9fc 100755 --- a/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-frameworks.sh +++ b/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-frameworks.sh @@ -1,9 +1,23 @@ #!/bin/sh set -e +set -u +set -o pipefail + +function on_error { + echo "$(realpath -mq "${0}"):$1: error: Unexpected failure" +} +trap 'on_error $LINENO' ERR + +if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then + # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy + # frameworks to, so exit 0 (signalling the script phase was successful). + exit 0 +fi echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" +COCOAPODS_PARALLEL_CODE_SIGN="${COCOAPODS_PARALLEL_CODE_SIGN:-false}" SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" # Used as a return value for each invocation of `strip_invalid_archs` function. @@ -27,8 +41,8 @@ install_framework() local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" if [ -L "${source}" ]; then - echo "Symlinked..." - source="$(readlink "${source}")" + echo "Symlinked..." + source="$(readlink "${source}")" fi # Use filter instead of exclude so missing patterns don't throw errors. @@ -38,8 +52,13 @@ install_framework() local basename basename="$(basename -s .framework "$1")" binary="${destination}/${basename}.framework/${basename}" + if ! [ -r "$binary" ]; then binary="${destination}/${basename}" + elif [ -L "${binary}" ]; then + echo "Destination binary is symlinked..." + dirname="$(dirname "${binary}")" + binary="${dirname}/$(readlink "${binary}")" fi # Strip invalid architectures so "fat" simulator / device frameworks work on device @@ -53,7 +72,7 @@ install_framework() # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then local swift_runtime_libs - swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) + swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u) for lib in $swift_runtime_libs; do echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" @@ -75,7 +94,7 @@ install_dsym() { binary="${DERIVED_FILES_DIR}/${basename}.framework.dSYM/Contents/Resources/DWARF/${basename}" # Strip invalid architectures so "fat" simulator / device frameworks work on device - if [[ "$(file "$binary")" == *"Mach-O dSYM companion"* ]]; then + if [[ "$(file "$binary")" == *"Mach-O "*"dSYM companion"* ]]; then strip_invalid_archs "$binary" fi @@ -90,12 +109,20 @@ install_dsym() { fi } +# Copies the bcsymbolmap files of a vendored framework +install_bcsymbolmap() { + local bcsymbolmap_path="$1" + local destination="${BUILT_PRODUCTS_DIR}" + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}" +} + # Signs a framework with the provided identity code_sign_if_enabled() { - if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then - # Use the current code_sign_identitiy + if [ -n "${EXPANDED_CODE_SIGN_IDENTITY:-}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then + # Use the current code_sign_identity echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" - local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements '$1'" + local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'" if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then code_sign_cmd="$code_sign_cmd &" @@ -122,7 +149,7 @@ strip_invalid_archs() { for arch in $binary_archs; do if ! [[ "${ARCHS}" == *"$arch"* ]]; then # Strip non-valid architectures in-place - lipo -remove "$arch" -output "$binary" "$binary" || exit 1 + lipo -remove "$arch" -output "$binary" "$binary" stripped="$stripped $arch" fi done diff --git a/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.debug.xcconfig b/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.debug.xcconfig index 6f1f62c..bf8be72 100644 --- a/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.debug.xcconfig +++ b/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.debug.xcconfig @@ -1,11 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -CODE_SIGN_IDENTITY = FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer" "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer/GCDWebServer.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut/MASShortcut.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/../Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer/GCDWebServer.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut/MASShortcut.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" -OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "GCDWebServer" -framework "MASShortcut" -framework "RxCocoa" -framework "RxSwift" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -l"z" -framework "Alamofire" -framework "AppKit" -framework "Carbon" -framework "GCDWebServer" -framework "MASShortcut" -framework "RxCocoa" -framework "RxSwift" -framework "SystemConfiguration" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.release.xcconfig b/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.release.xcconfig index 6f1f62c..bf8be72 100644 --- a/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.release.xcconfig +++ b/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG.release.xcconfig @@ -1,11 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -CODE_SIGN_IDENTITY = FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer" "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer/GCDWebServer.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut/MASShortcut.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/../Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer/GCDWebServer.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut/MASShortcut.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" -OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "GCDWebServer" -framework "MASShortcut" -framework "RxCocoa" -framework "RxSwift" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -l"z" -framework "Alamofire" -framework "AppKit" -framework "Carbon" -framework "GCDWebServer" -framework "MASShortcut" -framework "RxCocoa" -framework "RxSwift" -framework "SystemConfiguration" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests-Info.plist b/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests-Info.plist new file mode 100644 index 0000000..2243fe6 --- /dev/null +++ b/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.debug.xcconfig b/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.debug.xcconfig index e017682..b01dc08 100644 --- a/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.debug.xcconfig +++ b/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.debug.xcconfig @@ -1,8 +1,7 @@ -CODE_SIGN_IDENTITY = FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer" "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/../Frameworks' '@loader_path/../Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer/GCDWebServer.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut/MASShortcut.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer/GCDWebServer.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut/MASShortcut.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" +OTHER_LDFLAGS = $(inherited) -l"z" -framework "Alamofire" -framework "AppKit" -framework "Carbon" -framework "GCDWebServer" -framework "MASShortcut" -framework "RxCocoa" -framework "RxSwift" -framework "SystemConfiguration" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.release.xcconfig b/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.release.xcconfig index e017682..b01dc08 100644 --- a/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.release.xcconfig +++ b/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests.release.xcconfig @@ -1,8 +1,7 @@ -CODE_SIGN_IDENTITY = FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer" "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/../Frameworks' '@loader_path/../Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer/GCDWebServer.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut/MASShortcut.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer/GCDWebServer.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/MASShortcut/MASShortcut.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" +OTHER_LDFLAGS = $(inherited) -l"z" -framework "Alamofire" -framework "AppKit" -framework "Carbon" -framework "GCDWebServer" -framework "MASShortcut" -framework "RxCocoa" -framework "RxSwift" -framework "SystemConfiguration" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/Pods/Target Support Files/Pods-proxy_conf_helper/Pods-proxy_conf_helper.debug.xcconfig b/Pods/Target Support Files/Pods-proxy_conf_helper/Pods-proxy_conf_helper.debug.xcconfig index 2f65c6e..a827a23 100644 --- a/Pods/Target Support Files/Pods-proxy_conf_helper/Pods-proxy_conf_helper.debug.xcconfig +++ b/Pods/Target Support Files/Pods-proxy_conf_helper/Pods-proxy_conf_helper.debug.xcconfig @@ -1,7 +1,6 @@ GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/BRLOptionParser" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/BRLOptionParser" -OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/BRLOptionParser" OTHER_LDFLAGS = $(inherited) -ObjC -l"BRLOptionParser" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) diff --git a/Pods/Target Support Files/Pods-proxy_conf_helper/Pods-proxy_conf_helper.release.xcconfig b/Pods/Target Support Files/Pods-proxy_conf_helper/Pods-proxy_conf_helper.release.xcconfig index 2f65c6e..a827a23 100644 --- a/Pods/Target Support Files/Pods-proxy_conf_helper/Pods-proxy_conf_helper.release.xcconfig +++ b/Pods/Target Support Files/Pods-proxy_conf_helper/Pods-proxy_conf_helper.release.xcconfig @@ -1,7 +1,6 @@ GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/BRLOptionParser" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/BRLOptionParser" -OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/BRLOptionParser" OTHER_LDFLAGS = $(inherited) -ObjC -l"BRLOptionParser" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) diff --git a/Pods/Target Support Files/RxCocoa/RxCocoa-Info.plist b/Pods/Target Support Files/RxCocoa/RxCocoa-Info.plist new file mode 100644 index 0000000..7ecb368 --- /dev/null +++ b/Pods/Target Support Files/RxCocoa/RxCocoa-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 4.1.2 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Pods/Target Support Files/RxCocoa/RxCocoa.xcconfig b/Pods/Target Support Files/RxCocoa/RxCocoa.xcconfig index 25f353b..57f6a18 100644 --- a/Pods/Target Support Files/RxCocoa/RxCocoa.xcconfig +++ b/Pods/Target Support Files/RxCocoa/RxCocoa.xcconfig @@ -2,8 +2,7 @@ CODE_SIGN_IDENTITY = CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/BRLOptionParser" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Pods/Target Support Files/RxSwift/RxSwift-Info.plist b/Pods/Target Support Files/RxSwift/RxSwift-Info.plist new file mode 100644 index 0000000..7ecb368 --- /dev/null +++ b/Pods/Target Support Files/RxSwift/RxSwift-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 4.1.2 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Pods/Target Support Files/RxSwift/RxSwift.xcconfig b/Pods/Target Support Files/RxSwift/RxSwift.xcconfig index abf0358..248ed93 100644 --- a/Pods/Target Support Files/RxSwift/RxSwift.xcconfig +++ b/Pods/Target Support Files/RxSwift/RxSwift.xcconfig @@ -1,8 +1,7 @@ CODE_SIGN_IDENTITY = CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxSwift GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/BRLOptionParser" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/ShadowsocksX-NG.xcodeproj/project.pbxproj b/ShadowsocksX-NG.xcodeproj/project.pbxproj old mode 100755 new mode 100644 index 9a6c3fe..6680042 --- a/ShadowsocksX-NG.xcodeproj/project.pbxproj +++ b/ShadowsocksX-NG.xcodeproj/project.pbxproj @@ -526,7 +526,6 @@ 9B0BFFE21D0460A70040E62B /* Frameworks */, 9B0BFFE31D0460A70040E62B /* Resources */, 5E160625E3EC80E27DA7EF05 /* [CP] Embed Pods Frameworks */, - 3E819BD46B855EDB116A3C70 /* [CP] Copy Pods Resources */, 9B6BF9511E27B2250061B9A7 /* CopyFiles */, ); buildRules = ( @@ -547,8 +546,6 @@ 9B0BFFF01D0460A70040E62B /* Sources */, 9B0BFFF11D0460A70040E62B /* Frameworks */, 9B0BFFF21D0460A70040E62B /* Resources */, - 8A094D4241AB0C72A177FDC3 /* [CP] Embed Pods Frameworks */, - D8C2D6AF002916F4095E15E3 /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -568,7 +565,6 @@ 9B3FFF401D09CD3B0019A709 /* Sources */, 9B3FFF411D09CD3B0019A709 /* Frameworks */, 9B3FFF421D09CD3B0019A709 /* CopyFiles */, - 0BD38C8FA95AA74C8D7003EC /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -713,21 +709,6 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 0BD38C8FA95AA74C8D7003EC /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-proxy_conf_helper/Pods-proxy_conf_helper-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; 22E2FC257F00091B923B1A15 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -764,28 +745,13 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 3E819BD46B855EDB116A3C70 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; 5E160625E3EC80E27DA7EF05 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( - "${SRCROOT}/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-frameworks.sh", + "${PODS_ROOT}/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-frameworks.sh", "${BUILT_PRODUCTS_DIR}/Alamofire/Alamofire.framework", "${BUILT_PRODUCTS_DIR}/GCDWebServer/GCDWebServer.framework", "${BUILT_PRODUCTS_DIR}/MASShortcut/MASShortcut.framework", @@ -802,22 +768,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 8A094D4241AB0C72A177FDC3 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "[CP] Embed Pods Frameworks"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ShadowsocksX-NG/Pods-ShadowsocksX-NG-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; A3C8167BB5EB01FBDE2A08BC /* [CP] Check Pods Manifest.lock */ = { @@ -838,21 +789,6 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - D8C2D6AF002916F4095E15E3 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-ShadowsocksX-NGTests/Pods-ShadowsocksX-NGTests-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -977,7 +913,8 @@ 9B0B00061D0460A70040E62B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; + ALWAYS_SEARCH_USER_PATHS = "$(inherited)"; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; @@ -1033,7 +970,8 @@ 9B0B00071D0460A70040E62B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; + ALWAYS_SEARCH_USER_PATHS = "$(inherited)"; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; @@ -1083,11 +1021,12 @@ isa = XCBuildConfiguration; baseConfigurationReference = FE3237E9FB24D9B924A0E630 /* Pods-ShadowsocksX-NG.debug.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; COMBINE_HIDPI_IMAGES = YES; HEADER_SEARCH_PATHS = ( + "$(inherited)", "$(SRCROOT)/libcork/include/", "$(SRCROOT)/libipset/include/", ); @@ -1113,11 +1052,12 @@ isa = XCBuildConfiguration; baseConfigurationReference = E9E9FB3855DA55D0710EE7BD /* Pods-ShadowsocksX-NG.release.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; COMBINE_HIDPI_IMAGES = YES; HEADER_SEARCH_PATHS = ( + "$(inherited)", "$(SRCROOT)/libcork/include/", "$(SRCROOT)/libipset/include/", );