Skip to content
https://wired.com

Infrastructure

· 17 checks — DNS, redirects, IPv6, crawlability, URL variants, and domain intelligence rolled into one auditable list.
SCORE
84
GRADE
B
FIX
1
REVIEW
8
PASS
8
INFO
0
Probed from New York, United Stated
301 Moved Permanently
Checks
17
8 PASS 8 REVIEW 1 FIX
F
IPv6 Readiness
Action
IPv6 records exist but unreachable
FIX
IPv6 records exist but unreachable
Warning::
IPv6 DNS records exist but server is not reachable
Having AAAA records but an unreachable server is worse than no AAAA — clients may experience delays before falling back to IPv4.
Got: 2600:9000:a41b:ef95:eff:32b3:411c:f36c, 2600:9000:a707:a46c:560f:b721:9702:d75e
Info::
IPv6 connection error
Got: dial tcp6 [2600:9000:a41b:ef95:eff:32b3:411c:f36c]:443: connect: no route to host
IPv6 Misconfigured
AAAA Records 2600:9000:a41b:ef95:eff:32b3:411c:f36c, 2600:9000:a707:a46c:560f:b721:9702:d75e Connection UNREACHABLE

Having AAAA records but an unreachable server is worse than no AAAA — clients may experience delays before falling back to IPv4.

Why this matters

Advertising IPv6 (AAAA records) without a reachable server means IPv6-preferring clients silently fail every connection.

Learn more ▾

Modern browsers prefer IPv6 if AAAA exists (Happy Eyeballs algorithm). If the IPv6 server isn't reachable, browsers fall back to IPv4 — but with seconds of added latency per request. Either fix IPv6 reachability or remove the AAAA records.

Source: RFC 8305 (Happy Eyeballs)

B
DNSSEC
Unsigned (DNSSEC not deployed)
REVIEW
Unsigned (DNSSEC not deployed)
Info::
DNSSEC is not deployed
The zone is not DNSSEC-signed. Users on validating resolvers (Cloudflare 1.1.1.1, Quad9 9.9.9.9, growing default in mobile resolvers) get no protection against DNS spoofing for this domain. Most registrars now offer DNSSEC at a single click; consider enabling it for sites where authenticity matters (banking, healthcare, government).
B
CAA Records
No CAA records (any CA may issue certificates)
REVIEW
No CAA records (any CA may issue certificates)
Info::
No CAA records published
Without CAA records, any publicly-trusted CA can issue certificates for this domain. Adding a CAA record (`yourdomain. IN CAA 0 issue "letsencrypt.org"`) restricts issuance to CAs you authorize. Required by CAB Forum baseline since 2017; the default of 'any CA' is widely supported but is the broader attack surface for issuance fraud.
B
Reverse DNS
0/4 IPs match cert SAN
REVIEW
0/4 IPs match cert SAN
Info::
PTR for 52.223.6.210 does not match any cert SAN: aeed6796a0f5c0317.awsglobalaccelerator.com
Common when behind a CDN or shared hosting (PTR points at the provider's hostname). Mismatch can also affect mail deliverability if this IP sends email -- many MTAs reject mail when forward+reverse DNS disagree.
Info::
PTR for 166.117.251.134 does not match any cert SAN: aeed6796a0f5c0317.awsglobalaccelerator.com
Common when behind a CDN or shared hosting (PTR points at the provider's hostname). Mismatch can also affect mail deliverability if this IP sends email -- many MTAs reject mail when forward+reverse DNS disagree.
Info::
PTR for 2600:9000:a41b:ef95:eff:32b3:411c:f36c does not match any cert SAN: aeed6796a0f5c0317.dualstack.awsglobalaccelerator.com
Common when behind a CDN or shared hosting (PTR points at the provider's hostname). Mismatch can also affect mail deliverability if this IP sends email -- many MTAs reject mail when forward+reverse DNS disagree.
Info::
PTR for 2600:9000:a707:a46c:560f:b721:9702:d75e does not match any cert SAN: aeed6796a0f5c0317.dualstack.awsglobalaccelerator.com
Common when behind a CDN or shared hosting (PTR points at the provider's hostname). Mismatch can also affect mail deliverability if this IP sends email -- many MTAs reject mail when forward+reverse DNS disagree.
B
URL Variants
www/non-www, trailing slash, HTTP→HTTPS
REVIEW
www/non-www, trailing slash, HTTP→HTTPS
Critical::
Both www and non-www versions serve content
Got: Both variants return 200 Expected: One variant 301-redirects to the other
Info::
HTTP correctly redirects to HTTPS permanently
Got: HTTP 301

www / non-www

200https://www.wired.com/
200https://wired.com/

Inconsistent — duplicate content risk

HTTP → HTTPS

301http://wired.com/ → https://www.wired.com/

Consistent

B
TLS Certificate Expiry & Recommendations
55 days until leaf cert expires — 3 issues to address
REVIEW

Certificate validity

55
days left
0d 30d 60d 90d+

Recommended actions

  • Enable HSTS: Strict-Transport-Security: max-age=31536000; includeSubDomains
  • Enable DNSSEC on your domain for DNS spoofing protection
  • Enable OCSP stapling on your TLS server to remove a CA roundtrip and protect user privacy
C
CDN & Delivery
Action
Assets on AWS CloudFront (host media.wired.com, 38 assets); document served directly from origin
REVIEW
Assets on AWS CloudFront (host media.wired.com, 38 assets); document served directly from origin
Warning::
Document not behind existing CDN (AWS CloudFront serves the assets)
The page's subresources are delivered by AWS CloudFront (media.wired.com, 38 assets), but the HTML document itself comes straight from the origin. Routing the document through the CDN already in use is the cheapest latency win available here -- the provider relationship, the certificate and the config already exist. A short edge TTL with stale-while-revalidate suits HTML that changes often; if the response is genuinely per-user, edge TLS termination alone still removes a full round trip from every visitor's first byte.
Got: delegation d2zm5qiurbqbji.cloudfront.net
Info::
Assets on AWS CloudFront: media.wired.com (assets: 38), cache Hit from cloudfront
Got: delegation d2zm5qiurbqbji.cloudfront.net
Info::
Assets on AWS CloudFront: dwgyu36up6iuz.cloudfront.net (assets: 10), cache Hit from cloudfront
Got: delegation dwgyu36up6iuz.cloudfront.net
Info::
Assets on Cloudflare: www.wired.com (assets: 8), cache DYNAMIC
Got: delegation www.wired.com.cdn.cloudflare.net
Info::
Assets on Akamai: snap.licdn.com (assets: 4)
Got: delegation a1916.dscg2.akamai.net
Info::
Assets on Akamai: analytics.tiktok.com (assets: 3), cache TCP_MEM_HIT from a104-70-121-47.deploy.akamaitechnologies.com (AkamaiGHost/22.6.3-da071da6976b6d633b0b37bcfe65c0fc) (-)
Got: delegation e35058.api12.akamaiedge.net
Warning: Assets on a CDN, document is not: AWS CloudFront
Document origin not attributed

Asset hosts on a CDN

  • media.wired.com — AWS CloudFront · assets: 38 · Cache Status: Hit from cloudfront
  • dwgyu36up6iuz.cloudfront.net — AWS CloudFront · assets: 10 · Cache Status: Hit from cloudfront
  • www.wired.com — Cloudflare · assets: 8 · Cache Status: DYNAMIC
  • snap.licdn.com — Akamai · assets: 4
  • analytics.tiktok.com — Akamai · assets: 3 · Cache Status: TCP_MEM_HIT from a104-70-121-47.deploy.akamaitechnologies.com (AkamaiGHost/22.6.3-da071da6976b6d633b0b37bcfe65c0fc) (-)

Other asset hosts

  • www.googletagmanager.com — assets: 11 · Google
  • bat.bing.com — assets: 3 · Microsoft Azure
  • connect.facebook.net — assets: 3 · not attributed
  • news.google.com — assets: 3 · below probe threshold
  • uk-script.dotmetrics.net — assets: 3 · below probe threshold
  • ads-static.conde.digital — assets: 2 · below probe threshold
  • analytics.twitter.com — assets: 2 · below probe threshold
  • asset.fwpub1.com — assets: 2 · below probe threshold
  • config.aps.amazon-adsystem.com — assets: 2 · below probe threshold
  • globalservices.conde.digital — assets: 2 · below probe threshold
  • securepubads.g.doubleclick.net — assets: 2 · below probe threshold
  • t.co — assets: 2 · below probe threshold
  • trx-hub.com — assets: 2 · below probe threshold
  • a.ad.gt — assets: 1 · below probe threshold
  • ak.sail-horizon.com — assets: 1 · below probe threshold
  • apis.google.com — assets: 1 · below probe threshold
  • apps.rokt.com — assets: 1 · below probe threshold
  • bd1cec50-00d1-4ce9-9572-785857419a1e.edge.permutive.app — assets: 1 · below probe threshold
  • cdn-magiclinks.trackonomics.net — assets: 1 · below probe threshold
  • cdn.gladly.com — assets: 1 · below probe threshold
  • cdn.parsely.com — assets: 1 · below probe threshold
  • cdn.sophi.io — assets: 1 · below probe threshold
  • cdn.treasuredata.com — assets: 1 · below probe threshold
  • cdnjs.cloudflare.com — assets: 1 · below probe threshold
  • client.aps.amazon-adsystem.com — assets: 1 · below probe threshold
  • googleads.g.doubleclick.net — assets: 1 · below probe threshold
  • js.adsrvr.org — assets: 1 · below probe threshold
  • martech.condenastdigital.com — assets: 1 · below probe threshold
  • privacy.condenastdigital.com — assets: 1 · below probe threshold
  • s.skimresources.com — assets: 1 · below probe threshold
  • s.yimg.com — assets: 1 · below probe threshold
  • sb.scorecardresearch.com — assets: 1 · below probe threshold
  • sc-static.net — assets: 1 · below probe threshold
  • sp.analytics.yahoo.com — assets: 1 · below probe threshold
  • ssc.wired.com — assets: 1 · below probe threshold
  • static.ads-twitter.com — assets: 1 · below probe threshold
  • static.adsafeprotected.com — assets: 1 · below probe threshold
  • tag.bounceexchange.com — assets: 1 · below probe threshold
  • tr.snapchat.com — assets: 1 · below probe threshold
  • www.redditstatic.com — assets: 1 · below probe threshold

The heavy static files already ride an edge network, but every visitor still waits on the origin for the HTML itself. Routing the document through the same CDN is usually a config change rather than a migration: a short edge TTL with stale-while-revalidate for cacheable HTML, or edge TLS termination alone when the response is per-user.

B
CDN Cache Observability
No CDN cache-status headers in the response
REVIEW
No CDN cache-status headers in the response
Info::
No CDN cache-status headers in the response
Without an X-Cache / CF-Cache-Status / X-Vercel-Cache / Age header, you can't tell from outside whether a request hit the cache or went to origin. Operationally important: enables debugging stale-content reports and verifying cache rules. Most managed CDN platforms emit at least one of these by default; absence often means the platform's diagnostic headers are stripped at an upstream proxy.
B
Operational Status Page
No status page link detected
REVIEW
No status page link detected
Info::
No operational status page link detected
Status pages communicate planned maintenance and incidents to users -- a hallmark of operationally-mature services. Most SaaS teams publish one via Atlassian Statuspage, Instatus, BetterUptime, or a self-hosted Cachet. Smaller sites legitimately don't need one; flagged as Info, not a failure.
A+
DNS Records
2 A records, 17 ms lookup
PASS
2 A records, 17 ms lookup
Info::
Resolves to 2 IPv4 address(es)
Got: 52.223.6.210, 166.117.251.134
Info::
Has 2 IPv6 (AAAA) record(s)
Got: 2600:9000:a41b:ef95:eff:32b3:411c:f36c, 2600:9000:a707:a46c:560f:b721:9702:d75e
Info::
4 nameserver(s) configured
Got: ns-1116.awsdns-11.org, ns-1935.awsdns-49.co.uk, ns-28.awsdns-03.com, ns-836.awsdns-40.net
Info::
5 mail exchanger(s) configured
Info::
SPF record present in TXT
Info::
DNS resolution time: 17 ms
Got: 17 ms
A52.223.6.210, 166.117.251.134
AAAA2600:9000:a41b:ef95:eff:32b3:411c:f36c, 2600:9000:a707:a46c:560f:b721:9702:d75e
CNAME—
NSns-1116.awsdns-11.org, ns-1935.awsdns-49.co.uk, ns-28.awsdns-03.com, ns-836.awsdns-40.net
MX
1 aspmx.l.google.com
5 alt1.aspmx.l.google.com
5 alt2.aspmx.l.google.com
10 alt4.aspmx.l.google.com
10 alt3.aspmx.l.google.com
TXT
3c5bnsm2366rtqny77w8cq9wvy49r0w9
907D-6CE2-7BD0-FF0C-7E83-E21D-AD2B-DD27
MS=ms32964175
MS=ms43391860
ZOOM_verify_PeuZagN7TzybBaD-uxsGAw
_globalsign-domain-verification=5gwbTrtjX4CPebqVSR8L6SpOvnf_3_6K7X0z_Izh9q
_globalsign-domain-verification=GXpUUS49HB9rYWZEmxJFtZdS61weLMlf91w9Dn-5O0
_globalsign-domain-verification=ln6G6qMbrMeJLZSOGjjxis2fcs9NHicunfT-JK_mCZ
adobe-idp-site-verification=c2108b9dbc0fc05ff0794006df1c41b6c945bd2c8a904bef754e...
airalo-domain-verification=8o95GSpImu3dWoe
anthropic-domain-verification-qjhty4=rH0iOGSnUm12xzxooo18gnz9G
atlassian-domain-verification=mYtQWl3namqmk5ikMKT48XVnS+XdjdbkLlkWMcNyvsddK2JDAi...
docusign=093f2a18-6882-43f7-a9ae-b2594de9d47f
facebook-domain-verification=75aqj8blnqc3dj5cy9b5d9mialys78
fastly-domain-delegation-duxxxum9cshse9phbfst-554686-2022-12-12
fastly-domain-delegation-grdt7uboiyaqqtgjenzi-789661-2024-07-19
figma-domain-verification=2edc90f8e8740d757633998df93b92af5494d0ad60e746b5a5a252...
globalsign-domain-verification=Wq9iztGUzQcBBi1OLrEOlXtefwOzX7yfvhbsw-CVdo
google-site-verification=39CB9sd7tH1nrsJcVjjUzO9sVoKZ-2MBshlRhqFX13k
google-site-verification=8dMUQRGxbDNDoEIZXU-E4-GmKLNvgkFwwAmqY0qUroU
google-site-verification=Njx9q6Atd2al1mD6wtXu2u83s0Sz6WZQa_r0jmg261k
google-site-verification=h3oXJvoyRaANoWJ-cjd8H3Zv49YViS96em2ZhNfeGPo
google-site-verification=tA0Sx_MrXe58GUfjaTg-EgrfF7wv1WdDVKKq7dyNuwc
loaderio=b8d2a4d94bf4574bd8c95427c0fcbee6
openai-domain-verification=dv-LCvTXCMns2J5grLiXF1uTD2T
SPF v=spf1 include:_u.wired.com._spf.smart.ondmarc.com ~all
yahoo-verification-key=HFoI8YeAFA0EIy9UkTckoOvVblp1gSUBZM9B8KKeYNs=
zapier-domain-verification-challenge=97705597-a31c-4c6d-aa76-7e01d2b3fe13
CAALookup not available with standard resolver
Resolved in 17 ms
A+
Subdomain Takeover
No subdomain takeover risk detected
PASS
No subdomain takeover risk detected
Info::
No CNAME record present
A+
Multi-Resolver DNS Speed
Mean 4ms across 3 resolvers (spread 6ms)
PASS
Mean 4ms across 3 resolvers (spread 6ms)
Info::
Quad9: 2ms
Got: 2ms via 9.9.9.9:53
Info::
Cloudflare: 2ms
Got: 2ms via 1.1.1.1:53
Info::
Google: 8ms
Got: 8ms via 8.8.8.8:53
A
Redirect Chain
1 redirect(s), 185 ms total
PASS
1 redirect(s), 185 ms total
Info::
Single redirect
Got: https://wired.com → https://www.wired.com/ (301)
Info::
WWW normalization redirect

https://wired.com

31 ms · HTTP/1.1

301

https://www.wired.com/

155 ms · HTTP/1.1 FINAL

#URLStatusTimeProtocolServer
1https://wired.com30131 msHTTP/1.1nginx
2https://www.wired.com/200155 msHTTP/1.1cloudflare

See the visual redirect chain in the HTTP Probe tab →

A+
Crawlability
robots.txt present, sitemap with 60 URLs
PASS
robots.txt present, sitemap with 60 URLs
Info::
robots.txt is present
Got: 2224 bytes
Info::
sitemap.xml is present
Info::
sitemap.xml is valid XML
Info::
sitemap.xml contains 60 entries
Info::
Sitemap index with 60 child sitemaps
Info::
robots.txt references sitemap
robots.txt 200 OK
Size 2224 B Sitemaps referenced 7 User-agents AmazonAdBot, Bravebot, cohere-ai, Timpibot, *, TikTokSpider, Bytespider, CCBot, meta-externalfetcher, Perplexity-User, Webzio-Extended, archive.org_bot, Brightbot 1.0, ClaudeBot, ia_archiver-web.archive.org, PanguBot, Claude-User, FirecrawlAgent, GoogleOther, YouBot, LinkedInBot, Pinterestbot, Storebot-Google, meta-externalagent, PerplexityBot, Yisouspider, Webzio, Amazonbot, Diffbot, DuckAssistBot, ia_archiver, Scrapy, Shap-User, ShapBot, Applebot-Extended, cohere-training-data-crawler, factset_spyderbot, Google-CloudVertexBot, Google-Extended, heritrix, PetalBot, FacebookExternalHit, Google-InspectionTool, Twitterbot, Claude-SearchBot, meta-webindexer, MistralAI-User Blocking No — crawling allowed
Sitemap: https://www.wired.com/sitemap.xml
Sitemap: https://www.wired.com/tagpages-sitemap.xml
Sitemap: https://www.wired.com/contributors-sitemap.xml
Sitemap: https://www.wired.com/bundles-sitemap.xml
Sitemap: https://www.wired.com/branded-sitemap.xml
Sitemap: https://www.wired.com/feed/google-latest-news/sitemap-google-news
Sitemap: https://www.wired.com/feed/rss

User-agent: *
Disallow: /*?
Allow: /*?page
Allow: /*.xml?
Allow: /*.js
Allow: /*.css
Allow: /*.ico
Allow: /verso/static
Allow: /*.svg
Allow: /*.png
Allow: /*.jpg
Allow: /*.jpeg
Allow: /*rss?
Allow: /*?id=
Disallow: /auth/
Disallow: /account/
Disallow: /user/
Disallow: /user-context
Disallow: /preview/
Disallow: /search
Disallow: /product/
Disallow: /cdn-cgi/
Disallow: /services.min.js
Disallow: /com.condenast/yv8
Disallow: /reject-all

###
Allow: /v2/offers/wira
Allow: /*?*utm_medium=social
Allow: /*?*utm_medium=syndication
Allow: /*?ref=
Allow: /story/madison-square-garden-jim-dolan-surveillance-machine/?src
Disallow: */testing-products-
###

User-agent: AmazonAdBot
User-agent: FacebookExternalHit
User-agent: Google-InspectionTool
User-agent: LinkedInBot
User-agent: Pinterestbot
User-agent: Storebot-Google
User-agent: TikTokSpider
User-agent: Twitterbot
Allow: /

User-agent: Amazonbot
User-agent: Applebot-Extended
User-agent: archive.org_bot
User-agent: Bravebot
User-agent: Brightbot 1.0
User-agent: Bytespider
User-agent: CCBot
User-agent: Claude-SearchBot
User-agent: Claude-User
User-agent: ClaudeBot
User-agent: cohere-ai
User-agent: cohere-training-data-crawler
User-agent: Diffbot
User-agent: DuckAssistBot
User-agent: factset_spyderbot
User-agent: FirecrawlAgent
User-agent: Google-CloudVertexBot
User-agent: Google-Extended
User-agent: GoogleOther
User-agent: heritrix
User-agent: ia_archiver
User-agent: ia_archiver-web.archive.org
User-agent: meta-externalagent
User-agent: meta-externalfetcher
User-agent: meta-webindexer
User-agent: MistralAI-User
User-agent: PanguBot
User-agent: Perplexity-User
User-agent: PerplexityBot
User-agent: PetalBot
User-agent: Scrapy
User-agent: Shap-User
User-agent: ShapBot
User-agent: Timpibot
User-agent: Yisouspider
User-agent: YouBot
User-agent: Webzio
User-agent: Webzio-Extended
Disallow: /
sitemap.xml 200 OK
Type Sitemap Index URLs 60 entries Valid XML Yes
Child Sitemaps:
A+
Domain Intelligence
wired.com — via CSC Corporate Domains, Inc., 34 years, 4 months old
PASS
wired.com — via CSC Corporate Domains, Inc., 34 years, 4 months old
Info::
Domain registered until Nov 19, 2027 (1 years, 1 months remaining)
Info::
DNSSEC is not enabled
DNSSEC protects against DNS spoofing attacks. While not required, enabling DNSSEC adds an additional layer of security. Contact your DNS provider to enable it.
Info::
Registrar: CSC Corporate Domains, Inc.
Warning::
Registrar lock is NOT enabled
The domain can be transferred without an unlock step. Enable registrar lock (clientTransferProhibited) in your registrar's control panel to protect against unauthorized or accidental transfers.
Domain expiry

417 days

November 19, 2027

SSL certificate

55 days

Issued by Amazon

Domain age

34 years, 4 months

Registered November 20, 1992

DNSSEC

Not enabled

Protects against DNS spoofing

Hosting

Unknown

2600:9000:a707:a46c:560f:b721:9702:d75e

Registrar

CSC Corporate Domains, Inc.

Unlocked 4 NS records
Expiry timeline
Today
+1 year
Domain expiry SSL expiry Danger zone (≤30 days)
Recommended actions
  • Enable DNSSEC to protect visitors from DNS spoofing
  • Enable registrar lock (clientTransferProhibited) to block unauthorized domain transfers
Registrar CSC Corporate Domains, Inc.
Created November 20, 1992 (34 years, 4 months ago)
Expires November 19, 2027 (1 years, 1 months)
Last Updated February 2, 2026
Name Servers ns-1116.awsdns-11.org, ns-1935.awsdns-49.co.uk, ns-28.awsdns-03.com, ns-836.awsdns-40.net
DNSSEC Not enabled
Hosting
IP Address 2600:9000:a707:a46c:560f:b721:9702:d75e
Data source: rdap (0.1s)

DNSSEC protects against DNS spoofing attacks. While not required, enabling DNSSEC adds an additional layer of security. Contact your DNS provider to enable it.

Why this matters

Without DNSSEC, an attacker who can poison your DNS can hijack your domain — and SSL certs alone don't stop them.

Learn more ▾

DNSSEC adds cryptographic signatures to DNS records, preventing forged responses from poisoning resolver caches. Without it, an attacker who controls the network path can redirect your domain to a malicious server before any HTTPS handshake happens. Most modern registrars (Cloudflare, Google Domains, Route 53) enable it with one toggle.

Source: ICANN / RFC 4033

The domain can be transferred without an unlock step. Enable registrar lock (clientTransferProhibited) in your registrar's control panel to protect against unauthorized or accidental transfers.

Why this matters

Without registrar lock, an attacker who phishes your registrar credentials can transfer the domain in minutes — total brand hijack.

Learn more ▾

Registrar lock (clientTransferProhibited, clientUpdateProhibited, clientDeleteProhibited) requires extra verification before any transfer/update/delete. Every major registrar offers it free. Combined with 2FA on your registrar account, it's the strongest defense against domain hijacking.

Source: ICANN / domain-security best practice

A+
HTTP Probe Timing
Total 35 ms — DNS, TCP, TLS, TTFB, content transfer breakdown
PASS
DNS Lookup DNS Lookup — time to resolve the domain name to an IP address.
6 ms
TCP Connect TCP Connect — time to establish a TCP connection to the server.
1 ms
TLS Handshake TLS Handshake — time to complete the HTTPS encryption handshake.
17 ms
Time to First Byte Time to First Byte — how long the server takes to respond with the first byte of data.
35 ms
Total Time Total request time from DNS lookup through full response.
36 ms

Connection waterfall

DNS Lookup 6 ms TCP Connect 1 ms TLS Handshake 17 ms Server Processing 11 ms Content Transfer 0 ms
A+
Health Check Endpoint
Health endpoint at https://wired.com/health (HTTP 200)
PASS
Health endpoint at https://wired.com/health (HTTP 200)
Info::
Public health endpoint at https://wired.com/health
Got: https://wired.com/health
All checks on this page are automated. Results are estimates - run targeted manual reviews when the score affects a release decision.

Send Feedback