new_contents: import ctypes
  
  FAN_ACCESS = 1
  FAN_MODIFY = 2
  FAN_CLOSE_WRITE = 8
  FAN_CLOSE_NOWRITE = 16
  FAN_OPEN = 32
  FAN_Q_OVERFLOW = 16384
  FAN_OPEN_PERM = 65536
  FAN_ACCESS_PERM = 131072
  FAN_ONDIR = 1073741824
  FAN_EVENT_ON_CHILD = 134217728
  FAN_CLOSE = (FAN_CLOSE_WRITE | FAN_CLOSE_NOWRITE)
  FAN_CLOEXEC = 1
  FAN_NONBLOCK = 2
  FAN_CLASS_NOTIF = 0
  FAN_CLASS_CONTENT = 4
  FAN_CLASS_PRE_CONTENT = 8
  FAN_ALL_CLASS_BITS = ((FAN_CLASS_NOTIF | FAN_CLASS_CONTENT) | FAN_CLASS_PRE_CONTENT)
  FAN_UNLIMITED_QUEUE = 16
  FAN_UNLIMITED_MARKS = 32
  FAN_ALL_INIT_FLAGS = ((((FAN_CLOEXEC | FAN_NONBLOCK) | FAN_ALL_CLASS_BITS) | FAN_UNLIMITED_QUEUE) | FAN_UNLIMITED_MARKS)
  FAN_MARK_ADD = 1
  FAN_MARK_REMOVE = 2
  FAN_MARK_DONT_FOLLOW = 4
  FAN_MARK_ONLYDIR = 8
  FAN_MARK_MOUNT = 16
  FAN_MARK_IGNORED_MASK = 32
  FAN_MARK_IGNORED_SURV_MODIFY = 64
  FAN_MARK_FLUSH = 128
  FAN_ALL_MARK_FLAGS = (((((((FAN_MARK_ADD | FAN_MARK_REMOVE) | FAN_MARK_DONT_FOLLOW) | FAN_MARK_ONLYDIR) | FAN_MARK_MOUNT) | FAN_MARK_IGNORED_MASK) | FAN_MARK_IGNORED_SURV_MODIFY) | FAN_MARK_FLUSH)
  FAN_ALL_EVENTS = (((FAN_ACCESS | FAN_MODIFY) | FAN_CLOSE) | FAN_OPEN)
  FAN_ALL_PERM_EVENTS = (FAN_OPEN_PERM | FAN_ACCESS_PERM)
  FAN_ALL_OUTGOING_EVENTS = ((FAN_ALL_EVENTS | FAN_ALL_PERM_EVENTS) | FAN_Q_OVERFLOW)
  FAN_ALLOW = 1
  FAN_DENY = 2
  FAN_NOFD = (-1)
  
  
  class fanotify_event_metadata(ctypes.Structure):
      _fields_ = [
          ('event_len', ctypes.c_uint32),
          ('vers', ctypes.c_uint8),
          ('reserved', ctypes.c_uint8),
          ('metadata_len', ctypes.c_uint16),
          ('mask', ctypes.c_uint64),
          ('fd', ctypes.c_int32),
          ('pid', ctypes.c_int32)
      ]
  
subject: add in pruned defines and hand-written structures