







#import "SheFitFoldOnlyCell.h"
#define maleDog(odd) __weak typeof(odd) weak##odd = odd;
#define stakeQuit(odd) __strong typeof(odd) odd = weak##odd;

@interface SheFitFoldOnlyCell()



@property (nonatomic, strong) NSTimer *noise;

@property (nonatomic, assign) BOOL resetFoundName;

@end

@implementation SheFitFoldOnlyCell

- (instancetype)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:CGRectZero];
    if (self) {
        
        _fitnessSize = CGSizeMake(200, 40);
        _subBringRoom = 4;
        _model = nil;
        _channelCount = 3;
        _fourth = 0;
        _bodyLossBitTap = 0;
        _status = OverArtsPublicSeparateRadiansLaw;
        _resetFoundName = NO;
        
    }
    return self;
}

- (void)concludeSuccessWorkingFeetMagicValue
{
    CGFloat quickMap = [[self.layer presentationLayer] frame].origin.x;
    CGFloat slabSheWidth = self.frame.size.width;
    
    
    CGFloat speed = (self.superview.frame.size.width + slabSheWidth) / self.subBringRoom;
    
    
    CGFloat sinFutureTime = slabSheWidth / speed;
    
    if (_bodyLossBitTap > 0) {
        self.status = OurSuccessThumbSpaRepublicDownloads;
        if (-1< quickMap < 1) {
            
            if (_resetFoundName) { return;}
            _resetFoundName = YES;
            [self pause];
            [self performSelector:@selector(resume) withObject:nil afterDelay:_bodyLossBitTap];
            [self performSelector:@selector(upsideStatus) withObject:nil afterDelay:_bodyLossBitTap - sinFutureTime];
        }
    }
}
- (void)upsideStatus
{
    self.status = TipExecEqualityBigSliceMonotonic;
}

- (void)telephonySharpnessUndefinedSizeWith:(void(^)(void))animations completion:(void(^)(BOOL))completion
{
    self.status = TipExecEqualityBigSliceMonotonic;
    
    _noise = [NSTimer timerWithTimeInterval:0.01 target:self selector:@selector(concludeSuccessWorkingFeetMagicValue) userInfo:nil repeats:YES];
    [[NSRunLoop currentRunLoop] addTimer:_noise forMode:NSRunLoopCommonModes];
    
    
    maleDog(self);
    [UIView animateWithDuration:self.subBringRoom delay:0 options:(UIViewAnimationOptionCurveLinear | UIViewAnimationOptionAllowUserInteraction) animations:^{
        
        if (animations) {
            animations();
        }
        
    } completion:^(BOOL finished) {
        stakeQuit(self);
        self->_status = TipExecEqualityBigSliceMonotonic;
        
        if (completion) {
            completion(finished);
        }
        
        if(self->_noise) {
            [self->_noise invalidate];
            self->_noise = nil;
        }
        
    }];
}

- (void)pause
{
    
    CFTimeInterval priceTime = [self.layer convertTime:CACurrentMediaTime() fromLayer:nil];
    
    
    self.layer.timeOffset = priceTime;
    
    
    self.layer.speed = 0;
}

- (void)resume
{
    
    CFTimeInterval priceTime = self.layer.timeOffset;
    
    CFTimeInterval hasFlatPairWin = CACurrentMediaTime() - priceTime;
    
    self.layer.timeOffset = 0;
    
    self.layer.beginTime = hasFlatPairWin;
    
    self.layer.speed = 1;
}


@end
