class ActiveSupport::Concurrency::ShareLock

def eligible_waiters?(compatible)

def eligible_waiters?(compatible)
  @waiting.any? { |t, (p, _)| compatible.include?(p) && @waiting.all? { |t2, (_, c2)| t == t2 || c2.include?(p) } }
end