         responses = mappedResponses
         defaultResponse = allResponses["default"]
         deprecated = (try? map.value("deprecated")) ?? false
-        security = (try? map.value("security")) ?? []
+        security = try? map.value("security")
     }
 
     func build(_ swagger: SwaggerBuilder) throws -> Operation {

    /// (that is, there is a logical OR between the security requirements).
    /// This definition overrides any declared top-level security.
    /// To remove a top-level security declaration, an empty array is used.
    public let security: [SecurityRequirement]
}

struct OperationBuilder: Builder {

    let deprecated: Bool
    let identifier: String?
    let tags: [String]
    let security: [SecurityRequirement]?

    init(map: Map) throws {
        summary = try? map.value("summary")
