     /// - returns: A floating-point `Double`
     /// - throws: One of the `JSON.Error` cases thrown by `decode(_:or:)`.
     /// - seealso: `JSON.decode(_:or:)`
-    public func double(first: PathFragment? = nil, _ rest: PathFragment..., @autoclosure or fallback: () -> Swift.Double) throws -> Swift.Double {
-        return try decodedAtPath(first, rest, or: fallback)
+    public func double(path: PathFragment..., @autoclosure or fallback: () -> Swift.Double) throws -> Swift.Double {
+        return try decodedAtPath(path, or: fallback)
     }
 
     /// Retrieves an `Int` from a path into JSON or a fallback if not found.

    /// - returns: A truthy `Bool`
    /// - throws: One of the `JSON.Error` cases thrown by `decode(_:or:)`.
    /// - seealso: `JSON.decode(_:or:)`
    public func bool(first: PathFragment? = nil, _ rest: PathFragment..., @autoclosure or fallback: () -> Swift.Bool) throws -> Swift.Bool {
        return try decodedAtPath(first, rest, or: fallback)
    }

    // MARK: Complex member unpacking with fallback

    /// - returns: A numeric `Int`
    /// - throws: One of the `JSON.Error` cases thrown by `decode(_:or:)`.
    /// - seealso: `JSON.decode(_:or:)`
    public func int(path: PathFragment..., @autoclosure or fallback: () -> Swift.Int) throws -> Swift.Int {
        return try decodedAtPath(path, or: fallback)
    }

    /// Retrieves a `String` from a path into JSON or a fallback if not found.
