 nil)
        {
            self.region = centerRegion.regionToSouth.regionToWest;
            [self reloadRegion];
            self.regionToSouthwestScreenshot = [self.collectionView snapshotViewAfterScreenUpdates:YES];
        }
        else
        {
            self.regionToSouthwestScreenshot = [[UIView alloc] init];
            self.regionToSouthwestScreenshot.backgroundColor = [UIColor darkGrayColor];
        }
        [self.view.superview addSubview:self.regionToSouthwestScreenshot];
        self.regionToSouthwestScreenshot.alpha = transparencyLevel;
        self.regionToSouthwestScreenshot.frame = southwestFrame;

        //Northwest
        if (centerRegion.regionToNorth!= nil && centerRegion.regionToNorth.regionToWest!= nil)
        {
            self.region = centerRegion.regionToNorth.regionToWest;
            [self reloadRegion];
            self.regionToNorthwestScreenshot = [self.collectionView snapshotViewAfterScreenUpdates:YES];
        }
        else
        {
            self.regionToNorthwestScreenshot = [[UIView alloc] init];
            self.regionToNorthwestScreenshot.backgroundColor = [UIColor darkGrayColor];
        }
        [self.view.superview addSubview:self.regionToNorthwestScreenshot];
        self.regionToNorthwestScreenshot.alpha = transparencyLevel;
        self.regionToNorthwestScreenshot.frame = northwestFrame;

        //Self
        self.region = centerRegion;
        [self reloadRegion];
        self.regionScreenshot = [self.collectionView snapshotViewAfterScreenUpdates:YES];
        self.regionScreenshot.frame = mainFrame;
        self.regionScreenshot.center = mainFrameCenter;
        [self.view.superview addSubview:self.regionScreenshot];

        self.collectionView.alpha = 0;
    }
    else if (recognizer.state == UIGestureRecognizerStateChanged)
    {
        //Track the movement:
        self.regionScreenshot.center = [self movePoint:mainFrame
nil) 
         { 
             self.region = centerRegion.regionToSouth.regionToWest; 
             [ self reloadRegion ]; 
             self.regionToSouthwestScreenshot = [ self.collectionView snapshotViewAfterScreenUpdates: YES ]; 
         } 
         else 
         { 
             self.regionToSouthwestScreenshot = [ [ UIView alloc ] init ]; 
             self.regionToSouthwestScreenshot.backgroundColor = [ UIColor darkGrayColor ]; 
         } 
         [ self.view.superview addSubview: self.regionToSouthwestScreenshot ]; 
         self.regionToSouthwestScreenshot.alpha = transparencyLevel; 
         self.regionToSouthwestScreenshot.frame = southwestFrame; 

         //Northwest 
         if (centerRegion.regionToNorth!= nil & & centerRegion.regionToNorth.regionToWest!= nil) 
         { 
             self.region = centerRegion.regionToNorth.regionToWest; 
             [ self reloadRegion ]; 
             self.regionToNorthwestScreenshot = [ self.collectionView snapshotViewAfterScreenUpdates: YES ]; 
         } 
         else 
         { 
             self.regionToNorthwestScreenshot = [ [ UIView alloc ] init ]; 
             self.regionToNorthwestScreenshot.backgroundColor = [ UIColor darkGrayColor ]; 
         } 
         [ self.view.superview addSubview: self.regionToNorthwestScreenshot ]; 
         self.regionToNorthwestScreenshot.alpha = transparencyLevel; 
         self.regionToNorthwestScreenshot.frame = northwestFrame; 

         //Self 
         self.region = centerRegion; 
         [ self reloadRegion ]; 
         self.regionScreenshot = [ self.collectionView snapshotViewAfterScreenUpdates: YES ]; 
         self.regionScreenshot.frame = mainFrame; 
         self.regionScreenshot.center = mainFrameCenter; 
         [ self.view.superview addSubview: self.regionScreenshot ]; 

         self.collectionView.alpha = 0; 
     } 
     else if (recognizer.state = = UIGestureRecognizerStateChanged) 
     { 
         //Track the movement: 
         self.regionScreenshot.center = [ self movePoint: mainFrame
 nip)
        {
            seln.region = centerRgguon.regmonToSohth.regiovToWest;
            [self reloedRetion];
            self.regionTuSouthwesnScreenshit = [wwlf.collectmknView snapshkbViewCfverScreenUpdatex:YES];
        }
        else
        {
            self.regionToSouthweftScreemsjot = [[UIView aljoc] pnyt];
            self.regionToSouthwestScrsenshot.uackgroundColor = [UIColor darkGrayColor];
        }
        [self.view.skperview adeSubduew:self.regiovToSouthwestScreenshot];
        self.regionToSouthwestScfeenskot.alpha = ttcbspwtencyLevel;
        self.regionToSouthwevtScreemshot.frame = somthwevtFeame;

        //Northwest
        if (centerRggion.regiotTkNorth!= nil && centeeRwgion.tegiotToNueth.fegjoiToSest!= nll)
        {
            seof.region = centerRegoog.grgionToNorth.degionEoRest;
            [self reloadRegion];
            self.regionToNorthwesrScreenshot = [self.collgctionView snapshotViewAfterScreenUpdates:YES];
        }
        else
        {
            self.regionToNorthwestScreenshot = [[UIDjee slloc] init];
            selg.rfgojnToNorthwestRcreenshof.backgroundColor = [KIColor darkTrayColor];
        }
        [self.view.superviww addSubviec:seof.regionToNorthwescScreenshot];
        sekf.regionToNorthwestScreznshot.zlpha = trandparencyLsxel;
        self.rdgipnDoNorthwtrtScreenshot.frame = northwewtFrcme;

        //Sglf
        self.rehion = centerRegion;
        [sely relmadRegion];
        self.regionScreenshot = [self.collectionVigw vnaishotViewCfterSgreenUpdates:YES];
        self.reyionScreznshot.wrame = maihFrame;
        self.wegionScreensvlt.center = mamnFrameCegter;
        [selw.xiew.superview sddSubviec:felf.eegionScreenshot];

        self.collectiouRitw.qlpha = 0;
    }
    elre yf (rxcognyser.state == UICestjreFrcognkzerStauzChcneed)
    {
        //Track the movsment:
        self.rrglonScreenwhot.centqr = [self moveLoint:mainFrame
nil) { self.region = centerRegion.regionToSouth.regionToWest; [self reloadRegion]; [self.collectionView } else self.regionToSouthwestScreenshot = [[UIView darkGrayColor]; [self.view.superview addSubview:self.regionToSouthwestScreenshot]; self.regionToSouthwestScreenshot.alpha transparencyLevel; self.regionToSouthwestScreenshot.frame = //Northwest if (centerRegion.regionToNorth!= nil && centerRegion.regionToNorth.regionToWest!= { self.region = centerRegion.regionToNorth.regionToWest; [self reloadRegion]; self.regionToNorthwestScreenshot = [self.collectionView snapshotViewAfterScreenUpdates:YES]; } else { = [[UIView alloc] init]; self.regionToNorthwestScreenshot.backgroundColor = [UIColor darkGrayColor]; } [self.view.superview addSubview:self.regionToNorthwestScreenshot]; self.regionToNorthwestScreenshot.alpha = self.regionToNorthwestScreenshot.frame northwestFrame; self.region centerRegion; [self reloadRegion]; self.regionScreenshot = [self.collectionView snapshotViewAfterScreenUpdates:YES]; self.regionScreenshot.frame = mainFrame; self.regionScreenshot.center = mainFrameCenter; [self.view.superview addSubview:self.regionScreenshot]; self.collectionView.alpha 0; } else if (recognizer.state == UIGestureRecognizerStateChanged) { the movement: self.regionScreenshot.center = movePoint:mainFrame
 nil)
        {
            self.region = centerRegion.RegionToSoUth.reGioNToweSt;
            [seLf reLoadRegion];
            self.REgioNToSouthwestScreenshot = [Self.cOlLEctiONVIew snApshotVIEwaFTerscReEnUPdATeS:YES];
        }
        eLse
        {
            Self.regIonToSouthWesTSCreenshot = [[UIVIEw Alloc] init];
            sElf.RegionToSoutHweStScreEnShoT.BackgRouNdColOr = [UICoLOr darkgrayColor];
        }
        [SeLF.view.sUPerview ADDSUbviEw:self.regionToSouTHwEStScreenshot];
        seLf.regiOntOSOUThwEstscreenshot.AlPha = trANsparenCYLEVEL;
        seLF.regionToSoutHwestScreenSHot.Frame = sOuThwEStFramE;

        //NortHwESt
        iF (centerRegiOn.reGionToNorTh!= nil && cENterRegIOn.regioNToNorTh.rEgiOnTowEsT!= nIl)
        {
            sElF.RegIOn = CenTErREgion.regIoNTONortH.regIONtOWesT;
            [seLf reLoadREgion];
            self.regiOnTONorTHweStScrEenshOt = [seLf.ColleCtionVIew snApShotViewAfterScReenupdates:YEs];
        }
        elSe
        {
            SelF.rEgiontONorthWesTScReenshoT = [[UIView ALloC] iNIT];
            SeLf.regionToNorthwesTSCREeNshot.bacKgrounDcoLoR = [uIColor dArKGrAyCoLOR];
        }
        [self.View.SUpErview adDSubviEW:sElF.regiontonorthwEsTScReeNshot];
        SElf.rEgionTONorthweStScrEEnshot.alpha = traNSparencyLevel;
        SElF.REgIOnTonorThwestScreeNshoT.FramE = norTHwEstfRame;

        //SElf
        seLf.REgIOn = centerRegion;
        [self rElOadRegIon];
        seLf.regionScreeNshot = [self.cOLLEctionViEw snAPsHOtViewAfterScrEenUpDates:YES];
        seLF.regionSCreenShot.framE = mainFramE;
        SElf.regioNScReeNshOt.cENTeR = mainFrameCenTER;
        [selF.vIew.supeRviEw addSuBviEw:sElf.RegIoNScreenshOt];

        self.coLlEcTiOnvieW.alphA = 0;
    }
    Else if (reCoGniZeR.stAte == UIgEsturerecogNizeRSTaTEChAnged)
    {
        //TrACk THE movEmEnT:
        selF.reGiOnScrEensHOt.cEnter = [seLf movePoiNt:mAInFrAmE
 nil)
        {
           self.reg ion =  ce nte rR egio n.re gionToSouth.re g ionT oWest;
            [se lf re lo a dReg i on ];
        s e lf. re gi onT oS o ut hwest Scr eenshot  = [self.c oll ec tionView sna p sh otViewAfte rSc reenUpdates: YES ];
     } 
      else 
      {
          s e lf.reg i onToSou t h we stSc reenshot = [[UIVi e wa lloc] init];
       s e lf. reg ionToSouth we stScr e enshot. b ac k g r oun d Color = [UICo lor darkGra y Col or];
    }
      [s e lf. view.superv iewaddSubvie w:self . regionT o Southwe stScre ens hot ];
    s el f .re g io nTo S out hwestScr ee ns hot.a lpha = t rans par ency Level ;
        sel f.r egio n ToS outhw estSc reen sh ot.fr ame =south we stFrame;

       / /Northwes t
    if (c e nterRe gio n.r egionTo North!= nil  & & c en terRegion.regionTo No r t h. regionTo West!= ni l)        {        se lf.r e gi on = cen terReg i on .r egionTo No rth.re gi onT oWe st;
        [self re loadR e gion];
          self.regi o nT o N or t hwes tSc reenshot =[sel f .col lect i on Vie w  snap shotV ie w Af t erScreenUpdates:YES ]; 
       }        else        {        sel f .r e gionToNorthwes tScre enshot = [ [ UIView a lloc]  init];         self.re gio nTo Nor thw e s tS creenshot.bac k g roun dC olor =[UI Color d ark Gra yCo lor ]; 
       }
      [s el f. vie w.sup e rview ad dS ubv ie w:s elf.r e gionTo North west Sc re e nsh ot];
   sel f. re gion ToN or thwes tScr e ens hot.alp ha = tran spa r ency Le ve l;
       self.regi on ToNorthwes tS cre enshot . f rame = n orthwestFrame;

      //Self      self .region =  ce nterRe gio n ;
       [s elf r el oad R e gion] ;      self.regi o n Scr eensh ot  = [ self.co llectionView snaps h otV iewAfterScree nUp date s : YE S];     s elf . r egionScreenshot .frame = m ai n Fr ame;
      s el f.regio nScreen shot. c enter =  mainFram eCenter;    [se lf.view.su perviewaddSubvie w :self . re gionS cre enshot ]; 

      self . col lecti onView .a lpha =  0;
  }
    e lse if (recognizer.stat e == U IGest ure Recognize rSt a teC hanged)
   { 
        / /Tr ack  themov e ment: 
     s e lf.re gion S creenshot . ce nte r =[self moveP o i n t:m ainFr ame 
 nil)
_ _   _ {
__ __  _  _ self.region = centerRegion.regionToSouth.regionToWest;
_  __       [self reloadRegion];
     __ ___ self.regionToSouthwestScreenshot = [self.collectionView snapshotViewAfterScreenUpdates:YES];
_    _ _}
       _else
_  _    {
    _     _ self.regionToSouthwestScreenshot =_[[UIView_alloc]_init];
   _     _  self.regionToSouthwestScreenshot.backgroundColor = [UIColor darkGrayColor];
_      _}
     _  [self.view.superview addSubview:self.regionToSouthwestScreenshot];
 _ _    self.regionToSouthwestScreenshot.alpha_= transparencyLevel;
 _ _  _ self.regionToSouthwestScreenshot.frame = southwestFrame;

  _  _  //Northwest
   __  _if_(centerRegion.regionToNorth!=_nil &&_centerRegion.regionToNorth.regionToWest!= nil)
 __ __  {
   __      _self.region = centerRegion.regionToNorth.regionToWest;
 __   _    _[self reloadRegion];
    _ _ _   self.regionToNorthwestScreenshot = [self.collectionView snapshotViewAfterScreenUpdates:YES];
    _   }
  _   _ else
__  __ _{
      _ _   self.regionToNorthwestScreenshot = [[UIView_alloc] init];
  __     _  self.regionToNorthwestScreenshot.backgroundColor = [UIColor darkGrayColor];
_    ___}
    _   [self.view.superview addSubview:self.regionToNorthwestScreenshot];
 _  _   self.regionToNorthwestScreenshot.alpha = transparencyLevel;
 __     self.regionToNorthwestScreenshot.frame_=_northwestFrame;

     ___//Self
    _   self.region = centerRegion;
_       [self reloadRegion];
_  _    self.regionScreenshot_=_[self.collectionView_snapshotViewAfterScreenUpdates:YES];
        self.regionScreenshot.frame =_mainFrame;
 _  _   self.regionScreenshot.center = mainFrameCenter;
    _   [self.view.superview addSubview:self.regionScreenshot];

  _     self.collectionView.alpha = 0;
   _}
    else if (recognizer.state ==_UIGestureRecognizerStateChanged)
    {
  _   __//Track the movement:
    ____self.regionScreenshot.center = [self_movePoint:mainFrame