document.getElementById("currentYear").textContent=(new Date).getFullYear();const imageUrlInput=document.getElementById("imageUrl"),positionInput=document.getElementById("position"),fetchButton=document.getElementById("fetchButton"),buttonText=document.getElementById("buttonText"),loadingSpinner=document.getElementById("loadingSpinner"),outputDiv=document.getElementById("output"),errorDisplayDiv=document.getElementById("errorDisplay"),byteInspectorForm=document.getElementById("byteInspectorForm");async function fetchByteValue(){fetchButton.disabled=!0,buttonText.textContent="Fetching...",loadingSpinner.style.display="inline-block",outputDiv.style.display="none",outputDiv.innerHTML="",errorDisplayDiv.innerHTML="";const e=imageUrlInput.value,t=positionInput.value,n=parseInt(t);if(!e)return displayError("Please enter a URL."),void resetButton();if(isNaN(n)||n<1)return displayError("Please enter a valid byte position (starting at 1)."),void resetButton();try{const t=await fetch(e);if(!t.ok)throw new Error(`HTTP error! Status: ${t.status} ${t.statusText}`);const a=await t.arrayBuffer(),s=new Uint8Array(a),r=n-1;if(r>=s.length)return displayError(`Position ${n} exceeds file length (${s.length} bytes).`),void resetButton();const i=s[r],o=i.toString(16).padStart(2,"0").toUpperCase(),l=i,u=String.fromCharCode(i),p=`U+${o.padStart(4,"0")}`;outputDiv.innerHTML=`\n