         get {
             switch self.orientation {
             case .horizontal:
-                return super.frame.height
+                return self.frame.height
             case .vertical:
-                return super.frame.width
+                return self.frame.width
             }
         }
         set(newLineWidth) {
             switch self.orientation {
             case .horizontal:
-                super.frame.size.height = newLineWidth
+                self.frame.size.height = newLineWidth
             case .vertical:
-                super.frame.size.width = newLineWidth
+                self.frame.size.width = newLineWidth
             }
         }
     }

    }
    
    // Init
    public init(configuration: LineLayerConfiguration = LineLayerConfiguration()) {
        self.__orientation = configuration.orientation
        super.init()
        self.length = configuration.length
        self.lineWidth = configuration.lineWidth
        self.parallelPosition = configuration.parallelPosition
        self.orthogonalPosition = configuration.orthogonalPosition
    }
    
    // Private Variables
    fileprivate var __orientation: LineLayer.Orientation
}


// MARK: Unavailability Overrides
public extension LineLayer {
    @available(*, unavailable)
    public final override var frame: CGRect {
        get { return .null }
        set {}
    }
    
    @available(*, unavailable)
    public final override var bounds: CGRect {
        get { return .null }
        set {}
    }
    
    @available(*, unavailable)
    public convenience init(frame: CGRect) {
        fatalError()
    }
    
    @available(*, unavailable)
    public convenience init(size: CGSize) {
        fatalError()
    }
}



            return self.__orientation
        }
        set(newOrientation) {
            self.__orientation = newOrientation
            swap(&self.frame.size.width, &self.frame.size.height)
        }
    }
    
