         }
     }
 
-    internal class func calculateInternalLayoutRect(control:IXBaseControl,rect:CGRect) -> CGRect {
+    internal final class func calculateInternalLayoutRect(control:IXBaseControl,rect:CGRect) -> CGRect {
         var internalRect = rect
         if let layoutInfo = control.layoutInfo {
             let controlPaddingInsets = ixEvaluateEdgeInsets(layoutInfo.paddingInsets,rect.size)

        return controlPosition;
    }

    internal class func calculateControlSize(control:IXBaseControl,layoutSize:CGSize) -> CGSize {

        var controlSize = CGSize.zeroSize
        if let layoutInfo = control.layoutInfo {

        layoutsScrollView.scrollEnabled = layout.zoomEnabled || contentSizeIsLargerThanBounds
    }

    internal final class func getPreferredSize(layout:IXLayout,suggestedSize:CGSize) -> CGSize {
        var preferredSize = CGSize.zeroSize
        if let layoutInfo = layout.layoutInfo {
            let paddingInsets = ixEvaluateEdgeInsets(layoutInfo.paddingInsets, suggestedSize)
