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

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

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