add quasi upsert