PageSourceSearch

https://tinypng.com/_next/static/chunks/1769-857e4ee5b4960ca3.js

js tinypng.com collected 2026-10-01 07:22:06 UTC 19,411 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1769],{980:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});let i={src:"/_next/static/media/rails.84813ad0.svg",height:155,width:411,blurWidth:0,blurHeight:0}},11154:e=>{e.exports={s17tg7yg:"s17tg7yg"}},14146:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});let i={src:"/_next/static/media/wordpress.91f4f935.svg",height:123,width:540,blurWidth:0,blurHeight:0}},19244:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});let i={src:"/_next/static/media/jekyll.ba065b6f.svg",height:1019,width:2496,blurWidth:0,blurHeight:0}},35339:e=>{e.exports={"documentation-styles":"documentation_documentation-styles__4LlOP","hero-title":"documentation_hero-title__W4XSq","hero-subtitle":"documentation_hero-subtitle__sbjWy",navigation:"documentation_navigation__4oWQq",selected:"documentation_selected__wFitA",anchor:"documentation_anchor__4XDjY",title:"documentation_title__ykXzO",help:"documentation_help__zu30x",items:"documentation_items__8oSk7","sub-article":"documentation_sub-article__GxTqK","img-box":"documentation_img-box__lUvnF"}},46365:(e,n,t)=>{"use strict";t.d(n,{A:()=>Q});var i=t(15383),s=t(14343),r=t(3515),o=t(90157),l=t(59447),a=t.n(l),c=t(13968),d=t(78024),h=t(37743),u=t(1833),m=t(53764),x=t(14330),j=t.n(x),g=t(63233),p=t(73917),b=t(82699),v=t(19244),f=t(53215),y=t(96176),_=t(67616),N=t(94800),A=t(980),w=t(58752),T=t(14146),k=t(6773);t(86023);var D={drupal:p.A.src,express:b.A.src,jekyll:v.A.src,joomla:f.A.src,laravel:y.A.src,magento2:_.A.src,prestashop:N.A.src,rails:A.A.src,symfony:w.A.src,wordpress:T.A.src,other:k.A.src},S=[{title:"Content management systems (more coming!)",className:"cms",technologies:F(g.Wv)},{title:"Frameworks (more coming!)",className:"frameworks",technologies:F(g.Ij)},{title:"Using something else?",className:"other",technologies:[void 0]}],C=function(e){function n(){return(0,h._)(this,n),(0,d._)(this,n,arguments)}return(0,u._)(n,e),n.prototype.render=function(){var e=this;return(0,i.jsx)(L,{children:S.map(function(n){var t=n.className,s=n.title,r=n.technologies;return(0,i.jsxs)("div",{className:t,children:[(0,i.jsx)("h3",{children:s}),(0,i.jsx)("div",{className:"integrations",children:r.map(function(n){return(0,i.jsx)("div",{onClick:function(){return j().push("/cdn/documentation/configuration/[technology]","/cdn/documentation/configuration/".concat(void 0!==n?n:"custom"))},className:"integration icon-check-circle-1 ".concat(e.props.technology==n?"selected":""),children:(0,i.jsx)("figure",{style:{backgroundImage:"url(".concat(D[n||"other"],")")}})},n||"other")})})]},t)})})},n}(s.Component);function F(e){return Object.keys(e)}var L=(0,m.I)("div")({name:"PanelStyles",class:"p1ihm3eu",propsAsIs:!1}),E=t(12694),M=t(11945),z=t(69399);t(51004);var H=(0,m.I)("div")({name:"AccordionWrapper",class:"a1652hxn",propsAsIs:!1}),I=(0,m.I)("div")({name:"AccordionHeader",class:"ayo4093",propsAsIs:!1}),W=(0,m.I)("div")({name:"AccordionContent",class:"ajv9gt4",propsAsIs:!1}),O=function(e){var n=e.children,t=e.openIndex,r=(0,E._)((0,s.useState)(void 0===t?-1:t),2),o=r[0],l=r[1],a=(0,s.useMemo)(function(){return s.Children.toArray(n).sort(function(e,n){return s.isValidElement(e)&&s.isValidElement(n)?e.props.title.localeCompare(n.props.title):0})},[n]);return(0,i.jsx)(H,{children:a.map(function(e,n){return s.isValidElement(e)?s.cloneElement(e,{isOpen:o===n,onClick:function(){return l(n===o?-1:n)}}):e})})},R=function(e){var n=e.title,t=e.isOpen,s=e.onClick,r=e.children;return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(I,{onClick:s,children:[n,(0,i.jsx)("span",{children:t?(0,i.jsx)(z.g,{icon:M.EZy}):(0,i.jsx)(z.g,{icon:M.QLR})})]}),t&&(0,i.jsx)(W,{children:r})]})};function G(){return(0,i.jsx)("i",{children:"Note: replace xxxxxx.tinifycdn.com with the Tinify CDN site that has the domain configured as an alias"})}function P(){return(0,i.jsx)("i",{children:"We recommend that you increase your TTL after you have confirmed that everything is working correctly"})}var B="xxxxxxx.tinifycdn.com";function V(e){var n=e.cdnAlias,t=void 0===n?"your-alias":n,r=e.cname,o=void 0===r?B:r,l=(0,s.useMemo)(function(){return{"DNS Made Easy":(0,i.jsxs)(i.Fragment,{children:[o===B?(0,i.jsx)(G,{}):null,(0,i.jsxs)("ol",{children:[(0,i.jsx)("li",{children:(0,i.jsx)(a(),{href:"https://cp.dnsmadeeasy.com/",children:"Login to DNS Made Easy"})}),(0,i.jsx)("li",{children:"Navigate to Managed DNS."}),(0,i.jsx)("li",{children:"Select your domain."}),(0,i.jsx)("li",{children:'Under "CNAME Records“ and click the plus sign to add a new record.'}),(0,i.jsxs)("li",{children:["Fill in and save:",(0,i.jsx)("br",{}),"Name: ",t,(0,i.jsx)("br",{}),"Alias to: ",o,". ",(0,i.jsx)("br",{}),"TTL: 60",(0,i.jsx)("br",{}),(0,i.jsx)(P,{})]})]})]}
1),GoDaddy:(0,i.jsxs)(i.Fragment,{children:[o===B?(0,i.jsx)(G,{}):null,(0,i.jsxs)("ol",{children:[(0,i.jsx)("li",{children:(0,i.jsx)(a(),{href:"https://dcc.godaddy.com/control/portfolio",children:"Go to your GoDaddy domain portfolio."})}),(0,i.jsx)("li",{children:'Click on the "domain edit options“ next to your domain and select "Edit DNS“.'}),(0,i.jsx)("li",{children:'Click on "Add“ to add a record.'}),(0,i.jsx)("li",{children:'Select CNAME from the "Type menu“ options.'}),(0,i.jsxs)("li",{children:["Fill in and save:",(0,i.jsx)("br",{}),"Name: ",t,(0,i.jsx)("br",{}),"Value: ",o,".",(0,i.jsx)("br",{}),"TTL: 60",(0,i.jsx)("br",{}),(0,i.jsx)(P,{})]})]})]}),Gandi:(0,i.jsxs)(i.Fragment,{children:[o===B?(0,i.jsx)(G,{}):null,(0,i.jsxs)("ol",{children:[(0,i.jsx)("li",{children:"Login to Gandi."}),(0,i.jsx)("li",{children:'Click the "Domain“ in the left navigation menu.'}),(0,i.jsx)("li",{children:'Select the "DNS Records“ tab for that domain.'}),(0,i.jsx)("li",{children:'Click "Add“ and choose a "CNAME“ record.'}),(0,i.jsxs)("li",{children:["Fill in and click create:",(0,i.jsx)("br",{}),"Name: ",t,(0,i.jsx)("br",{}),"Value: ",o,".",(0,i.jsx)("br",{}),"TTL: 60",(0,i.jsx)("br",{}),(0,i.jsx)(P,{})]})]})]}),NameCheap:(0,i.jsxs)(i.Fragment,{children:[o===B?(0,i.jsx)(G,{}):null,(0,i.jsxs)("ol",{children:[(0,i.jsx)("li",{children:"Log in to www.namecheap.com."}),(0,i.jsx)("li",{children:"Go to My account, and then Domain list."}),(0,i.jsx)("li",{children:'Navigate to the Advanced DNS tab and click the "Add new record“ button.'}),(0,i.jsxs)("li",{children:["Fill in and click save:",(0,i.jsx)("br",{}),"Type: CNAME Record",(0,i.jsx)("br",{}),"Host: ",t,(0,i.jsx)("br",{}),"Value: ",o,".",(0,i.jsx)("br",{}),"TTL: 60",(0,i.jsx)("br",{}),(0,i.jsx)(P,{})]})]})]}),Cloudflare:(0,i.jsxs)(i.Fragment,{children:[o===B?(0,i.jsx)(G,{}):null,(0,i.jsxs)("ol",{children:[(0,i.jsx)("li",{children:"Log in to Cloudflare, select an account and domain."}),(0,i.jsx)("li",{children:"Go to DNS -> Records."}),(0,i.jsx)("li",{children:'Click "Add Record“.'}),(0,i.jsxs)("li",{children:["Fill in and click save:",(0,i.jsx)("br",{}),"Type: CNAME",(0,i.jsx)("br",{}),"Name: ",t,(0,i.jsx)("br",{}),"Target: ",o," ",(0,i.jsx)("br",{}),"Proxy Status: DNS only (Proxied mode will make Tinify CDN less performant!)",(0,i.jsx)("br",{}),"TTL: 60",(0,i.jsx)("br",{}),(0,i.jsx)(P,{})]})]})]}),BlueHost:(0,i.jsxs)(i.Fragment,{children:[o===B?(0,i.jsx)(G,{}):null,(0,i.jsxs)("ol",{children:[(0,i.jsx)("li",{children:'Go to the "Domains“ page in your Bluehost dashboard.'}),(0,i.jsx)("li",{children:'Click on the "Manage“ button next to the domain you want to add a record for.'}),(0,i.jsx)("li",{children:'Click on the "DNS“ tab to access the DNS management interface.'}),(0,i.jsx)("li",{children:"For the A record: Configure the host record, destination (points to), and TTL. For the CNAME record: Specify the subdomain details and destination domain."}),(0,i.jsxs)("li",{children:["Fill in and save:",(0,i.jsx)("br",{}),"Name: ",t,(0,i.jsx)("br",{}),"Value: ",o,".",(0,i.jsx)("br",{}),"TTL: 60",(0,i.jsx)("br",{}),(0,i.jsx)(P,{})]})]})]}),Hostinger:(0,i.jsxs)(i.Fragment,{children:[o===B?(0,i.jsx)(G,{}):null,(0,i.jsxs)("ol",{children:[(0,i.jsx)("li",{children:(0,i.jsx)(a(),{href:"https://support.hostinger.com/en/articles/4738777-how-to-manage-cname-records",children:"Manage your DNS records via Hostinger’s DNS Zone Editor."})}),(0,i.jsx)("li",{children:"Select the type of record as CNAME."}),(0,i.jsx)("li",{children:'For the "Name (Host)“ field, input the hostname for the record without the domain name.'}),(0,i.jsx)("li",{children:'In the "Target (Points to)“ field, specify the destination the CNAME should point to.'}),(0,i.jsxs)("li",{children:["Fill in and save:",(0,i.jsx)("br",{}),"Name: ",t,(0,i.jsx)("br",{}),"Value: ",o,".",(0,i.jsx)("br",{}),"TTL: 60",(0,i.jsx)("br",{}),(0,i.jsx)(P,{})]})]})]}),"IONOS / 1and1":(0,i.jsxs)(i.Fragment,{children:[o===B?(0,i.jsx)(G,{}):null,(0,i.jsxs)("ol",{children:[(0,i.jsx)("li",{children:(0,i.jsx)(a(),{href:"https://www.ionos.com/help/domains/configuring-cname-records-for-subdomains/configuring-a-cname-record-for-a-subdomain/",children:"Log in to IONOS and go to the Domains & SSL section."})}),(0,i.jsx)("li",{children:"Next to the desired domain, click on the gear symbol under Actions and select Manage Subdomains."}),(0,i.jsx)("li",{children:"Next to the desired subdomain, click on the DNS."}),(0,i.jsx)("li",{children:"Click ADD RECORD and select CNAME."}),(0,i.jsxs)("li",{children:["Fill in and save:",(0,i.jsx)("br",{}),"Name: ",t,(0,i.jsx)("br",{}),"Value: ",o,".",(0,i.jsx)("br",{}),"TTL: 60",(0,i.jsx)("br",{}),(0,i.jsx)(P,{})]})]})]})}},[t,o]);return(0,i.jsx)(i.Fragment,{children:(0,i.jsx)(O,{children:Object.entries(l).map(function(e){var n=(0,E._)(e,2),t=n[0],s=n[1];return(0,i.jsx)(R,{title:t,children:s},t)})})})}var Y=t(25191),q=t(31424),U=t(35339),X=t.n(U);function Q(e){var n=e.selectedArticle,t=e.footerData,s=e.headerData,l=e.menuData,d=e.latestBlogPosts,h=e.menu,u=e.prefix,m=void 0===u?"cdn/documentation":u,x=e.title,j=e.content,g=e.internalTags,p=void 0===g?{}
1:g,b=e.children,v=e.heroText,f=e.supportText,y=e.seo,_=e.allSlugLocales;return(0,i.jsx)(r.P,{title:y.title,description:y.description,location:m,headerData:s,footerData:t,menuData:l,latestBlogPosts:d,allSlugLocales:_,children:(0,i.jsx)("div",{className:X()["documentation-styles"],children:(0,i.jsxs)(o.A,{children:[(0,i.jsxs)("header",{children:[(0,i.jsx)("span",{className:X()["hero-title"],children:null==v?void 0:v.title}),(0,i.jsx)("span",{className:X()["hero-subtitle"],children:null==v?void 0:v.subtitle})]}),(0,i.jsx)("div",{className:X()["white-separator"]}),(0,i.jsxs)("section",{children:[(0,i.jsxs)("div",{className:X().navigation,children:[(0,i.jsx)("ul",{children:(0,i.jsx)(i.Fragment,{children:h.map(function(e){var t;return(0,i.jsxs)("li",{children:[(0,i.jsx)("span",{className:X().title,children:e.title}),(0,i.jsx)("ul",{children:null==(t=e.children)?void 0:t.map(function(e){return(0,i.jsx)("li",{children:(0,i.jsx)(a(),{href:"/".concat(m,"/").concat(e.slug),className:n===[e.slug].join("-")?X().selected:"",children:e.title})},e.slug)})})]},e.slug)})})}),(0,i.jsx)("div",{className:X().help,children:null==f?void 0:f.split("$EMAIL$").map(function(e,n){return 0===n?e:(0,i.jsx)("a",{href:"mailto:[email protected]",children:"[email protected]"},n)})})]}),(0,i.jsx)("div",{className:X().items,children:(0,i.jsxs)("article",{children:[(0,i.jsx)("h1",{children:x}),j&&(0,i.jsx)(c.d6,{data:j,renderLinkToRecord:q.TB,metaTransformer:q.H0,renderBlock:function(e){var n=e.record;return"ImageBlockRecord"===n.__typename?(0,i.jsx)("span",{className:X()["img-box"],children:(0,i.jsx)("img",{src:(0,Y.D)(n.asset.url),alt:n.asset.alt||""})}):null}}),p&&"cdn-setup-guide"===p.component&&(0,i.jsx)(i.Fragment,{children:(0,i.jsx)(C,{isOpen:!1,onClose:function(){},onChange:function(e){}})}),p&&"cdn-dns-instructions"===p.component&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("h2",{children:"DNS setup instructions"}),(0,i.jsx)(V,{})]}),p&&"cdn-resize-api"===p.component&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("dl",{children:[(0,i.jsx)("dt",{children:(0,i.jsxs)("code",{children:["resize.method=",(0,i.jsx)("b",{children:"scale"})]})}),(0,i.jsxs)("dd",{children:["Scales the image down proportionally. You must provide either a target ",(0,i.jsx)("code",{children:"resize.width"})," or a target"," ",(0,i.jsx)("code",{children:"resize.height "})," parameter, but not both. The scaled image will have exactly the provided width or height."]}),(0,i.jsx)("dt",{children:(0,i.jsxs)("code",{children:["resize.method=",(0,i.jsx)("b",{children:"fit"})]})}),(0,i.jsxs)("dd",{children:["Scales the image down proportionally so that it fits within the given dimensions. You must provide both a"," ",(0,i.jsx)("code",{children:"resize.width "})," and"," ",(0,i.jsx)("code",{children:"resize.height"})," parameter. The scaled image will not exceed either of these dimensions."]}),(0,i.jsx)("dt",{children:(0,i.jsxs)("code",{children:["resize.method=",(0,i.jsx)("b",{children:"cover"})]})}),(0,i.jsxs)("dd",{children:["Scales the image proportionally and crops it if necessary so that the result has exactly the given dimensions. You must provide both a"," ",(0,i.jsx)("code",{children:"resize.width "})," and"," ",(0,i.jsx)("code",{children:"resize.height"})," parameter. The parts of the image that are cropped away are determined automatically. An intelligent algorithm determines the most important areas of your image."]}),(0,i.jsx)("dt",{children:(0,i.jsxs)("code",{children:["resize.method=",(0,i.jsx)("b",{children:"thumb"})]})}),(0,i.jsxs)("dd",{children:["A more advanced implementation of cover that also detects cut-out images with plain backgrounds. The image is scaled down to the ",(0,i.jsx)("code",{children:"resize.width "})," ","and ",(0,i.jsx)("code",{children:"resize.height"})," you provide. If an image is detected with a free-standing object it will add more background space where necessary or crop the unimportant parts."]})]}),(0,i.jsx)("p",{children:"We have guides and video instructions available for many popular platforms (content management systems and web frameworks). More are coming!"})]}),b]})})]})]})})})}},51004:e=>{e.exports={a1652hxn:"a1652hxn",ayo4093:"ayo4093",ajv9gt4:"ajv9gt4"}},53215:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});let i={src:"/_next/static/media/joomla.b3663def.svg",height:79,width:381,blurWidth:0,blurHeight:0}},58752:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});let i={src:"/_next/static/media/symfony.18d12270.svg",height:57,width:226,blurWidth:0,blurHeight:0}},67616:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});let i={src:"/_next/static/media/magento2.3ac8a362.svg",height:916,width:3316,blurWidth:0,blurHeight:0}},73917:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});let i={src:"/_next/static/media/drupal.7ec47350.svg",height:43,width:166,blurWidth:0,blurHeight:0}},77015:(e,n,t)=>{"use strict";t.r(n),t.d(n,{__N_SSG:()=>a,allDocumentationSlugsTomMenu:()=>c,default:()=>d});var i=t(17844),s=t(93629),r=t(15383),o=t(6268),l=t(46365),a=!0;function c(e){return e.map(function(e){return{slug:e.slug,title:e.menuTitle,children:e.children.map(function(e){return{title:e.menuTitle,slug:e.slug}})}})}function d(e){var n,t,a,d,h,u,m,x,j=e.subscription,g=e.slug,p=(0,o.l)(j).data,b=null==p?void 0:p.header,v=null==p?void 0:p.footer,f=(null==p||null==(n=p.documentation)?void 0:n.title)||"Documentation",y=null==p||null==(t=p.documentation)?void 0:t.content,_=null==p||null==(a=p.documentation)?void 0:a.internalTag,N=c((null==p?void 0:p.allDocumentations)||[]);return p&&p.documentation?(0,r.jsx)(r.Fragment,{children:(0,r.jsx)(l.A,{selectedArticle:g.join("-"),headerData:b,footerData:v,menuData:null==p?void 0:p.menu,latestBlogPosts:null==p?void 0:p.latestBlogPosts,menu:N,title:f,seo:{title:(null==(d=p.documentation.seo)?void 0:d.title)||f,description:(null==(h=p.documentation.seo)?void 0:h.description)||""},content:y,internalTags:_,allSlugLocales:p.documentation._allSlugLocales?p.documentation._allSlugLocales.map(function(e){return(0,s._)((0,i._)({},e),{value:"/cdn/documentation/".concat(e.value)})}
1):void 0,heroText:{title:(null==p||null==(u=p.cdnDocumentation)?void 0:u.heroTitle)||"",subtitle:(null==p||null==(m=p.cdnDocumentation)?void 0:m.heroSubtitle)||""},supportText:(null==p||null==(x=p.cdnDocumentation)?void 0:x.supportText)||""})}):null}},82699:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});let i={src:"/_next/static/media/express.730bbff2.svg",height:31,width:106,blurWidth:0,blurHeight:0}},86023:e=>{e.exports={p1ihm3eu:"p1ihm3eu",integrations:"integrations",integration:"integration",selected:"selected"}},90157:(e,n,t)=>{"use strict";t.d(n,{A:()=>r});var i=t(15383),s=t(52282);t(14343),t(11154);let r=function(e){var n=e.className,t=e.children;return(0,i.jsx)("div",{className:(0,s.cx)("page-width",n,"s17tg7yg"),children:t})}},90499:(e,n,t)=>{"use strict";t.d(n,{A:()=>h});var i=t(17844),s=t(12584),r=t(15383),o=t(3673),l=t(62806),a=t.n(l),c=t(75950);function d(){var e=(0,s._)(["\n            .ReactModal__Overlay {\n              z-index: 998;\n              display: flex;\n              justify-content: center;\n              align-items: flex-start;\n              overflow-y: auto;\n            }\n\n            .modal {\n              outline: none;\n              overflow-y: auto;\n              z-index: 999;\n              margin: 2rem;\n              max-width: 120rem;\n              background-color: white;\n              width: fit-content;\n              box-shadow: 0.2rem 0.6rem 2rem 0 rgba(black, 0.1);\n              border-radius: 0.6rem;\n              @media (",") {\n                margin: 5rem;\n              }\n\n              .icon-times-circle {\n                position: absolute;\n                top: 3rem;\n                right: 4rem;\n                font-size: 2.4rem;\n                cursor: pointer;\n              }\n\n              input[type='text'] {\n                height: 3.5rem;\n                width: 23rem;\n                border: 0.1rem solid #bbcbd0;\n                border-radius: 0.2rem;\n                background-color: #f8fbfc;\n                padding-left: 1rem;\n\n                &::placeholder {\n                  color: #a1b7bf;\n                  font-size: 1.4rem;\n                }\n              }\n            }
1\n\n            .modal-enter {\n              opacity: 0.01;\n            }\n\n            .modal-enter.modal-enter-active {\n              opacity: 1;\n              transition: opacity 150ms ease-in;\n            }\n\n            .modal-leave {\n              opacity: 1;\n            }\n\n            .modal-leave.modal-leave-active {\n              opacity: 0.01;\n              transition: opacity 150ms ease-in;\n            }\n\n            .modal-appear {\n              opacity: 0.01;\n            }\n\n            .modal-appear.modal-appear-active {\n              opacity: 1;\n              transition: opacity 150ms ease-in;\n            }\n          "]);return d=function(){return e},e}function h(e){return(0,r.jsx)("div",{children:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(a(),(0,i._)({className:"modal",style:{overlay:{backgroundColor:"rgba(161, 183, 191, 0.85)"},content:{padding:"0.5rem"}}},e)),(0,r.jsx)(o.mL,{styles:(0,o.AH)(d(),c.A.breakpoints.desktop)})]})})}a().setAppElement("#__next")},94800:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});let i={src:"/_next/static/media/prestashop.c761fda4.svg",height:323,width:2160,blurWidth:0,blurHeight:0}},96176:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});let i={src:"/_next/static/media/laravel.8473fe24.svg",height:150,width:600,blurWidth:0,blurHeight:0}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.