     
     public override func drawRect(rect: CGRect) {
         let center = CGPointMake(self.bounds.width/2, self.bounds.height/2)
-        let firstLabelTranslation = CGAffineTransformMakeTranslation(-CGFloat(numberOfComponents)/2.0*50.0+30.0, -8.0) // Move left half of width - 30.0, up 8.0
+        let firstLabelTranslation = CGAffineTransformMakeTranslation(-CGFloat(numberOfComponents)/2.0*componentWidth+30.0, -8.0) // Move left half of width - 30.0, up 8.0
         let firstLabelLeft = CGPointApplyAffineTransform(center, firstLabelTranslation)
         
         

    }
    
    public func pickerView(pickerView: UIPickerView, widthForComponent component: Int) -> CGFloat {
        return 50.0
    }
    
    public func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {

        let componentUnit = pow(Float(60), Float(numberOfComponentsInPickerView(self)-component-1))
        
        let numberOfRows = Int(min(ceilf(Float(maximumDuration)/componentUnit)+1, 60.0))
        return numberOfRows < 60 ? numberOfRows : 60*1000
    }
}

