         let cropMaskVerticalPosition = CGFloat(cos(Constants.Angular.radiansFromDegrees(CGFloat(maxDegree)))) * CGFloat(Constants.Size.BankIndicator.radius)
         cropNode.maskNode?.position = CGPoint(x: 0, y: CGFloat(Constants.Size.BankIndicator.radius) + cropMaskVerticalPosition)
         addChild(cropNode)
-        
-        let markers = degreeValues.filter {
-            return abs($0) <= maxDegree
+    }
+    
+    private func addMarkers() {
+        degreeValues.filter {
+            abs($0) <= Constants.Size.BankIndicator.maximumDisplayDegree
         }.map {
             (degree: $0, displayText: "\(abs($0))")
-        }
-        
-        for marker in markers {
+        }.forEach { marker in
             let style: BankArcMarkerStyle = marker.degree % 15 == 0 ? .Major : . Minor
             addChild(BankArcMarker(marker: marker, style: style))
         }
-    }
-
-    required init?(coder aDecoder: NSCoder) {
-        fatalError("init(coder:) has not been implemented")
     }
 }
 

        assert(Constants.Size.BankIndicator.maximumDisplayDegree <= 180, "Bank indicator maximum display degree must have maximum value of 180")
        super.init()

        let arc = SKShapeNode(circleOfRadius: CGFloat(Constants.Size.BankIndicator.radius))
        let cropNode = SKCropNode()
        let maskNodeEdgeSize = Constants.Size.BankIndicator.radius * 2 + Constants.Size.BankIndicator.lineWidth

            label.fontColor = Constants.Color.BankIndicator.text
            
            let offset = CGFloat(Constants.Size.BankIndicator.radius + Constants.Size.BankIndicator.markerTextOffset)
            label.runAction(SKAction.sequence([rotateAction, moveAction(offset)]))
            addChild(label)
        }
    }
