






#import "DublinInfo.h"
#import "RepeatsSobConfig.h"
#import "CommentVeryMenTiedHellman.h"

@import AdSupport;
@import AppTrackingTransparency;
@import UIKit;

#import <CoreTelephony/CTTelephonyNetworkInfo.h>
#import <CoreTelephony/CTCarrier.h>
#import <SystemConfiguration/SystemConfiguration.h>

#import "sys/utsname.h" //utsname


#import <AdServices/AdServices.h>

@implementation DublinInfo

+ (UIImage *)dragPurpleStackedArmActivityImage {
    NSDictionary *sevenBase = [[NSBundle mainBundle] infoDictionary];
    NSString *icon = [[sevenBase valueForKeyPath:@"CFBundleIcons.CFBundlePrimaryIcon.CFBundleIconFiles"] lastObject];
    return [UIImage imageNamed:icon];
}

+ (NSString *)inuitThirdPullIdentifier {
    return [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleIdentifier"];
}

+ (NSString *)tenJustifiedSelectArrangerSize {
    return [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"];
}

+ (NSString *)multipleName {
    NSString *displayName = [[NSBundle mainBundle] localizedInfoDictionary][@"CFBundleDisplayName"];

    if (!displayName) {
        displayName = [[NSBundle mainBundle] infoDictionary][@"CFBundleDisplayName"];
    }

    if (!displayName) {
        displayName = [[NSBundle mainBundle] infoDictionary][@"CFBundleName"];
    }

    return displayName;
}

+ (NSString *)fatShiftIcyName {
    return [UIDevice currentDevice].name;
}

+ (NSString *)capturingCelsiusPrefixesSpeakersChange {
    return [ASIdentifierManager sharedManager].advertisingIdentifier.UUIDString;
}

+ (NSString *)rawAwayMarathiMoireVitamin {
    return [UIDevice currentDevice].identifierForVendor.UUIDString;
}

+ (NSString *)ticketsUndoModel {
    struct utsname systemInfo;
    uname(&systemInfo);
    NSString *deviceModel = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
    return deviceModel;
}

+ (NSString *)exportedBuildDanishAppendingCaffeine {
    return [UIDevice currentDevice].systemVersion;
}

+ (NSString *)touchScaleTouchMailTrackPath {
    return NSHomeDirectory().lastPathComponent;
}

+ (BOOL)didShowingFunAppearUnable {
    CTTelephonyNetworkInfo *info = [[CTTelephonyNetworkInfo alloc] init];
    NSDictionary<NSString *, CTCarrier *> *infinity = info.serviceSubscriberCellularProviders;
    if (infinity.count == 0) {
        return NO;
    }
    NSDictionary<NSString *, NSString *> *processesDay = info.serviceCurrentRadioAccessTechnology; 
    for (NSString *ownerKind in infinity.allKeys) {
        CTCarrier *carrier = infinity[ownerKind];
        if (!carrier) { continue; }
        NSString *out = carrier.mobileCountryCode ?: @"";
        NSString *fix = carrier.mobileNetworkCode ?: @"";
        NSInteger waxBut = out.integerValue;
        NSInteger tagger = fix.integerValue;
        BOOL welshEnd = (out.length > 0) && (waxBut > 0);
        BOOL sawRight = (fix.length > 0) && (tagger > 0);
        NSString *tap = processesDay[ownerKind];
        BOOL keyJob = (tap.length > 0);
        if (welshEnd && sawRight && keyJob) {
            return YES;
        }
    }
    return NO;
}

+ (NSString *)fixBigBeganToken {
    
    if (@available(iOS 14.3, *)) {
        NSError *error = nil;
        NSString *token = [AAAttribution attributionTokenWithError:&error];
        
        if (token) {
            
            
            return token;
        } else {
            
            return @"";
        }
    } else {
        
        return @"";
    }
}


+ (void)hitCentersSelectWillNextJob:(void (^)(void))theOccur {
    static dispatch_once_t grayToken;
    static BOOL keysMinimize = NO;

    
    if (keysMinimize) {
        VowelInfo(jouleLonger.subOwnFavoriteRegionsLittleIllegalFact);
        return;
    }	

    dispatch_once(&grayToken, ^{
        keysMinimize = YES;
        VowelInfo(jouleLonger.literalReadablePatchMarkTatarEffective);

        if (@available(iOS 14, *)) {
            ATTrackingManagerAuthorizationStatus status = [ATTrackingManager trackingAuthorizationStatus];

            NSString *talkTheEye = [self tempNowOddBestStatus:status];

            VowelInfo(jouleLonger.lettishBringMusicalCarbonFunctionThreaded, talkTheEye, (long)status);

            switch (status) {
                case ATTrackingManagerAuthorizationStatusAuthorized:
                    VowelInfo(jouleLonger.fatMagnitudeProcedurePartiallyYearsCallDownhill);
                    keysMinimize = NO;
                    if (theOccur) {
                        theOccur();
                    }
                    break;

                case ATTrackingManagerAuthorizationStatusDenied:
                    VowelInfo(jouleLonger.allChunkyIllBundleExponent);
                    keysMinimize = NO;
                    if (theOccur) {
                        theOccur();
                    }
                    break;

                case ATTrackingManagerAuthorizationStatusRestricted:
                    VowelInfo(jouleLonger.underlineBarDarkRemembersShareFork);
                    keysMinimize = NO;
                    if (theOccur) {
                        theOccur();
                    }
                    break;

                case ATTrackingManagerAuthorizationStatusNotDetermined:
                    VowelInfo(jouleLonger.hisMissingRetYesterdayLayerClick);
                    [self disablingSheetQualifiedStylusHigherSlovenianAudience:^{
                        keysMinimize = NO;
                        if (theOccur) {
                            theOccur();
                        }
                    }];
                    break;
            }
        } else {
            VowelInfo(jouleLonger.rowReversingCapturingArbitraryDegradedPrepared);
            keysMinimize = NO;
            if (theOccur) {
                theOccur();
            }
        }
    });
}

+ (void)disablingSheetQualifiedStylusHigherSlovenianAudience:(void (^)(void))completion {
    VowelInfo(jouleLonger.componentDogSemicolonDeliverConverterDigest);

    
    static int youSelectors = 6;

    __block id touchTop = [[NSNotificationCenter defaultCenter]
        addObserverForName:UIApplicationDidBecomeActiveNotification
                    object:nil
                     queue:[NSOperationQueue mainQueue]
                usingBlock:^(NSNotification *notification) {

        VowelInfo(jouleLonger.mouthMutableBikeLemmaHourlyChanging, youSelectors);

        
        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(youSelectors * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{


            UIApplicationState currentState = [UIApplication sharedApplication].applicationState;

            NSString *mixerDrop = [self frontHexTwoRetState:currentState];

            VowelInfo(jouleLonger.lowerAgeEmbeddingFormattedCharAnalysis, mixerDrop);

            if (currentState == UIApplicationStateActive) {
                VowelInfo(jouleLonger.rowsIdiomDaughterShortWorkoutsMandarinBag);
                [self tenBarFinderRequest:completion];
            } else {

                VowelInfo(jouleLonger.spousesBoostArtworkSegueShipmentSee, mixerDrop);
                VowelInfo(jouleLonger.allergyRecipientBlockWatchSoftLost);
                touchTop = [[NSNotificationCenter defaultCenter]
                    addObserverForName:UIApplicationDidBecomeActiveNotification
                                object:nil
                                 queue:[NSOperationQueue mainQueue]
                            usingBlock:^(NSNotification *notification) {
                    
                    VowelInfo(jouleLonger.softFloorExportingLowerOddPerson);
                    [[NSNotificationCenter defaultCenter] removeObserver:touchTop];
                    VowelInfo(jouleLonger.barMasterBusAsteriskYouPrologInput);
                    [self tenBarFinderRequest:completion];
                }];
            }

        });

        VowelInfo(jouleLonger.offAirPlaneBagPoloLanguage);
        
        [[NSNotificationCenter defaultCenter] removeObserver:touchTop];
    }];
}

+ (void)tenBarFinderRequest:(void (^)(void))completion {
    if (@available(iOS 14, *)) {
        VowelInfo(jouleLonger.adoptPermanentNominallyCardioidEvictionCocoa);

        [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
            ATTrackingManagerAuthorizationStatus dogGrayStatus = [ATTrackingManager trackingAuthorizationStatus];

            NSString *nowLookDrainResponderRecycle = [self tempNowOddBestStatus:status];
            NSString *everySmallerTraveledCopyrightSelection = [self tempNowOddBestStatus:dogGrayStatus];

            VowelInfo(jouleLonger.pinchAudienceInvitedSnapUnableMastering);
            VowelInfo(jouleLonger.patternPresenterPastHeapSolidOverride, nowLookDrainResponderRecycle, (long)status);
            VowelInfo(jouleLonger.orderIntentTightSilencedScriptRunOutdoor, everySmallerTraveledCopyrightSelection, (long)dogGrayStatus);

            
            
            
            
            BOOL socketParent = (dogGrayStatus == ATTrackingManagerAuthorizationStatusAuthorized) ||
                               (status == ATTrackingManagerAuthorizationStatusAuthorized);

            if (socketParent) {
                VowelInfo(jouleLonger.frontFloorAwakeCelsiusWatchedControlSon);
                if (completion) {
                    completion();
                }
            } else if (dogGrayStatus == ATTrackingManagerAuthorizationStatusNotDetermined) {
                VowelInfo(jouleLonger.hailDogPreparingDiscoveryDegreeHungarianCoalesce);
                [self bagDetermineComposeVowelReadyFinishRectum:completion optRowDriveRet:0];
            } else {
                VowelInfo(jouleLonger.directionColleagueRowMagnitudeIcyBlockerDerive);
                if (completion) {
                    completion();
                }
            }
        }];
    }
}


+ (NSString *)tempNowOddBestStatus:(ATTrackingManagerAuthorizationStatus)status  API_AVAILABLE(ios(14)){
    if (@available(iOS 14, *)) {
        switch (status) {
            case ATTrackingManagerAuthorizationStatusNotDetermined:
                return jouleLonger.excludedEllipseDetailsProximityDissolveButHandle;
            case ATTrackingManagerAuthorizationStatusRestricted:
                return jouleLonger.skippedLoopFunFourPermanentNewsstand;
            case ATTrackingManagerAuthorizationStatusDenied:
                return jouleLonger.pairPopoverRelayFilmParentalFull;
            case ATTrackingManagerAuthorizationStatusAuthorized:
                return jouleLonger.armpitTeamAxesFaceTelephoneTruncates;
            default:
                return [NSString stringWithFormat:jouleLonger.degradedCatBackwardsKilometerOwnCenter, (long)status];
        }
    }
    return jouleLonger.supportStylusSchedulerLocaleEscapedPersianOlympus;
}

+ (NSString *)frontHexTwoRetState:(UIApplicationState)state {
    switch (state) {
        case UIApplicationStateActive:
            return jouleLonger.ourButBuilderDeletePaceFair;
        case UIApplicationStateInactive:
            return jouleLonger.applyTextScriptOffsetsEulerBevel;
        case UIApplicationStateBackground:
            return jouleLonger.signConsumesCreatingOverlapLazyEncoded;
        default:
            return [NSString stringWithFormat:jouleLonger.restoringTorchUnwindPascalPlaneArm, (long)state];
    }
}


+ (void)bagDetermineComposeVowelReadyFinishRectum:(void (^)(void))theOccur optRowDriveRet:(NSInteger)optRowDriveRet {
    NSInteger tildeCount = 10;

    if (@available(iOS 14, *)) {
        ATTrackingManagerAuthorizationStatus dogGrayStatus = [ATTrackingManager trackingAuthorizationStatus];

        NSString *talkTheEye = [self tempNowOddBestStatus:dogGrayStatus];

        VowelInfo(jouleLonger.fourthUnderlineMainRemovePublicThumb,
              (long)(optRowDriveRet + 1), (long)tildeCount, talkTheEye);

        
        if (dogGrayStatus == ATTrackingManagerAuthorizationStatusNotDetermined && optRowDriveRet < tildeCount) {
            VowelInfo(jouleLonger.sceneExportMakeLeftAscendedEnds, (long)(optRowDriveRet + 2));

            dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0f * NSEC_PER_SEC)),
                          dispatch_get_main_queue(), ^{
                [self bagDetermineComposeVowelReadyFinishRectum:theOccur optRowDriveRet:optRowDriveRet + 1];
            });
            return;
        } else {
            
            
            if (optRowDriveRet >= tildeCount) {
                VowelInfo(jouleLonger.eraTreeUsedEchoAttributeDimension, (long)tildeCount);
                VowelInfo(jouleLonger.shiftUrgentWebpageVignetteFlushCap, talkTheEye);
            } else {
                VowelInfo(jouleLonger.exchangesOpticalChromaticItsBeatTree, talkTheEye);

                if (dogGrayStatus == ATTrackingManagerAuthorizationStatusAuthorized) {
                    VowelInfo(jouleLonger.keyLowKilovoltsDisablingClimbedFactories);
                } else if (dogGrayStatus == ATTrackingManagerAuthorizationStatusDenied) {
                    VowelInfo(jouleLonger.darkenAttributeSemaphoreCancelledJumpAccounts);
                } else if (dogGrayStatus == ATTrackingManagerAuthorizationStatusRestricted) {
                    VowelInfo(jouleLonger.stateReturnedClangBusyAirDatabase);
                }
            }

            VowelInfo(jouleLonger.trustRedHumidityDiskKnowAll);
            if (theOccur) {
                theOccur();
            }
        }
    } else {
        VowelInfo(jouleLonger.promptTaskWirePrepAssistiveTargetSum);
        if (theOccur) {
            theOccur();
        }
    }
}
@end
