         node.name = "fillPlane"
         node.opacity = 0.0
         
-        let material = plane.firstMaterial!
-        material.diffuse.contents = FocusSquare.primaryColorLight
-        material.isDoubleSided = true
-        material.ambient.contents = UIColor.black
-        material.lightingModel = .constant
-        material.emission.contents = FocusSquare.primaryColorLight
+        let material = plane.firstMaterial
+        material?.diffuse.contents = FocusSquare.primaryColorLight
+        material?.isDoubleSided = true
+        material?.ambient.contents = UIColor.black
+        material?.lightingModel = .constant
+        material?.emission.contents = FocusSquare.primaryColorLight
         
         return node
     }()

        SCNTransaction.animationTimingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseOut)
        SCNTransaction.animationDuration = animationDuration / 4
        focusSquareNode.opacity = 1.0
        self.segments.forEach { segment in segment.open() }
        SCNTransaction.completionBlock = { self.focusSquareNode.runAction(self.pulseAction(), forKey: "pulse") }
        SCNTransaction.commit()
        

                                    height: CGFloat(FocusSquare.Segment.thickness))
            }
            
            let material = geometry?.firstMaterial
            material?.diffuse.contents = FocusSquare.primaryColor
            material?.isDoubleSided = true
            material?.ambient.contents = UIColor.black
//            material.lightingModel = .constant
            material?.emission.contents = FocusSquare.primaryColor
        }
        
        required override init() {
            self.corner = .topRight
            self.alignment = .horizontal
            super.init()
        }
        
        required init?(coder aDecoder: NSCoder) {
