LINQ to XML Query to Exclude Elements where Descendants Contain Certain Value
===

I'm new to LINQ to XML and was wondering if anyone could help me construct the following query.

I want to return all the `<response>` elements that do not contain a descendant `<status>` element that contains "404".

My XML is shown below. In this case, only the first `<response>` element (and descendants) should be returned.

    <multistatus xmlns="DAV:">
      <response>
        <href>/principals/users/test/</href>
        <propstat>
          <prop>
            <calendar-home-set xmlns="urn:ietf:params:xml:ns:caldav">
              <href xmlns="DAV:">/calendars/__uids__/d817aaec-7d24-5b38-bc2f-6369da72cdd9</href>
            </calendar-home-set>
          </prop>
          <status>HTTP/1.1 200 OK</status>
        </propstat>
      </response>
      <response>
        <href>/principals/users/test/calendar-proxy-write/</href>
        <propstat>
          <prop>
            <calendar-home-set xmlns="urn:ietf:params:xml:ns:caldav" />
          </prop>
          <status>HTTP/1.1 404 Not Found</status>
        </propstat>
      </response>
      <response>
        <href>/principals/users/test/calendar-proxy-read/</href>
        <propstat>
          <prop>
            <calendar-home-set xmlns="urn:ietf:params:xml:ns:caldav" />
          </prop>
          <status>HTTP/1.1 404 Not Found</status>
        </propstat>
      </response>
    </multistatus>
