      */
     public func jsonValue(key: String, defaultValue : Float = 0.0) -> Float
     {
-        return self[key as! Key] as? Float ?? defaultValue
+        return (self[key as! Key] as? NSNumber)?.floatValue ?? defaultValue
     }
     
     /**

     */
    public func jsonValue(key: String, defaultValue : Double = 0.0) -> Double
    {
        return self[key as! Key] as? Double ?? defaultValue
    }
    
    /**

     */
    public func jsonValue(key: String) -> UInt32?
    {
        return (self[key as! Key] as? NSNumber)?.unsignedIntValue
    }
    
    /**
