title: Swift Specialised Crash on UICollectionView cellForItemAtIndexPath
body: <p>Crashlytics is giving me the following stacktrace.
  The crash happens inconsistently. Happens on all iOS 9 devices but very infrequently. Unable to figure out the source of the problem. 
  Has not happened on any of the devices I have, been trying to crash for the last 3 days.</p>
  
  <pre><code>Crashed: com.apple.main-thread
  0  cherish                        0x10014ee18 specialized PersonalizeViewController.collectionView(UICollectionView, cellForItemAtIndexPath : NSIndexPath) -&gt; UICollectionViewCell (PersonalizeViewController.swift:159)
  1  cherish                        0x1001497f0 @objc PersonalizeViewController.collectionView(UICollectionView, cellForItemAtIndexPath : NSIndexPath) -&gt; UICollectionViewCell (PersonalizeViewController.swift)
  2  UIKit                          0x188aef3a8 &lt;redacted&gt; + 432
  3  UIKit                          0x188311adc &lt;redacted&gt; + 4628
  4  UIKit                          0x18830c808 &lt;redacted&gt; + 228
  5  UIKit                          0x1882a81e4 &lt;redacted&gt; + 656
  6  QuartzCore                     0x185c3a994 &lt;redacted&gt; + 148
  7  QuartzCore                     0x185c355d0 &lt;redacted&gt; + 292
  8  QuartzCore                     0x185c35490 &lt;redacted&gt; + 32
  9  QuartzCore                     0x185c34ac0 &lt;redacted&gt; + 252
  10 QuartzCore                     0x185c34820 &lt;redacted&gt; + 500
  11 QuartzCore                     0x185c2dde4 &lt;redacted&gt; + 80
  12 CoreFoundation                 0x183104728 &lt;redacted&gt; + 32
  13 CoreFoundation                 0x1831024cc &lt;redacted&gt; + 372
  14 CoreFoundation                 0x1831028fc &lt;redacted&gt; + 928
  15 CoreFoundation                 0x18302cc50 CFRunLoopRunSpecific + 384
  16 GraphicsServices               0x184914088 GSEventRunModal + 180
  17 UIKit                          0x188316088 UIApplicationMain + 204
  18 cherish                        0x100142a50 main (AppDelegate.swift:19)
  19 libdispatch.dylib              0x182bca8b8 (Missing)
  </code></pre>
  
  <p>The code where it crashes is:</p>
  
  <pre><code>func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -&gt; UICollectionViewCell {
          if collectionView.tag == 1 {
              (---crash line---) let cell = select_date_collection_view.dequeueReusableCellWithReuseIdentifier(PERSONALIZE_SELECT_DATE_COLLECTION_CELL_IDENTIFIER, forIndexPath: indexPath) as! SelectDateCollectionViewCell 
              // Some changes to cell objects
              return cell
          } else if collectionView.tag == 2 {
              let cell = select_time_collection_view.dequeueReusableCellWithReuseIdentifier(PERSONALIZE_SELECT_TIME_COLLECTION_CELL_IDENTIFIER, forIndexPath: indexPath) as! SelectTimeCollectionViewCell
              // Some changes to cell objects
              return cell
          } else if collectionView.tag == 3 {
              let cell = add_customization_collection_view.dequeueReusableCellWithReuseIdentifier(PERSONALIZE_ADD_CUSTOMIZATION_COLLECTION_CELL_IDENTIFIER, forIndexPath: indexPath) as! AddCustomizationCollectionViewCell
              // Some changes to cell objects
              return cell
          }
  
          let cell: UICollectionViewCell = UICollectionViewCell()
          return cell
      }
  </code></pre>
  
  <p>Have initialized all the collection views in the viewDidLoad()</p>
  
  <pre><code>        select_date_collection_view.registerNib(UINib(nibName: "SelectDateCollectionViewCell", bundle: nil), forCellWithReuseIdentifier: PERSONALIZE_SELECT_DATE_COLLECTION_CELL_IDENTIFIER)
          select_date_collection_view.tag = 1
          select_date_collection_view.dataSource = self
          select_date_collection_view.delegate = self
          select_date_collection_view.showsHorizontalScrollIndicator = false
          select_date_collection_view.showsVerticalScrollIndicator = false
          select_date_collection_view.reloadData()
  
          select_time_collection_view.registerNib(UINib(nibName: "SelectTimeCollectionViewCell", bundle: nil), forCellWithReuseIdentifier: PERSONALIZE_SELECT_TIME_COLLECTION_CELL_IDENTIFIER)
          select_time_collection_view.tag = 2
          select_time_collection_view.dataSource = self
          select_time_collection_view.delegate = self
          select_time_collection_view.showsHorizontalScrollIndicator = false
          select_time_collection_view.showsVerticalScrollIndicator = false
          hideSelectTimeView()
  
          add_customization_collection_view.registerNib(UINib(nibName: "AddCustomizationCollectionViewCell", bundle: nil), forCellWithReuseIdentifier: PERSONALIZE_ADD_CUSTOMIZATION_COLLECTION_CELL_IDENTIFIER)
          add_customization_collection_view.tag = 3
          add_customization_collection_view.dataSource = self
          add_customization_collection_view.delegate = self
          add_customization_collection_view.showsHorizontalScrollIndicator = false
          add_customization_collection_view.showsVerticalScrollIndicator = false
          hideCustomizationsView()
  </code></pre>
  
  <p>The error happens inconsistently which is a major cause of concern. As I am unable to figure out what is wrong and the crash logs from itunes or Crashlytics aren't helping.</p>