simpler content negotiation