 		
 		distribute(panelFrames)
 		
-		let unionFrame = unionRect(with: panelFrames)
+		guard let unionFrame = unionRect(with: panelFrames) else {
+			return (panelFrames, 1.0)
+		}
+		
 		print("unionFrame: \(unionFrame)")
 		
 		for r in panelFrames {

			return p.isPinned || p.isFloating
		}
		
		let (panelFrames, scale) = calculateExposeFrames(with: exposePanels)

		for panelFrame in panelFrames {

		
		let exposePanels = panels.filter { (p) -> Bool in
			return p.isInExpose
		}
		
		guard !exposePanels.isEmpty else {
			return
		}
		
		for panel in exposePanels {
