# These are lines that apply-iwyu will prevent from being added to a
# file. They are lines that refer to files that are conditionally included
# in certain configurations.
#include <sys/socket.h>
#include <ext/alloc_traits.h>
#include <netinet/in.h>
#include <__memory/unique_ptr.h>
#include <__tree>
#include <iosfwd>
