 
 extension Query {
 
-    public func firstOrNewEntity(where predicate: Predicate<Entity>) -> Entity {
+    public func firstOrEmptyNew(where predicate: Predicate<Entity>) -> Entity {
         guard let existingEntity = self.filtered(using: predicate).first() else {
             return self.newEntity()
         }

        return existingEntity
    }
    
    public func firstOrNewEntity(where closure: () -> Predicate<Entity>) -> Entity {
        guard let existingEntity = self.filtered(using: closure()).first() else {
            return self.newEntity()
        }

        return existingEntity
    }

    public func firstOrEmptyNew(where rawValue: NSPredicate) -> Entity {
        guard let existingEntity = self.filtered(using: Predicate<Entity>(rawValue: rawValue)).first() else {
            return self.newEntity()
        }
