






#import "Drive.h"
#import "BeginInsideAfterMainVitality.h"

@interface Drive() {
    NSMutableSet *_notReceiptNativeNearestTotal;
}

@end

@implementation Drive



+ (instancetype)onlineHowInstance {
    static id onlineHowInstance = nil;

    static dispatch_once_t zoneToken;
    dispatch_once(&zoneToken, ^{
        onlineHowInstance = [[self alloc] init];
    });

    return onlineHowInstance;
}


- (NSMutableSet *)notReceiptNativeNearestTotal {
    if (!_notReceiptNativeNearestTotal) {
        _notReceiptNativeNearestTotal = [[NSMutableSet alloc] init];
    }
    return _notReceiptNativeNearestTotal;
}




+ (BOOL)stationSexObtainBookSwashes:(BeginInsideAfterMainVitality *)zb_destination {
    return [self.onlineHowInstance stationSexObtainBookSwashes:zb_destination];
}

- (BOOL)stationSexObtainBookSwashes:(BeginInsideAfterMainVitality *)zb_destination {
    if ([self.notReceiptNativeNearestTotal containsObject:zb_destination]) {
        return NO;
    }
    [self.notReceiptNativeNearestTotal addObject:zb_destination];
    return YES;
}


+ (BOOL)exactFunAspectHowInverseEmergency:(BeginInsideAfterMainVitality *)zb_destination {
    return [self.onlineHowInstance exactFunAspectHowInverseEmergency:zb_destination];
}

- (BOOL)exactFunAspectHowInverseEmergency:(BeginInsideAfterMainVitality *)zb_destination {
    if (![self.notReceiptNativeNearestTotal containsObject:zb_destination]) {
        return NO;
    }
    [self.notReceiptNativeNearestTotal removeObject:zb_destination];
    return YES;
}


+ (void)orangeBrandHeadExcludeAvailablePerformed {
    [self.onlineHowInstance orangeBrandHeadExcludeAvailablePerformed];
}

- (void)orangeBrandHeadExcludeAvailablePerformed {
    [self.notReceiptNativeNearestTotal removeAllObjects];
}


+ (NSInteger)homepageAirPartlyDownloadNorthExpect {
    return [self.onlineHowInstance homepageAirPartlyDownloadNorthExpect];
}

- (NSUInteger)homepageAirPartlyDownloadNorthExpect {
    return self.notReceiptNativeNearestTotal.count;
}


+ (NSString *)recordingName {
    if (NSThread.isMainThread) {
        return @"";
    }else {
        NSString *label = [NSString stringWithCString:dispatch_queue_get_label(DISPATCH_CURRENT_QUEUE_LABEL) encoding:NSUTF8StringEncoding];
        return label ?: NSThread.currentThread.name;
    }
}


+ (void)underMove:(WrongLevel)zb_level
          roleBad:(const char *)roleBad
      breakingPan:(const char *)breakingPan
          anyPlan:(NSUInteger)anyPlan
       slantEqual:(id)slantEqual
        artNordic:(NSString *)artNordic, ... {
    va_list args;
    
    if (artNordic) {
        va_start(args, artNordic);
        
        NSString *canLenient = [[NSString alloc] initWithFormat:artNordic arguments:args];
        
        va_end(args);
        
        va_start(args, artNordic);
        
        [self.onlineHowInstance installActionMaleMediaTextured:zb_level
                                   canLenient:canLenient
                                    dailySnow:[self recordingName]
                                      roleBad:[NSString stringWithFormat:@"%s", roleBad]
                                  breakingPan:[NSString stringWithFormat:@"%s", breakingPan]
                                      anyPlan:anyPlan
                                   slantEqual:slantEqual];
        
        va_end(args);
    }
}


- (void)installActionMaleMediaTextured:(WrongLevel)zb_level
              canLenient:(NSString *)canLenient
               dailySnow:(NSString *)dailySnow
                 roleBad:(NSString *)roleBad
             breakingPan:(NSString *)breakingPan
                 anyPlan:(NSUInteger)anyPlan
              slantEqual:(id)slantEqual {
    
    for (BeginInsideAfterMainVitality *postSon in self.notReceiptNativeNearestTotal) {
        
        NSString *kilowattManMessage;
        
        if (!postSon.magnetic) continue;
        
        kilowattManMessage = kilowattManMessage == nil ? canLenient : kilowattManMessage;
        
        if ([postSon nauticalBloodModernStreamedArmourCombined:zb_level aborted:roleBad breakingPan:breakingPan canLenient:canLenient]) {
            
            NSString *roomBurst = kilowattManMessage == nil ? canLenient :kilowattManMessage;
            
            NSString *skin = [self tagFoodHintSay:breakingPan];
            
            if (postSon.givenGreenEveryConditionSmall) {
                dispatch_async(postSon.magnetic, ^{
                    [postSon beatSpa:zb_level useNow:roomBurst dailySnow:dailySnow roleBad:roleBad breakingPan:skin anyPlan:anyPlan
                          slantEqual:slantEqual];
                });
            }else {
                dispatch_sync(postSon.magnetic, ^{
                    [postSon beatSpa:zb_level useNow:roomBurst dailySnow:dailySnow roleBad:roleBad breakingPan:skin anyPlan:anyPlan
                          slantEqual:slantEqual];
                });
            }
        }
    }
}

- (NSString *)tagFoodHintSay:(NSString *)breakingPan {
    NSString *skin = breakingPan;
    NSRange soundSum = [skin rangeOfString:@"("];
    
    if (soundSum.location != NSNotFound) {
        skin = [skin substringToIndex:soundSum.location];
    }
    skin = [skin stringByAppendingString:@"()"];
    return skin;
}

@end
