PageSourceSearch

https://tarek-mhassan.com/_next/static/chunks/03da4a1ed4ae2876.js

js tarek-mhassan.com collected 2026-10-08 04:17:04 UTC 40,941 bytes, 1 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,33525,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"warnOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},75254,e=>{"use strict";var t=e.i(71645);let n=(...e)=>e.filter((e,t,n)=>!!e&&""!==e.trim()&&n.indexOf(e)===t).join(" ").trim(),a=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var i={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let r=(0,t.forwardRef)(({color:e="currentColor",size:a=24,strokeWidth:r=2,absoluteStrokeWidth:o,className:s="",children:l,iconNode:c,...d},u)=>(0,t.createElement)("svg",{ref:u,...i,width:a,height:a,stroke:e,strokeWidth:o?24*Number(r)/Number(a):r,className:n("lucide",s),...!l&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(d)&&{"aria-hidden":"true"},...d},[...c.map(([e,n])=>(0,t.createElement)(e,n)),...Array.isArray(l)?l:[l]])),o=(e,i)=>{let o=(0,t.forwardRef)(({className:o,...s},l)=>(0,t.createElement)(r,{ref:l,iconNode:i,className:n(`lucide-${a(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,o),...s}));return o.displayName=a(e),o};e.s(["default",()=>o],75254)},98183,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var a={assign:function(){return l},searchParamsToUrlQuery:function(){return r},urlQueryToSearchParams:function(){return s}};for(var i in a)Object.defineProperty(n,i,{enumerable:!0,get:a[i]});function r(e){let t={};for(let[n,a]of e.entries()){let e=t[n];void 0===e?t[n]=a:Array.isArray(e)?e.push(a):t[n]=[e,a]}return t}function o(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function s(e){let t=new URLSearchParams;for(let[n,a]of Object.entries(e))if(Array.isArray(a))for(let e of a)t.append(n,o(e));else t.set(n,o(a));return t}function l(e,...t){for(let n of t){for(let t of n.keys())e.delete(t);for(let[t,a]of n.entries())e.append(t,a)}return e}},95057,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var a={formatUrl:function(){return s},formatWithValidation:function(){return c},urlObjectKeys:function(){return l}};for(var i in a)Object.defineProperty(n,i,{enumerable:!0,get:a[i]});let r=e.r(90809)._(e.r(98183)),o=/https?|ftp|gopher|file/;function s(e){let{auth:t,hostname:n}=e,a=e.protocol||"",i=e.pathname||"",s=e.hash||"",l=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:n&&(c=t+(~n.indexOf(":")?`[${n}]`:n),e.port&&(c+=":"+e.port)),l&&"object"==typeof l&&(l=String(r.urlQueryToSearchParams(l)));let d=e.search||l&&`?${l}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||o.test(a))&&!1!==c?(c="//"+(c||""),i&&"/"!==i[0]&&(i="/"+i)):c||(c=""),s&&"#"!==s[0]&&(s="#"+s),d&&"?"!==d[0]&&(d="?"+d),i=i.replace(/[?#]/g,encodeURIComponent),d=d.replace("#","%23"),`${a}${c}${i}${d}${s}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return s(e)}},18581,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"useMergedRef",{enumerable:!0,get:function(){return i}});let a=e.r(71645);function i(e,t){let n=(0,a.useRef)(null),i=(0,a.useRef)(null);return(0,a.useCallback)(a=>{if(null===a){let e=n.current;e&&(n.current=null,e());let t=i.current;t&&(i.current=null,t())}else e&&(n.current=r(e,a)),t&&(i.current=r(t,a))},[e,t])}function r(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let n=e(t);return"function"==typeof n?n:()=>e(null)}}("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},18967,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var a={DecodeError:function(){return w},MiddlewareNotFoundError:function(){return x},MissingStaticPage:function(){return y},NormalizeError:function(){return b},PageNotFoundError:function(){return v},SP:function(){return f},ST:function(){return g},WEB_VITALS:function(){return r},execOnce:function(){return o},getDisplayName:function(){return u},getLocationOrigin:function(){return c},getURL:function(){return d},isAbsoluteUrl:function(){return l},isResSent:function(){return p},loadGetInitialProps:function(){return m}
1,normalizeRepeatedSlashes:function(){return h},stringifyError:function(){return E}};for(var i in a)Object.defineProperty(n,i,{enumerable:!0,get:a[i]});let r=["CLS","FCP","FID","INP","LCP","TTFB"];function o(e){let t,n=!1;return(...a)=>(n||(n=!0,t=e(...a)),t)}let s=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,l=e=>s.test(e);function c(){let{protocol:e,hostname:t,port:n}=window.location;return`${e}//${t}${n?":"+n:""}`}function d(){let{href:e}=window.location,t=c();return e.substring(t.length)}function u(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function p(e){return e.finished||e.headersSent}function h(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function m(e,t){let n=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await m(t.Component,t.ctx)}:{};let a=await e.getInitialProps(t);if(n&&p(n))return a;if(!a)throw Object.defineProperty(Error(`"${u(e)}.getInitialProps()" should resolve to an object. But found "${a}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return a}let f="u">typeof performance,g=f&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class w extends Error{}class b extends Error{}class v extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class y extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class x extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function E(e){return JSON.stringify({message:e.message,stack:e.stack})}},73668,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"isLocalURL",{enumerable:!0,get:function(){return r}});let a=e.r(18967),i=e.r(52817);function r(e){if(!(0,a.isAbsoluteUrl)(e))return!0;try{let t=(0,a.getLocationOrigin)(),n=new URL(e,t);return n.origin===t&&(0,i.hasBasePath)(n.pathname)}catch(e){return!1}}},84508,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"errorOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},22016,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var a={default:function(){return w},useLinkStatus:function(){return v}};for(var i in a)Object.defineProperty(n,i,{enumerable:!0,get:a[i]});let r=e.r(90809),o=e.r(43476),s=r._(e.r(71645)),l=e.r(95057),c=e.r(8372),d=e.r(18581),u=e.r(18967),p=e.r(5550);e.r(33525);let h=e.r(91949),m=e.r(73668),f=e.r(9396);function g(e){return"string"==typeof e?e:(0,l.formatUrl)(e)}function w(t){var n;let a,i,r,[l,w]=(0,s.useOptimistic)(h.IDLE_LINK_STATUS),v=(0,s.useRef)(null),{href:y,as:x,children:E,prefetch:S=null,passHref:A,replace:k,shallow:I,scroll:z,onClick:P,onMouseEnter:N,onTouchStart:C,legacyBehavior:T=!1,onNavigate:j,ref:M,unstable_dynamicOnHover:R,...L}=t;a=E,T&&("string"==typeof a||"number"==typeof a)&&(a=(0,o.jsx)("a",{children:a}));let U=s.default.useContext(c.AppRouterContext),O=!1!==S,B=!1!==S?null===(n=S)||"auto"===n?f.FetchStrategy.PPR:f.FetchStrategy.Full:f.FetchStrategy.PPR,{href:_,as:$}=s.default.useMemo(()=>{let e=g(y);return{href:e,as:x?g(x):e}},[y,x]);if(T){if(a?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});i=s.default.Children.only(a)}let W=T?i&&"object"==typeof i&&i.ref:M,D=s.default.useCallback(e=>(null!==U&&(v.current=(0,h.mountLinkInstance)(e,_,U,B,O,w)),()=>{v.current&&((0,h.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,h.unmountPrefetchableInstance)(e)}),[O,_,U,B,w]),H={ref:(0,d.useMergedRef)(D,W),onClick(t){T||"function"!=typeof P||P(t),T&&i.props&&"function"==typeof i.props.onClick&&i.props.onClick(t),!U||t.defaultPrevented||function(t,n,a,i,r,o,l){if("u">typeof window){let c,{nodeName:d}=t.currentTarget;if("A"===d.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;
1if(!(0,m.isLocalURL)(n)){r&&(t.preventDefault(),location.replace(n));return}if(t.preventDefault(),l){let e=!1;if(l({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:u}=e.r(99781);s.default.startTransition(()=>{u(a||n,r?"replace":"push",o??!0,i.current)})}}(t,_,$,v,k,z,j)},onMouseEnter(e){T||"function"!=typeof N||N(e),T&&i.props&&"function"==typeof i.props.onMouseEnter&&i.props.onMouseEnter(e),U&&O&&(0,h.onNavigationIntent)(e.currentTarget,!0===R)},onTouchStart:function(e){T||"function"!=typeof C||C(e),T&&i.props&&"function"==typeof i.props.onTouchStart&&i.props.onTouchStart(e),U&&O&&(0,h.onNavigationIntent)(e.currentTarget,!0===R)}};return(0,u.isAbsoluteUrl)($)?H.href=$:T&&!A&&("a"!==i.type||"href"in i.props)||(H.href=(0,p.addBasePath)($)),r=T?s.default.cloneElement(i,H):(0,o.jsx)("a",{...L,...H,children:a}),(0,o.jsx)(b.Provider,{value:l,children:r})}e.r(84508);let b=(0,s.createContext)(h.IDLE_LINK_STATUS),v=()=>(0,s.useContext)(b);("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},52239,e=>{"use strict";let t=e.i(47167).default.env.NEXT_PUBLIC_BASE_PATH??"";e.s(["BASE_PATH",0,t])},21218,e=>{"use strict";let t=(0,e.i(75254).default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);e.s(["Activity",()=>t],21218)},83086,e=>{"use strict";let t=(0,e.i(75254).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}
1],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);e.s(["Sparkles",()=>t],83086)},72520,e=>{"use strict";let t=(0,e.i(75254).default)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);e.s(["ArrowRight",()=>t],72520)},37727,e=>{"use strict";let t=(0,e.i(75254).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);e.s(["X",()=>t],37727)},71689,e=>{"use strict";let t=(0,e.i(75254).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",()=>t],71689)},18566,(e,t,n)=>{t.exports=e.r(76562)},2355,e=>{"use strict";var t=e.i(47167),n=e.i(71645),a=e.i(18566);function i(){return"u">typeof window}function r(){return"production"}function o(){return"development"===((i()?window.vam:r())||"production")}function s(e){return RegExp(`/${e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?=[/?#]|$)`)}function l(e){return e.startsWith("http://")||e.startsWith("https://")||e.startsWith("/")?e:`/${e}`}function c(e){return(0,n.useEffect)(()=>{var t;e.beforeSend&&(null==(t=window.va)||t.call(window,"beforeSend",e.beforeSend))},[e.beforeSend]),(0,n.useEffect)(()=>{!function(e={debug:!0},t){var n;if(!i())return;let{beforeSend:a,src:s,dataset:c}=function(e,t){var n,a;let i=e;if(t)try{i={...null==(n=JSON.parse(t))?void 0:n.analytics,...e}}catch{}!function(e="auto"){if("auto"===e){window.vam=r();return}window.vam=e}(i.mode);let s={sdkn:"@vercel/analytics"+(i.framework?`/${i.framework}`:""),sdkv:"2.0.1"};return i.disableAutoTrack&&(s.disableAutoTrack="1"),i.viewEndpoint&&(s.viewEndpoint=l(i.viewEndpoint)),i.eventEndpoint&&(s.eventEndpoint=l(i.eventEndpoint)),i.sessionEndpoint&&(s.sessionEndpoint=l(i.sessionEndpoint)),o()&&!1===i.debug&&(s.debug="false"),i.dsn&&(s.dsn=i.dsn),i.endpoint?s.endpoint=i.endpoint:i.basePath&&(s.endpoint=l(`${i.basePath}/insights`)),{beforeSend:i.beforeSend,src:(a=i).scriptSrc?l(a.scriptSrc):o()?"https://va.vercel-scripts.com/v1/script.debug.js":a.basePath?l(`${a.basePath}/insights/script.js`):"/_vercel/insights/script.js",dataset:s}}(e,t);if(window.va||(window.va=function(...e){window.vaq||(window.vaq=[]),window.vaq.push(e)}),a&&(null==(n=window.va)||n.call(window,"beforeSend",a)),document.head.querySelector(`script[src*="${s}"]`))return;let d=document.createElement("script");for(let[e,t]of(d.src=s,Object.entries(c)))d.dataset[e]=t;d.defer=!0,d.onerror=()=>{let e=o()?"Please check if any ad blockers are enabled and try again.":"Be sure to enable Web Analytics for your project and deploy again. See https://vercel.com/docs/analytics/quickstart for more information.";console.log(`[Vercel Web Analytics] Failed to load script from ${s}. ${e}`)},document.head.appendChild(d)}({framework:e.framework||"react",basePath:e.basePath??function(){if(void 0!==t.default&&void 0!==t.default.env)return t.default.env.REACT_APP_VERCEL_OBSERVABILITY_BASEPATH}(),...void 0!==e.route&&{disableAutoTrack:!0},...e},e.configString??function(){if(void 0!==t.default&&void 0!==t.default.env)return t.default.env.REACT_APP_VERCEL_OBSERVABILITY_CLIENT_CONFIG}())},[]),(0,n.useEffect)(()=>{e.route&&e.path&&function({route:e,path:t}){var n;null==(n=window.va)||n.call(window,"pageview",{route:e,path:t})}({route:e.route,path:e.path})},[e.route,e.path]),null}function d(e){let i,r,o,{route:l,path:d}=(i=(0,a.useParams)(),r=(0,a.useSearchParams)(),o=(0,a.usePathname)(),i?{route:function(e,t){if(!e||!t)return e;let n=e;try{let e=Object.entries(t);for(let[t,a]of e)if(!Array.isArray(a)){let e=s(a);e.test(n)&&(n=n.replace(e,`/[${t}]`))}for(let[t,a]of e)if(Array.isArray(a)){let e=s(a.join("/"));e.test(n)&&(n=n.replace(e,`/[...${t}]`))}return n}catch{return e}}(o,Object.keys(i).length?i:Object.fromEntries(r.entries())),path:o}:{route:null,path:o});return n.default.createElement(c,{path:d,route:l,...e,basePath:function(){if(void 0!==t.default&&void 0!==t.default.env)return t.default.env.NEXT_PUBLIC_VERCEL_OBSERVABILITY_BASEPATH}
1(),configString:function(){if(void 0!==t.default&&void 0!==t.default.env)return'{"analytics":{"scriptSrc":"6b5881d724e37de4/script.js","viewEndpoint":"6b5881d724e37de4/view","eventEndpoint":"6b5881d724e37de4/event","sessionEndpoint":"6b5881d724e37de4/session"},"speedInsights":{"scriptSrc":"a7ef06d5a0a6c2eb/script.js","endpoint":"a7ef06d5a0a6c2eb/vitals"}}'}(),framework:"next"})}function u(e){return n.default.createElement(n.Suspense,{fallback:null},n.default.createElement(d,{...e}))}e.s(["Analytics",()=>u])},45678,e=>{"use strict";var t=e.i(43476),n=e.i(52239),a=e.i(22016),i=e.i(18566),r=e.i(71645),o=e.i(75254);let s=(0,o.default)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);var l=e.i(37727),c=e.i(21218),d=e.i(72520),u=e.i(83086);let p=[{slug:"eeecs-international-student-society-quiz-pizza-night-2026",date:"7 October 2026",dateSort:"2026-10-07",title:"Quiz and Pizza Night with the EEECS International Student Society",headline:"Quiz and Pizza Night — Titanic Crew placed fourth.",summary:"An evening of four quiz rounds, individual and team games, and free pizza at the Allstate Software Studio in the Computer Science Building.",category:"Other",overview:"On 7 October 2026, I joined the Quiz and Pizza Night organised by the EEECS International Student Society at Queen's University Belfast. The programme took place from 5:00–7:00 PM in the Allstate Software Studio on the second floor of the Computer Science Building (CSB), bringing international students together for quizzes, team games, and free pizza.",highlights:["Completed four rounds of quizzes covering different topics and challenges.","Took part in both individual challenges and team-based games.","Competed as a member of Titanic Crew, which finished fourth in the team competition.","Connected with fellow international students in a relaxed social setting with free pizza."],experience:"The event was an enjoyable opportunity to meet other international students, collaborate under time pressure, and contribute ideas as part of Titanic Crew. The mix of individual and team rounds kept the programme engaging while encouraging communication and friendly competition.",nextSteps:"I look forward to taking part in more EEECS International Student Society activities and contributing to events that help international students connect across the school.",image:"/photos/News/quiz-night-2026/quiz-pizza-night-highlight.jpeg",imageAlt:"International students sharing pizza during the EEECS Quiz and Pizza Night",additionalImages:[{src:"/photos/News/quiz-night-2026/quiz-night-team-screen.jpeg",alt:"EEECS International Student Society Quiz and Pizza Night participant screen"},{src:"/photos/News/quiz-night-2026/titanic-crew-table.jpeg",alt:"Titanic Crew team table at the EEECS Quiz and Pizza Night"}]},{slug:"student-ambassador-qub-october-2026",date:"3 October 2026",dateSort:"2026-10-03",title:"Serving as a Student Ambassador at Queen's University Belfast",headline:"Serving as a Student Ambassador at Queen's University Belfast, welcoming prospective students and visitors and supporting EEECS tours and event activities.",summary:"Supporting an EEECS visitor event by welcoming prospective students, leading building tours, and helping coordinate visitor activities.",category:"Other",overview:"On 3 October 2026, I served as a Student Ambassador at Queen's University Belfast during an event hosted across the School of Electronics, Electrical Engineering and Computer Science (EEECS), supporting prospective students and visitors throughout the programme.",highlights:["Welcomed and guided prospective students and visitors.","Led building tours across key EEECS facilities.","Supported event coordination and visitor management."],experience:"The activity required clear communication, confident group guidance, and close coordination with staff and student volunteers. It gave me practical experience in representing the university and responding to visitors' needs in a busy event setting.",nextSteps:"I plan to continue supporting university open days, outreach programmes, and visitor events while taking on broader responsibilities in student engagement and event coordination.",image:"/photos/Student_Ambassador/student-ambassador-qub.png",imageAlt:"Md Tarek Hassan serving as a Student Ambassador at Queen's University Belfast"},{slug:"near-field-localization-published-aps-ursi-2026",date:"9 September 2026",dateSort:"2026-09-09",title:"Near field-aware UE localization paper published at AP-S/URSI 2026",headline:"Published at AP-S/URSI 2026: “Near Field-Aware UE Localization in RIS-Aided Wireless Networks Through ML-Regressor.”",summary:"The paper presents a machine-learning regression approach for user-equipment localization in RIS-aided near-field wireless networks.",category:"Publication",overview:"The paper “Near Field-Aware UE Localization in RIS-Aided Wireless Networks Through ML-Regressor” was published at AP-S/URSI 2026. It investigates user-equipment localization in RIS-assisted wireless environments and uses machine-learning regression to learn location-sensitive information in the near-field propagation regime.",highlights:["Achieved a minimum ranging mean absolute error (MAE) below 4 cm at 28 GHz.","Evaluated near-field localization with a 20 × 20 antenna array.","Mapped SNR fingerprints from a small set of RIS beam-sweeping configurations to UE polar coordinates."],experience:"This work strengthened my experience in framing near-field localization as a data-driven regression problem, analysing location-sensitive wireless responses, and communicating the method and findings for an antennas and propagation audience.",nextSteps:"The next stage is to evaluate the approach with broader user positions, measured channels, and practical hardware variations to study how reliably the model transfers to realistic RIS-assisted environments.",citation:"M. T. Hassan, D. Zelenchuk, and M. A. B. Abbasi, “Near Field-Aware UE Localization in RIS-Aided Wireless Networks Through ML-Regressor,” in Proc. 2026 IEEE International Symposium on Antennas and Propagation and USNC-URSI Radio Scie
1nce Meeting (AP-S/URSI), Detroit, MI, USA, 2026.",sourceUrl:"https://doi.org/10.1109/AP-S/USNC-URSI60190.2026.11675493",sourceLabel:"View publication DOI"},{slug:"ucmmt-2026-poster-presentation",date:"25 August 2026",dateSort:"2026-08-25",title:"Poster presentation at UCMMT 2026 in Birmingham",headline:"Poster presentation at UCMMT 2026 in Birmingham — “Experimental Validation of Localisation in RIS-Assisted mmWave Networks.”",summary:"Presented experimental results on machine-learning localization using measurements from a 28 GHz RIS-assisted mmWave system.",category:"Talk",overview:"I presented the poster “Experimental Validation of Localisation in RIS-Assisted mmWave Networks” at UCMMT 2026 in Birmingham. The work examines how machine-learning localization models transfer from simulation to measurements collected from a physical 28 GHz RIS-assisted wireless system.",highlights:["Used a 20 × 20 RIS at 28 GHz with four angularly steered, 1-bit phase profiles.","KNN achieved 0.94° angle MAE and 5 cm range MAE on the simulation test set.","Experimental validation achieved 0.5° angle error and 5.3–8.3 cm range error without retraining."],experience:"Preparing and presenting the poster gave me experience in explaining the experimental setup, learning pipeline, and angular and range localization results to a conference audience, while discussing the practical challenges of measured near-field data.",nextSteps:"The next work will extend the measurement study across more locations, angles, and dynamic scenarios to assess the robustness of the localization pipeline under changing propagation conditions.",citation:"M. T. Hassan, D. Zelenchuk, G. Travers, M. A. B. Abbasi, and G. G. Machado, “Experimental Validation of Localisation in RIS-Assisted mmWave Networks,” in Proc. 19th IEEE United Conference on Millimetre Waves and Terahertz Technologies (UCMMT), Birmingham, U.K., 2026.",image:"/photos/News/ucmmt-poster.jpeg",imageAlt:"UCMMT 2026 poster on experimental validation of RIS-assisted mmWave localization"},{slug:"ris-size-beam-sweeping-published-eucap-2026",date:"18 August 2026",dateSort:"2026-08-18",title:"RIS size and ML-enabled beam sweeping paper published at EuCAP 2026",headline:"Published at EuCAP 2026: “Impact of RIS Size on Machine Learning-Enabled Beam Sweeping for User Localization.”",summary:"The study evaluates how RIS aperture size affects machine-learning-enabled beam sweeping and user localization performance.",category:"Publication",overview:"The paper “Impact of RIS Size on Machine Learning-Enabled Beam Sweeping for User Localization” was published at EuCAP 2026. It studies how the physical size of a reconfigurable intelligent surface changes the spatial information captured during beam sweeping and the resulting machine-learning localization performance.",highlights:["Compared three RIS apertures: 10 × 10, 20 × 20, and 30 × 30 elements.","The best approach produced mean errors below 1.5 dB for the 10 × 10 aperture.","Six probing beams improved performance for larger apertures by reducing prediction outliers."],experience:"The study developed my experience in comparing RIS aperture configurations, interpreting beam-sweeping data, and connecting physical design choices with the performance of a learning-based localization model.",nextSteps:"Future work will examine wider-band, multi-user, and hardware-aware scenarios to understand how RIS size and configuration should be selected for practical localization systems.",citation:"M. T. Hassan, D. Zelenchuk, M. A. B. Abbasi, and I. Munina, “Impact of RIS Size on Machine Learning-Enabled Beam Sweeping for User Localization,” in Proc. 20th European Conference on Antennas and Propagation (EuCAP), Dublin, Ireland, 2026.",sourceUrl:"https://doi.org/10.23919/EuCAP68105.2026.11612071",sourceLabel:"View publication DOI",image:"/photos/News/Eucap.png",imageAlt:"EuCAP 2026 presentation on RIS size and machine-learning-enabled beam sweeping"},{slug:"ris-near-field-localization-accepted-globecom-2026",date:"31 July 2026",dateSort:"2026-07-31",title:"RIS near-field localization paper accepted at IEEE GLOBECOM 2026",headline:"Accepted at IEEE GLOBECOM 2026: “RIS-Aided Near-Field mmWave Localization Under Cross-Link Interference via Beam-Domain ML Fingerprinting.”",summary:"Accepted for the RIS and Smart Environments symposium at IEEE GLOBECOM 2026 in Macau.",category:"Publication",overview:"The paper “RIS-Aided Near-Field mmWave Localization Under Cross-Link Interference via Beam-Domain ML Fingerprinting” was accepted at IEEE GLOBECOM 2026. It develops a beam-domain machine-learning fingerprinting approach for user localization while accounting for cross-link interference in RIS-assisted near-field mmWave networks.",highlights:["At 28 GHz with a 20 × 20 RIS, KNN achieved 0.37° angle MAE and 4 cm range MAE under clean conditions.","Under cross-link interference, KNN recorded 1.4° angle MAE and 7.6 cm range MAE.","The results show that interference affects angle estimation more strongly than range estimation."],experience:"This research expanded my experience in modelling interference-aware localization, constructing useful beam-domain fingerprints, and evaluating how interacting wireless links affect learning-based position estimation.",nextSteps:"The next step is experimental validation with measured channels and an investigation of joint communication and sensing strategies that remain reliable under varying interference levels.",citation:"M. T. Hassan, D. Zelenchuk, and M. A. B. Abbasi, “RIS-Aided Near-Field mmWave Localization Under Cross-Link Interference via Beam-Domain ML Fingerprinting,” in Proc. 2026 IEEE Global Communications Conference (GLOBECOM), Macau, China, 2026.",sourceUrl:"https://www.linkedin.com/feed/update/urn:li:activity:7488974087323648000/",sourceLabel:"View announcement on LinkedIn"},{slug:"angular-localization-published-ict-2026",date:"12 July 2026",dateSort:"2026-07-12",title:"Learning-based angular localization paper published at IEEE ICT 2026",headline:"Published at IEEE ICT 2026: “Efficient Angular Localization in RIS-Assisted mmWave Network via Learning-Based Estimations.”",summary:"Published work on efficie
1nt learning-based angular localization for RIS-assisted millimetre-wave wireless networks.",category:"Publication",overview:"The paper “Efficient Angular Localization in RIS-Assisted mmWave Network via Learning-Based Estimations” was published following its presentation at IEEE ICT 2026. It explores efficient learning-based angular estimation for user localization in a RIS-assisted millimetre-wave network.",highlights:["KNN achieved 0.79° mean absolute error and an R² score of 0.99 using six probing beams.","Reduced beam-probing overhead by more than 93% compared with exhaustive search.","The resulting 1-bit RIS radiation patterns remained within 1°–2° of the ground-truth direction."],experience:"The project strengthened my experience in building and evaluating a learning-based estimation pipeline, analysing angular localization behaviour, and presenting the contribution within the wider context of intelligent wireless environments.",nextSteps:"Future work will test the estimation approach with measured data and more complex propagation conditions to assess its reliability beyond the original evaluation setting.",citation:"M. T. Hassan, D. Zelenchuk, M. A. B. Abbasi, and A. Ullah, “Efficient Angular Localization in RIS-Assisted mmWave Network via Learning-Based Estimations,” in Proc. 2026 32nd International Conference on Telecommunications (ICT), Thessaloniki, Greece, 2026.",sourceUrl:"https://www.linkedin.com/feed/update/urn:li:activity:7483837406597660672/",sourceLabel:"View announcement on LinkedIn",image:"/photos/News/ict.png",imageAlt:"IEEE ICT 2026 publication update"},{slug:"experimental-localisation-accepted-ucmmt-2026",date:"18 May 2026",dateSort:"2026-05-18",title:"Experimental RIS localization paper accepted at UCMMT 2026",headline:"Accepted at UCMMT 2026: “Experimental Validation of Localisation in RIS-Assisted mmWave Networks.”",summary:"Accepted work on experimental validation of learning-based localization in a RIS-assisted 28 GHz wireless system.",category:"Publication",overview:"The paper “Experimental Validation of Localisation in RIS-Assisted mmWave Networks” was accepted at UCMMT 2026. It evaluates learning-based localization with measurements from a physical 28 GHz RIS-assisted setup, focusing on how models transfer from simulation to real radio hardware.",highlights:["Used a 20 × 20 RIS at 28 GHz with four angularly steered, 1-bit phase profiles.","KNN achieved 0.94° angle MAE and 5 cm range MAE on the simulation test set.","Experimental validation achieved 0.5° angle error and 5.3–8.3 cm range error without retraining."],experience:"This work gave me practical experience in connecting simulation-based research with measured wireless data, organising an experimental localization pipeline, and assessing model behaviour under real propagation and hardware conditions.",nextSteps:"The next phase will broaden the measurement campaign across additional positions and hardware configurations and investigate methods that reduce the remaining simulation-to-measurement gap.",citation:"M. T. Hassan, D. Zelenchuk, G. Travers, M. A. B. Abbasi, and G. G. Machado, “Experimental Validation of Localisation in RIS-Assisted mmWave Networks,” in Proc. 19th IEEE United Conference on Millimetre Waves and Terahertz Technologies (UCMMT), Birmingham, U.K., 2026.",sourceUrl:"https://www.linkedin.com/feed/update/urn:li:activity:7462198912255430658/",sourceLabel:"View announcement on LinkedIn",image:"/photos/News/ucmmt.png",imageAlt:"UCMMT 2026 paper acceptance announcement"},{slug:"ris-size-localization-presented-eucap-2026",date:"23 April 2026",dateSort:"2026-04-23",title:"RIS size and user localization work presented at EuCAP 2026",headline:"Presented at EuCAP 2026: “Impact of RIS Size on Machine Learning-Enabled Beam Sweeping for User Localization.”",summary:"Presented research on the relationship between RIS size, beam-sweeping measurements, and machine-learning user localization.",category:"Talk",overview:"I presented the paper “Impact of RIS Size on Machine Learning-Enabled Beam Sweeping for User Localization” at EuCAP 2026 in Dublin. The presentation explained how changing the RIS aperture affects beam-sweeping observations and the performance of a machine-learning user-localization model.",highlights:["Compared three RIS apertures: 10 × 10, 20 × 20, and 30 × 30 elements.","The best approach produced mean errors below 1.5 dB for the 10 × 10 aperture.","Six probing beams improved performance for larger apertures by reducing prediction outliers."],experience:"Presenting at EuCAP gave me experience in communicating the relationship between RIS design and localization performance, responding to technical questions, and discussing practical system choices with the antennas and propagation community.",nextSteps:"The next activity is to expand the investigation across more RIS sizes and operating conditions and connect the findings with hardware measurements for practical validation.",citation:"M. T. Hassan, D. Zelenchuk, M. A. B. Abbasi, and I. Munina, “Impact of RIS Size on Machine Learning-Enabled Beam Sweeping for User Localization,” in Proc. 20th European Conference on Antennas and Propagation (EuCAP), Dublin, Ireland, 2026.",sourceUrl:"https://www.linkedin.com/feed/update/urn:li:activity:7453116780107165696/",sourceLabel:"View presentation update on LinkedIn",image:"/photos/News/Eucap.png",imageAlt:"EuCAP 2026 presentation update"}];function h(){let e=p.slice().sort((e,t)=>
1e.dateSort<t.dateSort?1:-1).slice(0,5),n=e.length>0?`Latest News || ${e.map(e=>`${e.date}: ${e.headline}`).join(" || ")}`:"Latest News || New publications coming soon",i=(0,t.jsxs)("span",{className:"inline-flex items-center gap-2 px-5",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-cyan-200"}),n]});return(0,t.jsx)(a.default,{href:"/news","aria-label":"View latest news",className:"research-ticker group block border-b border-cyan-300/15 bg-gradient-to-r from-slate-950 via-cyan-950/80 to-slate-950 text-cyan-50",children:(0,t.jsxs)("div",{className:"mx-auto flex h-9 max-w-6xl items-center gap-3 overflow-hidden px-4 text-xs font-semibold sm:px-6 lg:px-8",children:[(0,t.jsxs)("span",{className:"z-10 inline-flex shrink-0 items-center gap-2 rounded-full border border-cyan-300/25 bg-cyan-300/10 px-2.5 py-1 uppercase tracking-wider text-cyan-100",children:[(0,t.jsx)(u.Sparkles,{size:13}),"New"]}),(0,t.jsx)("div",{className:"min-w-0 flex-1 overflow-hidden",children:(0,t.jsxs)("div",{className:"world-cup-ticker-track flex w-max whitespace-nowrap",children:[(0,t.jsx)("div",{className:"flex items-center",children:i}),(0,t.jsx)("div",{className:"flex items-center","aria-hidden":"true",children:i})]})}),(0,t.jsxs)("span",{className:"z-10 hidden shrink-0 items-center gap-1 text-cyan-100/75 transition group-hover:text-cyan-50 sm:inline-flex",children:[(0,t.jsx)(c.Activity,{size:13}),"News",(0,t.jsx)(d.ArrowRight,{size:13})]})]})})}let m=(0,o.default)("clock",[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);function f(e){return String(e).padStart(2,"0")}function g(e){let t=e.getHours(),n=f(t%12||12),a=f(e.getMinutes()),i=f(e.getSeconds());return`${n}:${a}:${i} ${t>=12?"PM":"AM"}`}function w({className:e="inline-flex"}){let n,a,[i,o]=(0,r.useState)(null);return(0,r.useEffect)(()=>{let e=window.requestAnimationFrame(()=>{o(new Date)}),t=window.setInterval(()=>{o(new Date)},1e3);return()=>{window.cancelAnimationFrame(e),window.clearInterval(t)}},[]),(0,t.jsxs)("div",{className:["shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border border-white/10 bg-white/5 px-2.5 py-1 text-[11px] font-medium text-white/65",e].join(" "),"aria-live":"polite",children:[(0,t.jsx)(m,{size:12,className:"shrink-0 text-cyan-200","aria-hidden":"true"}),(0,t.jsx)("time",{className:"tabular-nums sm:hidden",children:i?g(i):"--:--:-- --"}),(0,t.jsx)("time",{className:"hidden tabular-nums sm:inline xl:hidden",children:i?(n=i.getDate(),a=i.toLocaleDateString("en-GB",{month:"short"}),`${n} ${a} \xb7 ${g(i)}`):"-- --- · --:--:-- --"}),(0,t.jsx)("time",{className:"hidden tabular-nums xl:inline",children:i?g(i):"--:--:-- --"})]})}let b=[{href:"/education",label:"Education"},{href:"/research",label:"Research"},{href:"/skills",label:"Skills & Projects"},{href:"/knowledge",label:"Knowledge Hub"},{href:"/teaching",label:"Teaching"},{href:"/publications",label:"Publications"},{href:"/leadership",label:"Leadership"},{href:"/photos",label:"Photos"},{href:"/collaboration",label:"Collaboration"}];function v(e,t){return"/"===t?"/"===e:"/knowledge"===t?e.startsWith("/knowledge")||e.startsWith("/tutorials"):e===t||e.startsWith(`${t}/`)}function y(){let e=(0,i.usePathname)(),[o,c]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{let e=e=>{"Escape"===e.key&&c(!1)};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[]),(0,t.jsxs)("header",{className:"fixed inset-x-0 top-0 z-50 border-b border-white/10 bg-slate-950/90 backdrop-blur",children:[(0,t.jsx)(h,{}),(0,t.jsxs)("div",{className:"site-navbar-row mx-auto flex max-w-6xl items-center justify-between px-4 py-3 sm:px-6 lg:px-8",children:[(0,t.jsxs)("div",{className:"inline-flex shrink-0 items-center gap-2",children:[(0,t.jsx)(a.default,{href:"/",className:"group inline-flex items-center gap-2 shrink-0",children:(0,t.jsx)("span",{className:"text-sm font-semibold tracking-wide text-white/90 group-hover:text-white",children:"Tarek Hassan"})}),(0,t.jsx)(w,{className:"inline-flex"})]}),(0,t.jsxs)("nav",{className:"hidden shrink-0 gap-1 xl:flex",children:[b.map(n=>{let i=v(e,n.href);return(0,t.jsxs)(a.default,{href:n.href,"aria-current":i?"page":void 0,className:["relative rounded-full px-3 py-2 text-sm whitespace-nowrap transition",i?"text-white font-semibold":"text-white/70 hover:text-white"].join(" "),children:[n.label,(0,t.jsx)("span",{className:["absolute inset-x-3 -bottom-[10px] h-[2px] rounded-full transition",i?"bg-gradient-to-r from-fuchsia-400 to-cyan-300 opacity-100":"opacity-0"].join(" ")})]},n.href)}),(0,t.jsx)("a",{href:`${n.BASE_PATH}
1/api/cv`,className:"ml-2 rounded-full bg-gradient-to-r from-fuchsia-400 to-cyan-300 px-4 py-2 text-sm font-semibold whitespace-nowrap text-slate-950 hover:opacity-90 transition",children:"CV"})]}),(0,t.jsxs)("button",{type:"button",className:"inline-flex items-center gap-2 rounded-full border border-white/10 bg-white/5 px-3 py-2 text-sm text-white/80 transition hover:bg-white/10 hover:text-white xl:hidden","aria-expanded":o,"aria-controls":"mobile-nav",onClick:()=>c(e=>!e),children:[o?(0,t.jsx)(l.X,{size:18}):(0,t.jsx)(s,{size:18}),"Menu"]})]}),o?(0,t.jsx)("div",{id:"mobile-nav",className:"site-mobile-nav border-t border-white/10 bg-slate-950/95 shadow-2xl shadow-black/30 backdrop-blur xl:hidden",children:(0,t.jsx)("div",{className:"mx-auto max-h-[calc(100vh-104px)] max-w-6xl overflow-y-auto px-4 py-3 sm:px-6",children:(0,t.jsxs)("div",{className:"grid gap-1.5",children:[b.map(n=>{let i=v(e,n.href);return(0,t.jsx)(a.default,{href:n.href,onClick:()=>c(!1),className:["rounded-2xl px-4 py-3 text-sm transition border",i?"border-white/15 bg-white/10 text-white font-semibold":"border-white/10 bg-white/5 text-white/80 hover:bg-white/10 hover:text-white"].join(" "),children:n.label},n.href)}),(0,t.jsx)("a",{href:`${n.BASE_PATH}/api/cv`,onClick:()=>c(!1),className:"mt-2 rounded-2xl bg-gradient-to-r from-fuchsia-400 to-cyan-300 px-4 py-3 text-sm font-semibold text-slate-950 hover:opacity-90 transition",children:"Download CV"})]})})}):null]})}e.s(["default",()=>y],45678)},67494,e=>{"use strict";var t=e.i(43476),n=e.i(22016),a=e.i(71689);let i=(0,e.i(75254).default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]);var r=e.i(18566);function o(){return"/"===(0,r.usePathname)()?null:(0,t.jsx)("div",{className:"mb-8 flex justify-center sm:justify-start",children:(0,t.jsxs)(n.default,{href:"/",className:"group inline-flex items-center gap-2 rounded-full border border-cyan-200/20 bg-cyan-300/10 px-4 py-2.5 text-sm font-semibold text-cyan-50 transition hover:border-cyan-200/40 hover:bg-cyan-300/15",children:[(0,t.jsx)(a.ArrowLeft,{className:"h-4 w-4 transition group-hover:-translate-x-0.5","aria-hidden":"true"}),(0,t.jsx)(i,{className:"h-4 w-4","aria-hidden":"true"}),"Return to homepage"]})})}e.s(["default",()=>o],67494)},46083,e=>{"use strict";var t=e.i(43476),n=e.i(71645);function a(){let[e,a]=(0,n.useState)(0);return(0,n.useEffect)(()=>{let e=()=>{let e=document.body.scrollHeight-window.innerHeight,t=window.scrollY;e>0?a(t/e*100):a(0)};return window.addEventListener("scroll",e,{passive:!0}),e(),()=>window.removeEventListener("scroll",e)},[]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"fixed top-0 left-0 right-0 z-50 h-1 md:h-1.5 bg-transparent",children:(0,t.jsx)("div",{className:"h-full bg-gradient-to-r from-fuchsia-500 via-purple-500 to-cyan-400",style:{width:`${e}%`,transition:"width 0.05s ease-out"}})}),(0,t.jsx)("div",{className:"fixed top-0 right-0 bottom-0 z-50 w-1 md:w-1.5 bg-transparent",children:(0,t.jsx)("div",{className:"w-full bg-gradient-to-b from-fuchsia-500 via-purple-500 to-cyan-400",style:{height:`${e}%`,transition:"height 0.05s ease-out"}})})]})}e.s(["default",()=>a])}]);

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.