CYP2D6 Pharmacogenetics in Nigerian Sickle Cell Disease: Phase 1 of Implementing Pharmacogenomics Testing for Effective Care and Treatment in Africa (iPROTECTA) program

preprint OA: closed
Full text JSON View at publisher

Abstract

Background Sickle Cell Disease (SCD) is highly prevalent in Nigeria, with severe pain crises being a primary cause of morbidity. Codeine and tramadol are frequently used opioids, but their effectiveness and safety are significantly influenced by CYP2D6 genetic variations. Clinical Pharmacogenetics Implementation Consortium (CPIC) guidelines exist for opioid therapy based on CYP2D6 phenotypes. There’s a critical need for pre-emptive pharmacogenomic (PGx) testing in African SCD patients to guide opioid selection. This study aimed to determine CYP2D6 allele, phenotype frequencies and evaluate the feasibility of implementing pre-emptive pharmacogenomic (PGx) testing to guide opioid therapy for SCD patients in Nigeria. Methods This prospective, multicenter implementation study recruited 503 consenting SCD patients (HbSS or HbSC) aged ≥15 years from five Nigerian sites. Blood samples were collected for DNA extraction. CYP2D6 single-nucleotide polymorphisms and copy number variations were determined using Taqman assays based open array, GenoPharm. Phenotypes were assigned based on Clinical Pharmacogenetics Implementation Consortium (CPIC) guidelines using the Genomics Information Management System (GIMS). and patient-specific medication safety cards were generated. Results We successfully genotyped 503 SCD patients with a mean age of 25.1 years, while 61.4% were female, and hydroxyurea use was less than 9.4%. Actionable CYP2D6 variants were found in 36.6% of participants. The predicted phenotype distribution was 8.8% Ultrarapid Metabolizers (UM), 54.1% Normal Metabolizers (NM), 26.0% Intermediate Metabolizers (IM), and 1.8% Poor Metabolizers (PM), with 9.3% undetermined. Patient medication safety cards were provided to guide prescriptions. Conclusions This study successfully established a genotyped cohort of 503 Nigerian SCD patients, demonstrating the feasibility of pre-emptive pharmacogenetic testing through a Pan-African collaborative model in a resource-limited setting. The identification of PM and UM provides direct clinical guidance, as CPIC guidelines recommend avoiding codeine and tramadol in these groups due to the high risk of diminished efficacy or serious toxicity, respectively. The high prevalence of actionable CYP2D6 variants indicates a substantial proportion of Nigerian SCD patients may experience altered opioid responses, underscoring the need for tailored prescribing to optimise pain control and minimise adverse drug reactions.
Full text 132,712 characters · extracted from preprint-html · click to expand
CYP2D6 Pharmacogenetics in Nigerian Sickle... | Gates Open Research "use strict";function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}!function(){var t=function(){var t,e,o=[],n=window,r=n;for(;r;){try{if(r.frames.__tcfapiLocator){t=r;break}}catch(t){}if(r===n.top)break;r=r.parent}t||(!function t(){var e=n.document,o=!!n.frames.__tcfapiLocator;if(!o)if(e.body){var r=e.createElement("iframe");r.style.cssText="display:none",r.name="__tcfapiLocator",e.body.appendChild(r)}else setTimeout(t,5);return!o}(),n.__tcfapi=function(){for(var t=arguments.length,n=new Array(t),r=0;r 3&&2===parseInt(n[1],10)&&"boolean"==typeof n[3]&&(e=n[3],"function"==typeof n[2]&&n[2]("set",!0)):"ping"===n[0]?"function"==typeof n[2]&&n[2]({gdprApplies:e,cmpLoaded:!1,cmpStatus:"stub"}):o.push(n)},n.addEventListener("message",(function(t){var e="string"==typeof t.data,o={};if(e)try{o=JSON.parse(t.data)}catch(t){}else o=t.data;var n="object"===_typeof(o)&&null!==o?o.__tcfapiCall:null;n&&window.__tcfapi(n.command,n.version,(function(o,r){var a={__tcfapiReturn:{returnValue:o,success:r,callId:n.callId}};t&&t.source&&t.source.postMessage&&t.source.postMessage(e?JSON.stringify(a):a,"*")}),n.parameter)}),!1))};"undefined"!=typeof module?module.exports=t:t()}(); dataLayer = dataLayer || []; // Standard GTM initialization - Google Consent Mode handles consent automatically (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl+ '>m_auth=hzk0Vc3qFsQYhCrIoHz68A>m_preview=env-1>m_cookies_win=x';f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-MWFK8L5J'); ;window.NREUM||(NREUM={});NREUM.init={distributed_tracing:{enabled:true},privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]}}; ;NREUM.loader_config={accountID:"438030",trustKey:"438030",agentID:"772317073",licenseKey:"97f8f67f26",applicationID:"772317073"} ;NREUM.info={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net",licenseKey:"97f8f67f26",applicationID:"772317073",sa:1} ;/*! For license information please see nr-loader-spa-1.236.0.min.js.LICENSE.txt */ (()=>{"use strict";var e,t,r={5763:(e,t,r)=>{r.d(t,{P_:()=>l,Mt:()=>g,C5:()=>s,DL:()=>v,OP:()=>T,lF:()=>D,Yu:()=>y,Dg:()=>h,CX:()=>c,GE:()=>b,sU:()=>_});var n=r(8632),i=r(9567);const o={beacon:n.ce.beacon,errorBeacon:n.ce.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.D)(t,o),(0,n.Qy)(e,a[e],"info")}var u=r(7056);const d=()=>{const e={blockSelector:"[data-nr-block]",maskInputOptions:{password:!0}};return{allow_bfcache:!0,privacy:{cookies_enabled:!0},ajax:{deny_list:void 0,enabled:!0,harvestTimeSeconds:10},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},session:{domain:void 0,expiresMs:u.oD,inactiveMs:u.Hb},ssl:void 0,obfuscate:void 0,jserrors:{enabled:!0,harvestTimeSeconds:10},metrics:{enabled:!0},page_action:{enabled:!0,harvestTimeSeconds:30},page_view_event:{enabled:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,long_task:!1},session_trace:{enabled:!0,harvestTimeSeconds:10},harvest:{tooManyRequestsDelay:60},session_replay:{enabled:!1,harvestTimeSeconds:60,sampleRate:.1,errorSampleRate:.1,maskTextSelector:"*",maskAllInputs:!0,get blockClass(){return"nr-block"},get ignoreClass(){return"nr-ignore"},get maskTextClass(){return"nr-mask"},get blockSelector(){return e.blockSelector},set blockSelector(t){e.blockSelector+=",".concat(t)},get maskInputOptions(){return e.maskInputOptions},set maskInputOptions(t){e.maskInputOptions={...t,password:!0}}},spa:{enabled:!0,harvestTimeSeconds:10}}},f={};function l(e){if(!e)throw new Error("All configuration objects require an agent identifier!");if(!f[e])throw new Error("Configuration for ".concat(e," was never set"));return f[e]}function h(e,t){if(!e)throw new Error("All configuration objects require an agent identifier!");f[e]=(0,i.D)(t,d()),(0,n.Qy)(e,f[e],"config")}function g(e,t){if(!e)throw new Error("All configuration objects require an agent identifier!");var r=l(e);if(r){for(var n=t.split("."),i=0;i {r.d(t,{D:()=>i});var n=r(50);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.Z)("Setting a Configurable requires an object as input");if(!t||"object"!=typeof t)return(0,n.Z)("Setting a Configurable requires a model to set its initial properties");const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.Z)("An error occurred while setting a property of a Configurable",e)}return r}catch(e){(0,n.Z)("An error occured while setting a Configurable",e)}}},6818:(e,t,r)=>{r.d(t,{Re:()=>i,gF:()=>o,q4:()=>n});const n="1.236.0",i="PROD",o="CDN"},385:(e,t,r)=>{r.d(t,{FN:()=>a,IF:()=>u,Nk:()=>f,Tt:()=>s,_A:()=>o,il:()=>n,pL:()=>c,v6:()=>i,w1:()=>d});const n="undefined"!=typeof window&&!!window.document,i="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),o=n?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),a=""+o?.location,s=/iPad|iPhone|iPod/.test(navigator.userAgent),c=s&&"undefined"==typeof SharedWorker,u=(()=>{const e=navigator.userAgent.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),d=Boolean(n&&window.document.documentMode),f=!!navigator.sendBeacon},1117:(e,t,r)=>{r.d(t,{w:()=>o});var n=r(50);const i={agentIdentifier:"",ee:void 0};class o{constructor(e){try{if("object"!=typeof e)return(0,n.Z)("shared context requires an object as input");this.sharedContext={},Object.assign(this.sharedContext,i),Object.entries(e).forEach((e=>{let[t,r]=e;Object.keys(i).includes(t)&&(this.sharedContext[t]=r)}))}catch(e){(0,n.Z)("An error occured while setting SharedContext",e)}}}},8e3:(e,t,r)=>{r.d(t,{L:()=>d,R:()=>c});var n=r(2177),i=r(1284),o=r(4322),a=r(3325);const s={};function c(e,t){const r={staged:!1,priority:a.p[t]||0};u(e),s[e].get(t)||s[e].set(t,r)}function u(e){e&&(s[e]||(s[e]=new Map))}function d(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"feature";if(u(e),!e||!s[e].get(t))return a(t);s[e].get(t).staged=!0;const r=[...s[e]];function a(t){const r=e?n.ee.get(e):n.ee,a=o.X.handlers;if(r.backlog&&a){var s=r.backlog[t],c=a[t];if(c){for(var u=0;s&&u {let[t,r]=e;return r.staged}))&&(r.sort(((e,t)=>e[1].priority-t[1].priority)),r.forEach((e=>{let[t]=e;a(t)})))}function f(e,t){var r=e[1];(0,i.D)(t[r],(function(t,r){var n=e[0];if(r[0]===n){var i=r[1],o=e[3],a=e[2];i.apply(o,a)}}))}},2177:(e,t,r)=>{r.d(t,{c:()=>f,ee:()=>u});var n=r(8632),i=r(2210),o=r(1284),a=r(5763),s="nr@context";let c=(0,n.fP)();var u;function d(){}function f(e){return(0,i.X)(e,s,l)}function l(){return new d}function h(){u.aborted=!0,u.backlog={}}c.ee?u=c.ee:(u=function e(t,r){var n={},c={},f={},g=!1;try{g=16===r.length&&(0,a.OP)(r).isolatedBacklog}catch(e){}var p={on:b,addEventListener:b,removeEventListener:y,emit:v,get:x,listeners:w,context:m,buffer:A,abort:h,aborted:!1,isBuffering:E,debugId:r,backlog:g?{}:t&&"object"==typeof t.backlog?t.backlog:{}};return p;function m(e){return e&&e instanceof d?e:e?(0,i.X)(e,s,l):l()}function v(e,r,n,i,o){if(!1!==o&&(o=!0),!u.aborted||i){t&&o&&t.emit(e,r,n);for(var a=m(n),s=w(e),d=s.length,f=0;fn,p:()=>i});var n=r(2177).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},4322:(e,t,r)=>{r.d(t,{X:()=>o});var n=r(5546);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.E,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.E);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3239:(e,t,r)=>{r.d(t,{bP:()=>s,iz:()=>c,m$:()=>a});var n=r(385);let i=!1,o=!1;try{const e={get passive(){return i=!0,!1},get signal(){return o=!0,!1}};n._A.addEventListener("test",null,e),n._A.removeEventListener("test",null,e)}catch(e){}function a(e,t){return i||o?{capture:!!e,passive:i,signal:t}:!!e}function s(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=arguments.length>3?arguments[3]:void 0;window.addEventListener(e,t,a(r,n))}function c(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=arguments.length>3?arguments[3]:void 0;document.addEventListener(e,t,a(r,n))}},4402:(e,t,r)=>{r.d(t,{Ht:()=>u,M:()=>c,Rl:()=>a,ky:()=>s});var n=r(385);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n._A?.crypto||n._A?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(31))),i.split("").map((e=>"x"===e?o(t,++r).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n._A?.crypto||n._A?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(31)));const a=[];for(var s=0;s {r.d(t,{Bq:()=>n,Hb:()=>o,oD:()=>i});const n="NRBA",i=144e5,o=18e5},7894:(e,t,r)=>{function n(){return Math.round(performance.now())}r.d(t,{z:()=>n})},7243:(e,t,r)=>{r.d(t,{e:()=>o});var n=r(385),i={};function o(e){if(e in i)return i[e];if(0===(e||"").indexOf("data:"))return{protocol:"data"};let t;var r=n._A?.location,o={};if(n.il)t=document.createElement("a"),t.href=e;else try{t=new URL(e,r.href)}catch(e){return o}o.port=t.port;var a=t.href.split("://");!o.port&&a[1]&&(o.port=a[1].split("/")[0].split("@").pop().split(":")[1]),o.port&&"0"!==o.port||(o.port="https"===a[0]?"443":"80"),o.hostname=t.hostname||r.hostname,o.pathname=t.pathname,o.protocol=a[0],"/"!==o.pathname.charAt(0)&&(o.pathname="/"+o.pathname);var s=!t.protocol||":"===t.protocol||t.protocol===r.protocol,c=t.hostname===r.hostname&&t.port===r.port;return o.sameOrigin=s&&(!t.hostname||c),"/"===o.pathname&&(i[e]=o),o}},50:(e,t,r)=>{function n(e,t){"function"==typeof console.warn&&(console.warn("New Relic: ".concat(e)),t&&console.warn(t))}r.d(t,{Z:()=>n})},2587:(e,t,r)=>{r.d(t,{N:()=>c,T:()=>u});var n=r(2177),i=r(5546),o=r(8e3),a=r(3325);const s={stn:[a.D.sessionTrace],err:[a.D.jserrors,a.D.metrics],ins:[a.D.pageAction],spa:[a.D.spa],sr:[a.D.sessionReplay,a.D.sessionTrace]};function c(e,t){const r=n.ee.get(t);e&&"object"==typeof e&&(Object.entries(e).forEach((e=>{let[t,n]=e;void 0===u[t]&&(s[t]?s[t].forEach((e=>{n?(0,i.p)("feat-"+t,[],void 0,e,r):(0,i.p)("block-"+t,[],void 0,e,r),(0,i.p)("rumresp-"+t,[Boolean(n)],void 0,e,r)})):n&&(0,i.p)("feat-"+t,[],void 0,void 0,r),u[t]=Boolean(n))})),Object.keys(s).forEach((e=>{void 0===u[e]&&(s[e]?.forEach((t=>(0,i.p)("rumresp-"+e,[!1],void 0,t,r))),u[e]=!1)})),(0,o.L)(t,a.D.pageViewEvent))}const u={}},2210:(e,t,r)=>{r.d(t,{X:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},1284:(e,t,r)=>{r.d(t,{D:()=>n});const n=(e,t)=>Object.entries(e||{}).map((e=>{let[r,n]=e;return t(r,n)}))},4351:(e,t,r)=>{r.d(t,{P:()=>o});var n=r(2177);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}}}},3960:(e,t,r)=>{r.d(t,{K:()=>a,b:()=>o});var n=r(3239);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.bP)("load",e,t)}function a(e){if(i())return e();(0,n.iz)("DOMContentLoaded",e)}},8632:(e,t,r)=>{r.d(t,{EZ:()=>u,Qy:()=>c,ce:()=>o,fP:()=>a,gG:()=>d,mF:()=>s});var n=r(7894),i=r(385);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return i._A.NREUM||(i._A.NREUM={}),void 0===i._A.newrelic&&(i._A.newrelic=i._A.NREUM),i._A.NREUM}function s(){let e=a();return e.o||(e.o={ST:i._A.setTimeout,SI:i._A.setImmediate,CT:i._A.clearTimeout,XHR:i._A.XMLHttpRequest,REQ:i._A.Request,EV:i._A.Event,PR:i._A.Promise,MO:i._A.MutationObserver,FETCH:i._A.fetch}),e}function c(e,t,r){let i=a();const o=i.initializedAgents||{},s=o[e]||{};return Object.keys(s).length||(s.initializedAt={ms:(0,n.z)(),date:new Date}),i.initializedAgents={...o,[e]:{...s,[r]:t}},i}function u(e,t){a()[e]=t}function d(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},7956:(e,t,r)=>{r.d(t,{N:()=>i});var n=r(3239);function i(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0;return void(0,n.iz)("visibilitychange",(function(){if(t)return void("hidden"==document.visibilityState&&e());e(document.visibilityState)}),r,i)}},1214:(e,t,r)=>{r.d(t,{em:()=>v,u5:()=>N,QU:()=>S,_L:()=>I,Gm:()=>L,Lg:()=>M,gy:()=>U,BV:()=>Q,Kf:()=>ee});var n=r(2177);const i="nr@original";var o=Object.prototype.hasOwnProperty,a=!1;function s(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");var a,s,c,u="-"===n.charAt(0);for(c=0;c 2?n-2:0),o=2;o {r(A[T],e,w),r(E[T],e,w)})),r(l._A,"fetch",y),t.on(y+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(y+"done",[null,r],n)}else t.emit(y+"done",[e],n)})),t}const O={},j=["pushState","replaceState"];function S(e){const t=function(e){return(e||n.ee).get("history")}(e);return!l.il||O[t.debugId]++||(O[t.debugId]=1,s(t).inPlace(window.history,j,"-")),t}var P=r(3239);const C={},R=["appendChild","insertBefore","replaceChild"];function I(e){const t=function(e){return(e||n.ee).get("jsonp")}(e);if(!l.il||C[t.debugId])return t;C[t.debugId]=!0;var r=s(t),i=/[?&](?:callback|cb)=([^&#]+)/,o=/(.*)\.([^.]+)/,a=/^(\w+)(\.|$)(.*)$/;function c(e,t){var r=e.match(a),n=r[1],i=r[3];return i?c(i,t[n]):t[n]}return r.inPlace(Node.prototype,R,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var n=(a=e.src,s=a.match(i),s?s[1]:null);var a,s;if(!n)return;var u=function(e){var t=e.match(o);if(t&&t.length>=3)return{key:t[2],parent:c(t[1],window)};return{key:e,parent:window}}(n);if("function"!=typeof u.parent[u.key])return;var d={};function f(){t.emit("jsonp-end",[],d),e.removeEventListener("load",f,(0,P.m$)(!1)),e.removeEventListener("error",l,(0,P.m$)(!1))}function l(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",f,(0,P.m$)(!1)),e.removeEventListener("error",l,(0,P.m$)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",f,(0,P.m$)(!1)),e.addEventListener("error",l,(0,P.m$)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}var k=r(5763);const H={};function L(e){const t=function(e){return(e||n.ee).get("mutation")}(e);if(!l.il||H[t.debugId])return t;H[t.debugId]=!0;var r=s(t),i=k.Yu.MO;return i&&(window.MutationObserver=function(e){return this instanceof i?new i(r(e,"fn-")):i.apply(this,arguments)},MutationObserver.prototype=i.prototype),t}const z={};function M(e){const t=function(e){return(e||n.ee).get("promise")}(e);if(z[t.debugId])return t;z[t.debugId]=!0;var r=n.c,o=s(t),a=k.Yu.PR;return a&&function(){function e(r){var n=t.context(),i=o(r,"executor-",n,null,!1);const s=Reflect.construct(a,[i],e);return t.context(s).getCtx=function(){return n},s}l._A.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return a.toString()},Object.setPrototypeOf(e,a),["all","race"].forEach((function(r){const n=a[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=a[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=a.prototype;const n=a.prototype.then;a.prototype.then=function(){var e=this,i=r(e);i.promise=e;for(var a=arguments.length,s=new Array(a),c=0;c e())),t};function m(e,t){i.inPlace(t,["onreadystatechange"],"fn-",E)}function b(){var e=this,t=r.context(e);e.readyState>3&&!t.resolved&&(t.resolved=!0,r.emit("xhr-resolved",[],e)),i.inPlace(e,f,"fn-",E)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,p),p.prototype=o.prototype,i.inPlace(p.prototype,J,"-xhr-",E),r.on("send-xhr-start",(function(e,t){m(e,t),function(e){h.push(e),a&&(y?y.then(A):u?u(A):(w=-w,x.data=w))}(t)})),r.on("open-xhr-start",m),a){var y=c&&c.resolve();if(!u&&!c){var w=1,x=document.createTextNode(w);new a(A).observe(x,{characterData:!0})}}else t.on("fn-end",(function(e){e[0]&&e[0].type===d||A()}));function A(){for(var e=0;e {r.d(t,{t:()=>n});const n=r(3325).D.ajax},6660:(e,t,r)=>{r.d(t,{A:()=>i,t:()=>n});const n=r(3325).D.jserrors,i="nr@seenError"},3081:(e,t,r)=>{r.d(t,{gF:()=>o,mY:()=>i,t9:()=>n,vz:()=>s,xS:()=>a});const n=r(3325).D.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},4649:(e,t,r)=>{r.d(t,{t:()=>n});const n=r(3325).D.pageAction},7633:(e,t,r)=>{r.d(t,{Dz:()=>i,OJ:()=>a,qw:()=>o,t9:()=>n});const n=r(3325).D.pageViewEvent,i="firstbyte",o="domcontent",a="windowload"},9251:(e,t,r)=>{r.d(t,{t:()=>n});const n=r(3325).D.pageViewTiming},3614:(e,t,r)=>{r.d(t,{BST_RESOURCE:()=>i,END:()=>s,FEATURE_NAME:()=>n,FN_END:()=>u,FN_START:()=>c,PUSH_STATE:()=>d,RESOURCE:()=>o,START:()=>a});const n=r(3325).D.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState"},7836:(e,t,r)=>{r.d(t,{BODY:()=>A,CB_END:()=>E,CB_START:()=>u,END:()=>x,FEATURE_NAME:()=>i,FETCH:()=>_,FETCH_BODY:()=>v,FETCH_DONE:()=>m,FETCH_START:()=>p,FN_END:()=>c,FN_START:()=>s,INTERACTION:()=>l,INTERACTION_API:()=>d,INTERACTION_EVENTS:()=>o,JSONP_END:()=>b,JSONP_NODE:()=>g,JS_TIME:()=>T,MAX_TIMER_BUDGET:()=>a,REMAINING:()=>f,SPA_NODE:()=>h,START:()=>w,originalSetTimeout:()=>y});var n=r(5763);const i=r(3325).D.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",f="remaining",l="interaction",h="spaNode",g="jsonpNode",p="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=n.Yu.ST,w="-start",x="-end",A="-body",E="cb"+x,T="jsTime",_="fetch"},5938:(e,t,r)=>{r.d(t,{W:()=>o});var n=r(5763),i=r(2177);class o{constructor(e,t,r){this.agentIdentifier=e,this.aggregator=t,this.ee=i.ee.get(e,(0,n.OP)(this.agentIdentifier).isolatedBacklog),this.featureName=r,this.blocked=!1}}},9144:(e,t,r)=>{r.d(t,{j:()=>m});var n=r(3325),i=r(5763),o=r(5546),a=r(2177),s=r(7894),c=r(8e3),u=r(3960),d=r(385),f=r(50),l=r(3081),h=r(8632);function g(){const e=(0,h.gG)();["setErrorHandler","finished","addToTrace","inlineHit","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId"].forEach((t=>{e[t]=function(){for(var r=arguments.length,n=new Array(r),i=0;i 1?r-1:0),i=1;i {e.exposed&&e.api[t]&&o.push(e.api[t](...n))})),o.length>1?o:o[0]}(t,...n)}}))}var p=r(2587);function m(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},m=arguments.length>2?arguments[2]:void 0,v=arguments.length>3?arguments[3]:void 0,{init:b,info:y,loader_config:w,runtime:x={loaderType:m},exposed:A=!0}=t;const E=(0,h.gG)();y||(b=E.init,y=E.info,w=E.loader_config),(0,i.Dg)(e,b||{}),(0,i.GE)(e,w||{}),(0,i.sU)(e,x),y.jsAttributes??={},d.v6&&(y.jsAttributes.isWorker=!0),(0,i.CX)(e,y),g();const T=function(e,t){t||(0,c.R)(e,"api");const h={};var g=a.ee.get(e),p=g.get("tracer"),m="api-",v=m+"ixn-";function b(t,r,n,o){const a=(0,i.C5)(e);return null===r?delete a.jsAttributes[t]:(0,i.CX)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),x(m,n,!0,o||null===r?"session":void 0)(t,r)}function y(){}["setErrorHandler","finished","addToTrace","inlineHit","addRelease"].forEach((e=>h[e]=x(m,e,!0,"api"))),h.addPageAction=x(m,"addPageAction",!0,n.D.pageAction),h.setCurrentRouteName=x(m,"routeName",!0,n.D.spa),h.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,i.OP)(e).customTransaction=(r||"http://custom.transaction")+t,x(m,"setPageViewName",!0)()},h.setCustomAttribute=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if("string"==typeof e){if(["string","number"].includes(typeof t)||null===t)return b(e,t,"setCustomAttribute",r);(0,f.Z)("Failed to execute setCustomAttribute.\nNon-null value must be a string or number type, but a type of was provided."))}else(0,f.Z)("Failed to execute setCustomAttribute.\nName must be a string type, but a type of was provided."))},h.setUserId=function(e){if("string"==typeof e||null===e)return b("enduser.id",e,"setUserId",!0);(0,f.Z)("Failed to execute setUserId.\nNon-null value must be a string type, but a type of was provided."))},h.interaction=function(){return(new y).get()};var w=y.prototype={createTracer:function(e,t){var r={},i=this,a="function"==typeof t;return(0,o.p)(v+"tracer",[(0,s.z)(),e,r],i,n.D.spa,g),function(){if(p.emit((a?"":"no-")+"fn-start",[(0,s.z)(),i,a],r),a)try{return t.apply(this,arguments)}catch(e){throw p.emit("fn-err",[arguments,this,"string"==typeof e?new Error(e):e],r),e}finally{p.emit("fn-end",[(0,s.z)()],r)}}}};function x(e,t,r,i){return function(){return(0,o.p)(l.xS,["API/"+t+"/called"],void 0,n.D.metrics,g),i&&(0,o.p)(e+t,[(0,s.z)(),...arguments],r?null:this,i,g),r?void 0:this}}function A(){r.e(439).then(r.bind(r,7438)).then((t=>{let{setAPI:r}=t;r(e),(0,c.L)(e,"api")})).catch((()=>(0,f.Z)("Downloading runtime APIs failed...")))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{w[e]=x(v,e,void 0,n.D.spa)})),h.noticeError=function(e,t){"string"==typeof e&&(e=new Error(e)),(0,o.p)(l.xS,["API/noticeError/called"],void 0,n.D.metrics,g),(0,o.p)("err",[e,(0,s.z)(),!1,t],void 0,n.D.jserrors,g)},d.il?(0,u.b)((()=>A()),!0):A(),h}(e,v);return(0,h.Qy)(e,T,"api"),(0,h.Qy)(e,A,"exposed"),(0,h.EZ)("activatedFeatures",p.T),T}},3325:(e,t,r)=>{r.d(t,{D:()=>n,p:()=>i});const n={ajax:"ajax",jserrors:"jserrors",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.ajax]:5,[n.sessionTrace]:6,[n.pageAction]:7,[n.spa]:8,[n.sessionReplay]:9}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>(({78:"page_action-aggregate",147:"metrics-aggregate",242:"session-manager",317:"jserrors-aggregate",348:"page_view_timing-aggregate",412:"lazy-feature-loader",439:"async-api",538:"recorder",590:"session_replay-aggregate",675:"compressor",733:"session_trace-aggregate",786:"page_view_event-aggregate",873:"spa-aggregate",898:"ajax-aggregate"}[e]||e)+"."+{78:"ac76d497",147:"3dc53903",148:"1a20d5fe",242:"2a64278a",317:"49e41428",348:"bd6de33a",412:"2f55ce66",439:"30bd804e",538:"1b18459f",590:"cf0efb30",675:"ae9f91a8",733:"83105561",786:"06482edd",860:"03a8b7a5",873:"e6b09d52",898:"998ef92b"}[e]+"-1.236.0.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d {s.onerror=s.onload=null,clearTimeout(h);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},h=setTimeout(l.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=l.bind(null,s.onerror),s.onload=l.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.j=364,i.p="https://js-agent.newrelic.com/",(()=>{var e={364:0,953:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u {i.r(o);var e=i(3325),t=i(5763);const r=Object.values(e.D);function n(e){const n={};return r.forEach((r=>{n[r]=function(e,r){return!1!==(0,t.Mt)(r,"".concat(e,".enabled"))}(r,e)})),n}var a=i(9144);var s=i(5546),c=i(385),u=i(8e3),d=i(5938),f=i(3960),l=i(50);class h extends d.W{constructor(e,t,r){let n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];super(e,t,r),this.auto=n,this.abortHandler,this.featAggregate,this.onAggregateImported,n&&(0,u.R)(e,r)}importAggregator(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(this.featAggregate||!this.auto)return;const r=c.il&&!0===(0,t.Mt)(this.agentIdentifier,"privacy.cookies_enabled");let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let t;try{if(r){const{setupAgentSession:e}=await Promise.all([i.e(860),i.e(242)]).then(i.bind(i,3228));t=e(this.agentIdentifier)}}catch(e){(0,l.Z)("A problem occurred when starting up session manager. This page will not start or extend any session.",e)}try{if(!this.shouldImportAgg(this.featureName,t))return void(0,u.L)(this.agentIdentifier,this.featureName);const{lazyFeatureLoader:r}=await i.e(412).then(i.bind(i,8582)),{Aggregate:o}=await r(this.featureName,"aggregate");this.featAggregate=new o(this.agentIdentifier,this.aggregator,e),n(!0)}catch(e){(0,l.Z)("Downloading and initializing ".concat(this.featureName," failed..."),e),this.abortHandler?.(),n(!1)}};c.il?(0,f.b)((()=>o()),!0):o()}shouldImportAgg(r,n){return r!==e.D.sessionReplay||!1!==(0,t.Mt)(this.agentIdentifier,"session_trace.enabled")&&(!!n?.isNew||!!n?.state.sessionReplay)}}var g=i(7633),p=i(7894);class m extends h{static featureName=g.t9;constructor(r,n){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(super(r,n,g.t9,i),("undefined"==typeof PerformanceNavigationTiming||c.Tt)&&"undefined"!=typeof PerformanceTiming){const n=(0,t.OP)(r);n[g.Dz]=Math.max(Date.now()-n.offset,0),(0,f.K)((()=>n[g.qw]=Math.max((0,p.z)()-n[g.Dz],0))),(0,f.b)((()=>{const t=(0,p.z)();n[g.OJ]=Math.max(t-n[g.Dz],0),(0,s.p)("timing",["load",t],void 0,e.D.pageViewTiming,this.ee)}))}this.importAggregator()}}var v=i(1117),b=i(1284);class y extends v.w{constructor(e){super(e),this.aggregatedData={}}store(e,t,r,n,i){var o=this.getBucket(e,t,r,i);return o.metrics=function(e,t){t||(t={count:0});return t.count+=1,(0,b.D)(e,(function(e,r){t[e]=w(r,t[e])})),t}(n,o.metrics),o}merge(e,t,r,n,i){var o=this.getBucket(e,t,n,i);if(o.metrics){var a=o.metrics;a.count+=r.count,(0,b.D)(r,(function(e,t){if("count"!==e){var n=a[e],i=r[e];i&&!i.c?a[e]=w(i.t,n):a[e]=function(e,t){if(!t)return e;t.c||(t=x(t.t));return t.min=Math.min(e.min,t.min),t.max=Math.max(e.max,t.max),t.t+=e.t,t.sos+=e.sos,t.c+=e.c,t}(i,a[e])}}))}else o.metrics=r}storeMetric(e,t,r,n){var i=this.getBucket(e,t,r);return i.stats=w(n,i.stats),i}getBucket(e,t,r,n){this.aggregatedData[e]||(this.aggregatedData[e]={});var i=this.aggregatedData[e][t];return i||(i=this.aggregatedData[e][t]={params:r||{}},n&&(i.custom=n)),i}get(e,t){return t?this.aggregatedData[e]&&this.aggregatedData[e][t]:this.aggregatedData[e]}take(e){for(var t={},r="",n=!1,i=0;i t.max&&(t.max=e),e 2&&void 0!==arguments[2])||arguments[2];super(e,r,j.t,n),c.il&&((0,t.OP)(e).initHidden=Boolean("hidden"===document.visibilityState),(0,N.N)((()=>(0,s.p)("docHidden",[(0,p.z)()],void 0,j.t,this.ee)),!0),(0,O.bP)("pagehide",(()=>(0,s.p)("winPagehide",[(0,p.z)()],void 0,j.t,this.ee))),this.importAggregator())}}var P=i(3081);class C extends h{static featureName=P.t9;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,P.t9,r),this.importAggregator()}}var R,I=i(2210),k=i(1214),H=i(2177),L={};try{R=localStorage.getItem("__nr_flags").split(","),console&&"function"==typeof console.log&&(L.console=!0,-1!==R.indexOf("dev")&&(L.dev=!0),-1!==R.indexOf("nr_dev")&&(L.nrDev=!0))}catch(e){}function z(e){try{L.console&&z(e)}catch(e){}}L.nrDev&&H.ee.on("internal-error",(function(e){z(e.stack)})),L.dev&&H.ee.on("fn-err",(function(e,t,r){z(r.stack)})),L.dev&&(z("NR AGENT IN DEVELOPMENT MODE"),z("flags: "+(0,b.D)(L,(function(e,t){return e})).join(", ")));var M=i(6660);class B extends h{static featureName=M.t;constructor(r,n){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(r,n,M.t,i),this.skipNext=0;try{this.removeOnAbort=new AbortController}catch(e){}const o=this;o.ee.on("fn-start",(function(e,t,r){o.abortHandler&&(o.skipNext+=1)})),o.ee.on("fn-err",(function(t,r,n){o.abortHandler&&!n[M.A]&&((0,I.X)(n,M.A,(function(){return!0})),this.thrown=!0,(0,s.p)("err",[n,(0,p.z)()],void 0,e.D.jserrors,o.ee))})),o.ee.on("fn-end",(function(){o.abortHandler&&!this.thrown&&o.skipNext>0&&(o.skipNext-=1)})),o.ee.on("internal-error",(function(t){(0,s.p)("ierr",[t,(0,p.z)(),!0],void 0,e.D.jserrors,o.ee)})),this.origOnerror=c._A.onerror,c._A.onerror=this.onerrorHandler.bind(this),c._A.addEventListener("unhandledrejection",(t=>{const r=function(e){let t="Unhandled Promise Rejection: ";if(e instanceof Error)try{return e.message=t+e.message,e}catch(t){return e}if(void 0===e)return new Error(t);try{return new Error(t+(0,D.P)(e))}catch(e){return new Error(t)}}(t.reason);(0,s.p)("err",[r,(0,p.z)(),!1,{unhandledPromiseRejection:1}],void 0,e.D.jserrors,this.ee)}),(0,O.m$)(!1,this.removeOnAbort?.signal)),(0,k.gy)(this.ee),(0,k.BV)(this.ee),(0,k.em)(this.ee),(0,t.OP)(r).xhrWrappable&&(0,k.Kf)(this.ee),this.abortHandler=this.#e,this.importAggregator()}#e(){this.removeOnAbort?.abort(),this.abortHandler=void 0}onerrorHandler(t,r,n,i,o){"function"==typeof this.origOnerror&&this.origOnerror(...arguments);try{this.skipNext?this.skipNext-=1:(0,s.p)("err",[o||new F(t,r,n),(0,p.z)()],void 0,e.D.jserrors,this.ee)}catch(t){try{(0,s.p)("ierr",[t,(0,p.z)(),!0],void 0,e.D.jserrors,this.ee)}catch(e){}}return!1}}function F(e,t,r){this.message=e||"Uncaught error with no additional information",this.sourceURL=t,this.line=r}let U=1;const q="nr@id";function G(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===c._A?0:(0,I.X)(e,q,(function(){return U++}))}function V(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,D.P)(e).length}catch(e){return}}}var X=i(7243);class W{constructor(e){this.agentIdentifier=e,this.generateTracePayload=this.generateTracePayload.bind(this),this.shouldGenerateTrace=this.shouldGenerateTrace.bind(this)}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var r=(0,t.DL)(this.agentIdentifier);if(!r)return null;var n=(r.accountID||"").toString()||null,i=(r.agentID||"").toString()||null,o=(r.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,_.M)(),s=(0,_.Ht)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof c._A?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,D.P)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var r=!1,n={};if((0,t.Mt)(this.agentIdentifier,"distributed_tracing")&&(n=(0,t.P_)(this.agentIdentifier).distributed_tracing),e.sameOrigin)r=!0;else if(n.allowed_origins instanceof Array)for(var i=0;i 2&&void 0!==arguments[2])||arguments[2];super(r,n,Z.t,i),(0,t.OP)(r).xhrWrappable&&(this.dt=new W(r),this.handler=(e,t,r,n)=>(0,s.p)(e,t,r,n,this.ee),(0,k.u5)(this.ee),(0,k.Kf)(this.ee),function(r,n,i,o){function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=E,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){_(t,e)}),(0,O.m$)(!1)),c.IF||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,O.m$)(!1))}function s(e){this.params={method:e[0]},T(this,e[1]),this.metrics={}}function u(e,n){var i=(0,t.DL)(r);i.xpid&&this.sameOrigin&&n.setRequestHeader("X-NewRelic-ID",i.xpid);var a=o.generateTracePayload(this.parsedOrigin);if(a){var s=!1;a.newrelicHeader&&(n.setRequestHeader("newrelic",a.newrelicHeader),s=!0),a.traceContextParentHeader&&(n.setRequestHeader("traceparent",a.traceContextParentHeader),a.traceContextStateHeader&&n.setRequestHeader("tracestate",a.traceContextStateHeader),s=!0),s&&(this.dt=a)}}function d(e,t){var r=this.metrics,i=e[0],o=this;if(r&&i){var a=V(i);a&&(r.txSize=a)}this.startTime=(0,p.z)(),this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof o.end)&&o.end(t)}catch(e){try{n.emit("internal-error",[e])}catch(e){}}};for(var s=0;s 1?e[1]=i:e.push(i)}else e[0]&&e[0].headers&&s(e[0].headers,n)&&(this.dt=n);function s(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function x(e,t){this.params={},this.metrics={},this.startTime=(0,p.z)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof Y?r=i.url:c._A?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),T(this,r);var o=(""+(i&&i instanceof Y&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.txSize=V(n.body)||0}function A(t,r){var n;this.endTime=(0,p.z)(),this.params||(this.params={}),this.params.status=r?r.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);var o={txSize:this.txSize,rxSize:n,duration:(0,p.z)()-this.startTime};i("xhr",[this.params,o,this.startTime,this.endTime,"fetch"],this,e.D.ajax)}function E(t){var r=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(var o=0;o 2&&void 0!==arguments[2])||arguments[2];super(e,t,we.t,r),this.importAggregator()}}new class{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,_.ky)(16);c._A?(this.agentIdentifier=t,this.sharedAggregator=new y({agentIdentifier:this.agentIdentifier}),this.features={},this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(m),Object.assign(this,(0,a.j)(this.agentIdentifier,e,e.loaderType||"agent")),this.start()):(0,l.Z)("Failed to initial the agent. Could not determine the runtime environment.")}get config(){return{info:(0,t.C5)(this.agentIdentifier),init:(0,t.P_)(this.agentIdentifier),loader_config:(0,t.DL)(this.agentIdentifier),runtime:(0,t.OP)(this.agentIdentifier)}}start(){const t="features";try{const r=n(this.agentIdentifier),i=[...this.desiredFeatures];i.sort(((t,r)=>e.p[t.featureName]-e.p[r.featureName])),i.forEach((t=>{if(r[t.featureName]||t.featureName===e.D.pageViewEvent){const n=function(t){switch(t){case e.D.ajax:return[e.D.jserrors];case e.D.sessionTrace:return[e.D.ajax,e.D.pageViewEvent];case e.D.sessionReplay:return[e.D.sessionTrace];case e.D.pageViewTiming:return[e.D.pageViewEvent];default:return[]}}(t.featureName);n.every((e=>r[e]))||(0,l.Z)("".concat(t.featureName," is enabled but one or more dependent features has been disabled (").concat((0,D.P)(n),"). This may cause unintended consequences or missing data...")),this.features[t.featureName]=new t(this.agentIdentifier,this.sharedAggregator)}})),(0,T.Qy)(this.agentIdentifier,this.features,t)}catch(e){(0,l.Z)("Failed to initialize all enabled instrument classes (agent aborted) -",e);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,T.fP)();return delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.[t],delete this.sharedAggregator,r.ee?.abort(),delete r.ee?.get(this.agentIdentifier),!1}}}({features:[J,m,S,class extends h{static featureName=oe;constructor(t,r){if(super(t,r,oe,!(arguments.length>2&&void 0!==arguments[2])||arguments[2]),!c.il)return;const n=this.ee;let i;(0,k.QU)(n),this.eventsEE=(0,k.em)(n),this.eventsEE.on(se,(function(e,t){this.bstStart=(0,p.z)()})),this.eventsEE.on(ae,(function(t,r){(0,s.p)("bst",[t[0],r,this.bstStart,(0,p.z)()],void 0,e.D.sessionTrace,n)})),n.on(ce+ne,(function(e){this.time=(0,p.z)(),this.startPath=location.pathname+location.hash})),n.on(ce+ie,(function(t){(0,s.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,e.D.sessionTrace,n)}));try{i=new PerformanceObserver((t=>{const r=t.getEntries();(0,s.p)(te,[r],void 0,e.D.sessionTrace,n)})),i.observe({type:re,buffered:!0})}catch(e){}this.importAggregator({resourceObserver:i})}},C,xe,B,class extends h{static featureName=de;constructor(e,r){if(super(e,r,de,!(arguments.length>2&&void 0!==arguments[2])||arguments[2]),!c.il)return;if(!(0,t.OP)(e).xhrWrappable)return;try{this.removeOnAbort=new AbortController}catch(e){}let n,i=0;const o=this.ee.get("tracer"),a=(0,k._L)(this.ee),s=(0,k.Lg)(this.ee),u=(0,k.BV)(this.ee),d=(0,k.Kf)(this.ee),f=this.ee.get("events"),l=(0,k.u5)(this.ee),h=(0,k.QU)(this.ee),g=(0,k.Gm)(this.ee);function m(e,t){h.emit("newURL",[""+window.location,t])}function v(){i++,n=window.location.hash,this[ve]=(0,p.z)()}function b(){i--,window.location.hash!==n&&m(0,!0);var e=(0,p.z)();this[pe]=~~this[pe]+e-this[ve],this[ye]=e}function y(e,t){e.on(t,(function(){this[t]=(0,p.z)()}))}this.ee.on(ve,v),s.on(be,v),a.on(be,v),this.ee.on(ye,b),s.on(ge,b),a.on(ge,b),this.ee.buffer([ve,ye,"xhr-resolved"],this.featureName),f.buffer([ve],this.featureName),u.buffer(["setTimeout"+le,"clearTimeout"+fe,ve],this.featureName),d.buffer([ve,"new-xhr","send-xhr"+fe],this.featureName),l.buffer([me+fe,me+"-done",me+he+fe,me+he+le],this.featureName),h.buffer(["newURL"],this.featureName),g.buffer([ve],this.featureName),s.buffer(["propagate",be,ge,"executor-err","resolve"+fe],this.featureName),o.buffer([ve,"no-"+ve],this.featureName),a.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),y(l,me+fe),y(l,me+"-done"),y(a,"new-jsonp"),y(a,"jsonp-end"),y(a,"cb-start"),h.on("pushState-end",m),h.on("replaceState-end",m),window.addEventListener("hashchange",m,(0,O.m$)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",m,(0,O.m$)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){m(0,i>1)}),(0,O.m$)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#e,this.importAggregator()}#e(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}],loaderType:"spa"})})(),window.NRBA=o})(); window.jQuery || document.write(' ') CKEDITOR_BASEPATH='https://gatesopenresearch.org/js/vendor/ckeditor/' window.reactTheme = 'gates'; window.MathJax = { CommonHTML: { linebreaks: { automatic: true } }, 'HTML-CSS': { linebreaks: { automatic: true } }, SVG: { linebreaks: { automatic: true } }, AuthorInit: function() { MathJax.Hub.Register.MessageHook('End Process', function () { let timeout = false; // holder for timeout id const delay = 250; // delay after event is "complete" to run callback const reflowMath = function() { const dispFormulas = document.querySelectorAll('.disp-formula.panel'); if (!dispFormulas) { return; } for (const dispFormula of dispFormulas) { const child = dispFormula.querySelector('.MathJax_Preview').nextSibling.firstChild; const isMultiline = MathJax.Hub.getAllJax(dispFormula)[0].root.isMultiline; if (dispFormula.offsetWidth < child.offsetWidth || isMultiline) { MathJax.Hub.Queue(['Rerender', MathJax.Hub, dispFormula]); } } }; window.addEventListener('resize', function() { clearTimeout(timeout); // clear the timeout timeout = setTimeout(reflowMath, delay); // start timing for event "completion" }); }); }, }; if (window.location.hash == '#_=_'){ window.location = window.location.href.split('#')[0] } !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function() {n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)} ;if(!f._fbq)f._fbq=n; n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, document,'script','https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '1641728616063202'); fbq('track', "PixelInitialized", {}); Skip to content Gates Open Research file_upload Submit via VeriXiv search clear search menu close clear Search Browse Gateways & Collections How to Publish Submit via VeriXiv My Submissions Article Guidelines Article Guidelines (New Versions) Open Data, Software and Code Guidelines Open Data and Accessible Source Materials Guidelines (HSS) Prepublication Checks Production Process Posters and Slides Guidelines Document Guidelines Publication Charges Finding Article Reviewers About How it Works For Reviewers Our Advisors Policies Glossary FAQs For Developers Contact Blog My Account Submissions Content and Tracking Alerts My Details Sign In Submit via VeriXiv { "@context": "https://schema.org", "@type": "ScholarlyArticle", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://gatesopenresearch.org/articles/9-101" }, "headline": "CYP2D6 Pharmacogenetics in Nigerian Sickle Cell Disease: Phase 1 of Implementing Pharmacogenomics Testing...", "datePublished": "2025-11-10T11:42:04", "dateModified": "2025-11-10T11:42:04", "author": [ { "@type": "Person", "name": "Babatunde Adeagbo" }, { "@type": "Person", "name": "Olusola Olarewaju" }, { "@type": "Person", "name": "Ochuko Orherhe" }, { "@type": "Person", "name": "Zedias Chikwambi" }, { "@type": "Person", "name": "Adrian Mazhindu" }, { "@type": "Person", "name": "Rahman Bolarinwa" }, { "@type": "Person", "name": "Oluseye Bolaji" }, { "@type": "Person", "name": "Collen Masimirembwa" }, { "@type": "Person", "name": "Consortium for Genomics and Therapeutics in Africa" } ], "publisher": { "@type": "Organization", "name": "Gates Open Research", "logo": { "@type": "ImageObject", "url": "https://gatesopenresearch.org/img/AMP/Gates_image.png", "height": 600, "width": 47 } }, "image": { "@type": "ImageObject", "url": "https://gatesopenresearch.org/img/AMP/Gates_image.png", "height": 1200, "width": 94 }, "description": " Background Sickle Cell Disease (SCD) is highly prevalent in Nigeria, with severe pain crises being a primary cause of morbidity. Codeine and tramadol are frequently used opioids, but their effectiveness and safety are significantly influenced by CYP2D6 genetic variations. Clinical Pharmacogenetics Implementation Consortium (CPIC) guidelines exist for opioid therapy based on CYP2D6 phenotypes. There’s a critical need for pre-emptive pharmacogenomic (PGx) testing in African SCD patients to guide opioid selection. This study aimed to determine CYP2D6 allele, phenotype frequencies and evaluate the feasibility of implementing pre-emptive pharmacogenomic (PGx) testing to guide opioid therapy for SCD patients in Nigeria. Methods This prospective, multicenter implementation study recruited 503 consenting SCD patients (HbSS or HbSC) aged ≥15 years from five Nigerian sites. Blood samples were collected for DNA extraction. CYP2D6 single-nucleotide polymorphisms and copy number variations were determined using Taqman assays based open array, GenoPharm. Phenotypes were assigned based on Clinical Pharmacogenetics Implementation Consortium (CPIC) guidelines using the Genomics Information Management System (GIMS). and patient-specific medication safety cards were generated. Results We successfully genotyped 503 SCD patients with a mean age of 25.1 years, while 61.4% were female, and hydroxyurea use was less than 9.4%. Actionable CYP2D6 variants were found in 36.6% of participants. The predicted phenotype distribution was 8.8% Ultrarapid Metabolizers (UM), 54.1% Normal Metabolizers (NM), 26.0% Intermediate Metabolizers (IM), and 1.8% Poor Metabolizers (PM), with 9.3% undetermined. Patient medication safety cards were provided to guide prescriptions. Conclusions This study successfully established a genotyped cohort of 503 Nigerian SCD patients, demonstrating the feasibility of pre-emptive pharmacogenetic testing through a Pan-African collaborative model in a resource-limited setting. The identification of PM and UM provides direct clinical guidance, as CPIC guidelines recommend avoiding codeine and tramadol in these groups due to the high risk of diminished efficacy or serious toxicity, respectively. The high prevalence of actionable CYP2D6 variants indicates a substantial proportion of Nigerian SCD patients may experience altered opioid responses, underscoring the need for tailored prescribing to optimise pain control and minimise adverse drug reactions. " } { "@context": "http://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": "1", "item": { "@id": "https://gatesopenresearch.org/", "name": "Home" } }, { "@type": "ListItem", "position": "2", "item": { "@id": "https://gatesopenresearch.org/browse/articles", "name": "Browse" } }, { "@type": "ListItem", "position": "3", "item": { "@id": "https://gatesopenresearch.org/articles/9-101", "name": "CYP2D6 Pharmacogenetics in Nigerian Sickle Cell Disease: Phase 1 of..." } } ] } Home Browse CYP2D6 Pharmacogenetics in Nigerian Sickle Cell Disease: Phase 1 of... ALL Metrics - Views Downloads Get PDF Get XML Cite How to cite this article Adeagbo B, Olarewaju O, Orherhe O et al. CYP2D6 Pharmacogenetics in Nigerian Sickle Cell Disease: Phase 1 of Implementing Pharmacogenomics Testing for Effective Care and Treatment in Africa (iPROTECTA) program . Gates Open Res 2025, 9 :101 ( https://doi.org/10.12688/gatesopenres.16370.1 ) NOTE: If applicable, it is important to ensure the information in square brackets after the title is included in all citations of this article. Close Copy Citation Details Export Export Citation Sciwheel EndNote Ref. Manager Bibtex ProCite Sente EXPORT Select a format first Track Share ▬ ✚ Research Article CYP2D6 Pharmacogenetics in Nigerian Sickle Cell Disease: Phase 1 of Implementing Pharmacogenomics Testing for Effective Care and Treatment in Africa (iPROTECTA) program Babatunde Adeagbo 1 , Olusola Olarewaju 2 , Ochuko Orherhe 1 , [...] Zedias Chikwambi 3 , Adrian Mazhindu 3 , Rahman Bolarinwa 2,4 , Oluseye Bolaji 1 , Collen Masimirembwa 3 , Consortium for Genomics and Therapeutics in Africa Babatunde Adeagbo 1 , Olusola Olarewaju 2 , [...] Ochuko Orherhe 1 , Zedias Chikwambi 3 , Adrian Mazhindu 3 , Rahman Bolarinwa 2,4 , Oluseye Bolaji 1 , Collen Masimirembwa 3 , Consortium for Genomics and Therapeutics in Africa PUBLISHED 10 Nov 2025 Author details Author details 1 Obafemi Awolowo University Faculty of Pharmacy, Ife, Osun, 220282, Nigeria 2 Obafemi Awolowo University Teaching Hospital Complex, Ile-Ife, Osun, 220282, Nigeria 3 African Institute of Biomedical Science and Technology, Harare, Harare South, Zimbabwe 4 Obafemi Awolowo University Faculty of Basic Medical Sciences, Ile-Ife, Osun, 220282, Nigeria Babatunde Adeagbo Roles: Conceptualization, Formal Analysis, Investigation, Methodology, Project Administration, Supervision, Validation, Visualization, Writing – Original Draft Preparation, Writing – Review & Editing Olusola Olarewaju Roles: Investigation, Methodology, Validation, Writing – Original Draft Preparation, Writing – Review & Editing Ochuko Orherhe Roles: Formal Analysis, Software, Visualization, Writing – Original Draft Preparation Zedias Chikwambi Roles: Data Curation, Formal Analysis, Methodology, Validation, Visualization, Writing – Original Draft Preparation Adrian Mazhindu Roles: Conceptualization, Methodology, Writing – Original Draft Preparation, Writing – Review & Editing Rahman Bolarinwa Roles: Conceptualization, Investigation, Methodology, Project Administration, Supervision, Writing – Original Draft Preparation, Writing – Review & Editing Oluseye Bolaji Roles: Conceptualization, Project Administration, Supervision, Writing – Original Draft Preparation, Writing – Review & Editing Collen Masimirembwa Roles: Conceptualization, Data Curation, Funding Acquisition, Project Administration, Resources, Supervision, Writing – Original Draft Preparation, Writing – Review & Editing OPEN PEER REVIEW REVIEWER STATUS AWAITING PEER REVIEW Originally published as a preprint: https://doi.org/10.12688/verixiv.1323.2 Abstract Background Sickle Cell Disease (SCD) is highly prevalent in Nigeria, with severe pain crises being a primary cause of morbidity. Codeine and tramadol are frequently used opioids, but their effectiveness and safety are significantly influenced by CYP2D6 genetic variations. Clinical Pharmacogenetics Implementation Consortium (CPIC) guidelines exist for opioid therapy based on CYP2D6 phenotypes. There’s a critical need for pre-emptive pharmacogenomic (PGx) testing in African SCD patients to guide opioid selection. This study aimed to determine CYP2D6 allele, phenotype frequencies and evaluate the feasibility of implementing pre-emptive pharmacogenomic (PGx) testing to guide opioid therapy for SCD patients in Nigeria. Methods This prospective, multicenter implementation study recruited 503 consenting SCD patients (HbSS or HbSC) aged ≥15 years from five Nigerian sites. Blood samples were collected for DNA extraction. CYP2D6 single-nucleotide polymorphisms and copy number variations were determined using Taqman assays based open array, GenoPharm. Phenotypes were assigned based on Clinical Pharmacogenetics Implementation Consortium (CPIC) guidelines using the Genomics Information Management System (GIMS). and patient-specific medication safety cards were generated. Results We successfully genotyped 503 SCD patients with a mean age of 25.1 years, while 61.4% were female, and hydroxyurea use was less than 9.4%. Actionable CYP2D6 variants were found in 36.6% of participants. The predicted phenotype distribution was 8.8% Ultrarapid Metabolizers (UM), 54.1% Normal Metabolizers (NM), 26.0% Intermediate Metabolizers (IM), and 1.8% Poor Metabolizers (PM), with 9.3% undetermined. Patient medication safety cards were provided to guide prescriptions. Conclusions This study successfully established a genotyped cohort of 503 Nigerian SCD patients, demonstrating the feasibility of pre-emptive pharmacogenetic testing through a Pan-African collaborative model in a resource-limited setting. The identification of PM and UM provides direct clinical guidance, as CPIC guidelines recommend avoiding codeine and tramadol in these groups due to the high risk of diminished efficacy or serious toxicity, respectively. The high prevalence of actionable CYP2D6 variants indicates a substantial proportion of Nigerian SCD patients may experience altered opioid responses, underscoring the need for tailored prescribing to optimise pain control and minimise adverse drug reactions. READ ALL READ LESS Keywords Sickle Cell Disease, pre-emptive pharmacogenomic, CYP2D6, phenotype, genotype, opioids Corresponding Author(s) Babatunde Adeagbo ( [email protected] ) Collen Masimirembwa ( [email protected] ) Close Corresponding authors: Babatunde Adeagbo, Collen Masimirembwa Competing interests: No competing interests were disclosed. Grant information: Support for this work was provided through grant funding from the Gates Foundation (GF) (Grant Number ID INV-036801) The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript. Copyright: © 2025 Adeagbo B et al . This is an open access article distributed under the terms of the Creative Commons Attribution License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. How to cite: Adeagbo B, Olarewaju O, Orherhe O et al. CYP2D6 Pharmacogenetics in Nigerian Sickle Cell Disease: Phase 1 of Implementing Pharmacogenomics Testing for Effective Care and Treatment in Africa (iPROTECTA) program . Gates Open Res 2025, 9 :101 ( https://doi.org/10.12688/gatesopenres.16370.1 ) First published: 10 Nov 2025, 9 :101 ( https://doi.org/10.12688/gatesopenres.16370.1 ) Latest published: 10 Nov 2025, 9 :101 ( https://doi.org/10.12688/gatesopenres.16370.1 ) Introduction Sickle cell disease (SCD) is the most common hemoglobin disorder worldwide, with the highest prevalence in sub-Saharan Africa, afflicting 2-3% of all Nigerians 1 , 2 SCD is an inherited haemoglobinopathy resulting from a base substitution of valine for glutamic acid at position 6 of the beta-globin gene, which encodes an abnormal hemoglobin S. 3 , 4 SCD presents a considerable health challenge in Nigeria and Africa at large, with vaso-occlusive crises (VOC) being the most frequent and debilitating complication, though precise per-patient incidence data is limited. 5 , 6 Studies in Nigeria reveal high rates of VOC among SCD patients, often leading to hospital admissions, with children with SCD constituting a notable percentage of overall hospitalizations in certain facilities. 5 – 8 While comprehensive statistics on SCD-related hospital admissions across Africa is not readily available due to data collection challenges, existing hospital-based research underscores the significant contribution of SCD to both pediatric and adult hospital stays, primarily driven by pain crises and associated complications. 9 This significantly impacts school attendance and academic performance among SCD children in Africa, particularly in Nigeria. 10 , 11 In Nigeria, studies reveal that adolescents with SCD, aged 12 to 18, miss an average of 12% of the school year, with over 35% missing at least one month. 11 A comparison of children with SCD and their siblings in Nigeria found a significantly higher school absence rate in the SCD group, alongside a greater percentage of below-average students, indicating a direct correlation between disease severity and educational disruption. 12 Similar trends have been observed across Sub-Saharan Africa with frequent hospital visits and prolonged crisis episodes leading to extended periods of school absenteeism, highlighting the widespread educational burden of VOCs in this vulnerable population. 11 , 13 While effective pain management aims for rapid resolution, the current average time to fully resolve a VOC pain in patients can still be prolonged, often ranging from several days to over a week, depending on the severity and individual response. 14 , 15 Incremental and combination therapy have been shown to significantly shorten this duration. 16 For instance, studies have shown that a multimodal approach combining opioids (like codeine or tramadol) with paracetamol and NSAIDs, when initiated promptly and titrated appropriately, can lead to substantial pain reduction within 24-48 hours, with many patients achieving satisfactory pain control and functional improvement within 3-5 days, compared to longer durations with less comprehensive approaches. 15 , 17 – 19 Inter-individual variation in pain severity, perception, experiences and responses, including toxicity to opioids, has been observed and partly attributed to genetic polymorphism of opioid receptors and metabolic enzymes. 20 In pain management, Pharmacogenomics (PGx) can play a significant role in optimizing symptom control and adverse drug effects. Opioids are metabolized to a larger extent via the cytochrome P450 (CYP) system, particularly isoenzymes CYP2D6, CYP2C9, CYP3A4/5 and uridine 5’-diphosphate-glucuronosyltransferase (UGT). 21 The effects of CYP2D6 polymorphisms have been observed, with a high level of evidence, to result in significant differences in response and toxicity in pain management with codeine and tramadol. 22 CYP2D6 metabolizes opioids like codeine, oxycodone, hydrocodone, and tramadol into active metabolites that have about 30-fold higher affinity for the mu opioid receptors than the parent molecule. 23 , 24 CYP2D6 is highly polymorphic, and the key allele with altered activity shows significant geographical and ethnic distribution globally. 25 – 27 The variants result in different phenotypes. The Clinical Pharmacogenetics Implementation Consortium (CPIC) has categorized these into four CYP2D6 phenotypes—Ultrarapid Metabolizer (UM), Normal Metabolizer (NM), Intermediate Metabolizer (IM), and Poor Metabolizer (PM)—to guide codeine and tramadol therapy. 28 For codeine and tramadol, UMs face increased toxicity risk due to rapid conversion to active metabolites, while PMs and often IMs experience reduced analgesic effects due to insufficient conversion; NMs are expected to have a normal response. Consequently, CPIC guidelines recommend avoiding codeine and tramadol in UMs and PMs, using standard dosing for NMs, and considering alternatives or cautious use with monitoring for IMs, all to optimize efficacy and minimize adverse drug reactions. 29 , 30 Clinical implementation of CYP2D6 pharmacogenomic-biomarker-guided pain management is needed, given the burden of patients with SCD-associated pain crises. Pre-emptive pharmacogenomic-biomarker testing to guide opioid use in SCD patients in an African setting has so far not been implemented to the best of our knowledge. Targeting specific at-risk populations for acute pain episodes like SCD patients for pre-emptive CYP2D6 genotyping for guided pain intervention is the future that could have enormous benefits by minimizing pain impact on health-related quality of life (QoL), in-hospital periods, reducing cost of care, potentially improving prognosis and enhancing confidence in the use of codeine among pediatric SCD patients. 31 Successful implementation of pre-emptive pharmacogenomic-biomarker guided treatment has setting-specific challenges, including limited PGx knowledge among clinicians, lack of equipment, limited evidence generated among populations in Africa and importantly, laboratory-clinic integration. This study aims to tackle these challenges by amplifying the reach of currently available resources on the African continent and setting up a much-needed clinical implementation project that demonstrates this benefit in outcomes for SCD patients and probes the effectiveness of this approach. The primary objective of this clinical implementation study is to evaluate the feasibility and effectiveness of opioid selection based on CPIC recommendations in SCD patients in Nigeria using pre-emptive testing. Furthermore, the study aims to generate more clinical, metabolic/pharmacokinetic data on opioid treatment outcomes among Africans. This paper presents the first phase of pre-emptive CYP2D6 genotyping in Nigerian SCD patients. Methodology This was a prospective, multicenter implementation study of pharmacogenomics-guided opioid treatment for SCD-associated pain crises in Nigeria. It was conducted at five sites in Nigeria: Obafemi Awolowo University (OAU) Teaching Hospitals Complex (OAUTHC), Adult and Pediatric Hematology clinics, OAUTHC Wesley Guild Hospital Unit, OAU Health Centre, Osun State Teaching Hospital (OSTH), and Ibadan Sickle Cell Foundation Clinic (ISCF), Ibadan, Oyo State ( Figure 1 ). Figure 1. The locations of the study sites in Nigeria. The study was performed following the Declaration of Helsinki and the relevant regulations and laws governing research in Nigeria. Ethical approval was obtained from the Obafemi Awolowo University Teaching Hospitals Complex Research Committee (ethical clearance number ERC/2022/07/17), and this was domesticated in all the other sites outside OAUTHC. Written informed consent was obtained from all participants in a language the participant understood, which was English or the local language, mainly Yoruba and Igbo. Participants were thoroughly informed about the study’s purpose, procedures, potential risks and benefits, their right to withdraw at any time without penalty, and the confidentiality of their data. Ample opportunity was provided for participants to ask questions, and all queries were addressed to their satisfaction before consent was obtained. For participants who were minors (less than 18 years of age), written informed consent was obtained from their parents or legal guardians. In addition, written assent was obtained directly from the minors themselves, ensuring they understood the study in an age-appropriate manner and willingly agreed to participate. The assent process involved explaining the study in simple, clear language, addressing any concerns they might have, and emphasizing the voluntary nature of their participation. No minor was included in the study without both parental/guardian consent and their assent. All informed consent and assent procedures adhered strictly to the guidelines and requirements of the Obafemi Awolowo University Teaching Hospitals Complex Ethics and Research Committee. In the study, 503 consenting participants who had been diagnosed with HbSS or HbSC using hemoglobin electrophoresis were recruited. After informed consent, each of the subjects was screened for eligibility, and those who met the eligibility criteria were recruited, and data were entered into the database. Inclusion criteria for the study were participants above 15 years of age and with estimated glomerular filtration rate (eGFR) ≥ 60mL/min/1.73/m2. Exclusion criteria for the study were pregnancy, breastfeeding and previous experience of bone marrow transplantation, history of previous side effects to opioids and derangement in liver enzymes. Blood samples were collected into 5 mL EDTA tubes from each of the consented participants. Blood aliquots of 200 μl and dry blood spot paper were made and stored at -80°C until DNA extraction. Genomic DNA (gDNA) was isolated in Nigeria from whole blood samples using QIAamp DNA Blood Mini Kit (Qiagen, Hilden, Germany), following the manufacturer’s instructions. The concentration and quality of the extracted gDNA were assessed using a spectrophotometer (e.g., NanoDrop One, Thermo Fisher Scientific). The samples were shipped to the African Institute of Biomedical Science and Technology (AiBST), Harare, Zimbabwe, on an ice pack, as DNA and dried blood spots. The sample processing workflow is outlined in Figure 2 . All received samples were verified (labelling, sample type), registered and bio-banked at -80°C using the Lab Collector laboratory information management system (LIMS) Biobanking module at AiBST. DNA Concentration was determined using Qubit 3 (Thermo Fisher Scientific, Waltham, Massachusetts, USA). Samples that had a DNA concentration less than 5 ng/μl, DNA were re-extracted from DBS. This procedure was done to ensure adequate DNA concentration for further analysis. Figure 2. The workflow chart for the genotyping. The genotyping was done using GenoPharm ® custom open array platform (Thermo Fisher Scientific Open Array™ system), which evaluates 120 Single Nucleotide Polymorphisms (SNPs) across 46 pharmacogenes, specifically designed to be inclusive of variants common in African populations. 32 The full list of pharmacogenes and specific target variants included in this panel is provided is as reported by Kanji CR et al. 2023. 32 For the single-nucleotide variations, the process utilized TaqMan Assay chemistry with polymerase chain reaction (PCR) on the Applied Biosystems QuantStudio 12K Flex Real-Time PCR System. Genomic DNA samples were diluted to 50 ng/μL, mixed with TaqMan Genotyping master mix, and transferred to the open array via an automated system. Genotypes were determined using TaqMan Genotyper Software. For Copy Number Variation (CNV) determination, for CYP2D6, the Applied Biosystems TaqMan copy number assays targeting Exon 9 were used. This involved a duplex real-time PCR reaction with the human TaqMan Copy number reference assay RnaseP serving as the reference gene. To ensure the accuracy and reliability of the reported genotypes, robust quality control measures were implemented. All genotyping data were analyzed using TaqMan™ Genotyper Software, requiring a confidence value of ≥ 0.95 for a call to be assigned. Data points below this threshold were classified as undetermined. The GenoPharm ® platform was validated as previously described. 32 For genotype validation, a subset of 5% of the cohort’s samples was randomly selected. These samples were cross-validated for the most clinically actionable variants (specifically the *CYP2D6 *4, *10, 17, and 29 alleles). The relative quantification of CYP2D6 copy numbers was performed using Copy Caller Software v2.1. Copy number was predicted based on the comparative cycle threshold (CT) between the sample and RnaseP, leading to a ΔΔCT calculation, with successful calls requiring a confidence value greater than 0.95 and a z-score less than 1.75. Genotype distributions were tested for compliance with Hardy–Weinberg equilibrium (HWE) by calculating the expected frequencies of genotypes and comparing them to the observed values using the chi-squared (χ 2 ) test. Categorical data were summarized using proportions and percentages. The CNV and SNP genotyping results were transformed into the GIMS input format using a custom R script. The GIMS ready sample files were then uploaded onto the GIMS platform according to the Biologis standard operating procedure. The output files consisted of three PDF files: a cover letter, a Safety Card, and a main detailed report. The Patient Medication Safety Card was then printed, and the username and password were provided separately for each patient. Results Patient recruitment A total of 503 SCD patients, who consented to the study and biobanking across borders, were recruited over 8 months. Table 1 provides a summary of the demographic characteristics of the 503 patients enrolled across the six study sites. The mean age of the patient cohort was 25.1 years, with ages ranging from 15 to 75 years. A majority of the patients were female, accounting for 61.4% of the total. Regarding BMI categories, 43.1% of the patients had a normal BMI (18.5-24.0), while 33.2% were underweight (<18.5). The most prevalent SCD diagnosis was HBSS, affecting 90.7% of the patients. Ethno-tribal group analysis showed that the Yoruba group constituted the largest proportion at 92.8%. Furthermore, a significant majority of patients (90.5%) were not using hydroxyurea at the time of recruitment. Table 1. Demographics of patients across the sites. Characteristic Description Frequency (%) N = 503 OAUTHC, Adult Clinic OAUTHC, Pediatrics Clinic Wesley Hospital Guild OAU Health Centre OSTH, Osogbo. ISCF, Ibadan Age Mean (Range) 25.1 (15-75) 28.3 (15-65) 15.2 (15-18) 15.8 (15-30) 23.6 (17-52) 28.1 (16-75) 24.4 (16-59) Sex Female 61.4 103 5 21 30 40 110 Male 38.6 55 5 17 17 32 68 BMI category Underweight <18.5 33.2 36 6 27 3 11 84 Normal 18.5-24.0 43.1 72 3 9 33 41 59 Overweight 25-29.9 15.3 30 1 2 9 17 18 Overweight 30-34.9 8.4 20 0 0 2 3 17 SCD diagnosis HBSC 9.3 25 1 3 0 10 8 HBSS 90.7 133 9 35 47 62 170 Ethno-tribal group Yoruba 92.8 148 10 36 39 68 166 Igbo 6.4 9 0 1 8 4 10 Hausa 0.4 0 0 1 0 0 1 Minor 0.4 1 0 0 0 0 1 Hydroxyurea usage at recruitment Yes 9.5 12 7 19 0 1 9 No 90.5 146 3 19 47 71 169 Patient genotyping The dried blood (DBS) and the DNA samples for each patient were successfully shipped within 4 to 7 days to Zimbabwe in three batches. Some of the DNA samples that had issues were re-extracted using the DBS supplied. The turnaround of blood sample collection, shipping samples from Nigeria to Zimbabwe and return of results varied greatly from 1 to 3 months in this pilot study. Table 2 presents the details of the distribution of CYP2D6 single-nucleotide variants (SNVs) across six study sites in Nigeria for the SCD patients. As shown in Table 1 different CYP2D6 SNV genotypes were found within the population. The most frequently observed genotype was *1/*1, accounting for 24.5% (n = 123) of the total, followed by *1/*17 at 17.7% (n = 89). Other notable genotypes included *1/*1XN (5.2%, n = 26), *1/*2 (3.6%, n = 18), and *1/*4 (2.2%, n = 11). Several SNVs were present at lower frequencies, such as *1/*10 (2.8%), *1/*29 (2.0%), and *1/*5 (2.8%). A substantial portion of samples, 9.3% (n = 47), were categorized as “UND” (undetermined) because their genotypes could not be determined. The distribution of these SNVs varied across the individual study sites. Table 3 and Figure 3 further describe the distribution of CYP2D6 actionable variants, categorized by their corresponding phenotypes, across the six study sites. Of the phenotypes observed, the Intermediate Metabolizer (IM) phenotype was the most prevalent, accounting for 26.0% (n = 131) of the total. This phenotype is characterized by the presence of one decreased function and one functional allele, with genotype definitions including combinations such as *1/*4, *1/*41, *10/*17, and *17/*17. The Ultrarapid Metabolizer (UM) phenotype, defined by the carrier of duplications of functional alleles, was observed in 8.7% (n = 44) of the patients, with genotype definitions like *1/*1XN and *17/*17xN. The Poor Metabolizer (PM) phenotype, characterized by two non-functional alleles (e.g., *4/*4, *5/*5), was the least frequent, representing 1.8% (n = 9) of the cohort. These phenotypes are driven by the variants CYP2D6 *4, *5, *10, *17, and *41. The top 3 genotypes were *17/*17, *1/*4xN, and *1/*1xN as shown in Figure 3 . Table 2. Distribution of the CYP2D6 SNVs across study sites in Nigeria. SNVs OAUTHC OAUTHC-P OAU-HC WGH OSTH IBD -SCF Total % Frequency *1/*1 40 3 10 7 18 45 123 24.5 *1/*10 4 1 2 4 3 14 2.8 *1/*10, xN 0 1 1 1 1 4 0.8 *1/*17 24 1 8 8 17 31 89 17.7 *1/*17XN 1 1 0.2 *1/*1XN 5 1 4 1 3 12 26 5.2 *1/*2 6 2 2 3 5 18 3.6 *1/*2XN 2 1 1 4 0.8 *1/*29 1 1 2 4 1 1 10 2 *1/*29XN 1 1 2 0.4 *1/*4 5 1 1 4 11 2.2 *1/*4, xN 4 3 2 7 16 3.2 *1/*41 2 4 6 1.2 *1/*41XN 0 1 1 2 0.4 *1/*5 2 1 2 3 6 14 2.8 *10/*17 6 4 10 2 *10/*17XN 0 2 2 0.4 *17/*17 9 2 3 1 5 10 30 6 *17/*17, xN 4 1 5 1 *17/*41 0 1 3 4 0.8 *17/*29 4 3 1 8 1.6 *1XN/*29XN 1 1 0.2 *2/*2 1 1 0.2 *2/*2XN 1 1 0.2 *2/*29 4 1 2 3 10 2 *2/*3 3 1 1 2 7 1.4 *2/*3XN 2 2 0.4 *2/*5 2 1 2 5 1 *2XN/*2XN 1 1 0.2 *29/*42 1 1 0.2 *3/*6 1 1 0.2 *4/*10 1 1 2 0.4 *4/*10, xN 0 1 3 4 0.8 *4/*4, xN 1 2 3 0.6 *4/*4 0 1 1 2 0.4 *4/*5 1 1 0.2 *4/*64 1 1 0.2 *6/*17 1 1 0.2 *5/*5 1 1 0.2 *5/*17 1 1 3 4 9 1.8 *10/*10 2 1 3 0.6 UND 22 4 4 5 12 47 9.3 Total 158 10 47 38 72 178 503 100 Table 3. The distribution of the haplotype and phenotype of CYP2D6 actionable variants across study sites. Haplotype Actionable phenotype Genotype definition Counts of actionable phenotypes across sites Total count Total frequency (%) phenotype OAUTHC OAUTHC-P OAU-HC WGH OSTH IBD -SCF *1/*4 (n=?); *1/*4 (n=?), xN; *1/*41; *1/*5; *10/*10; *10/*17; *17/*17; *17/*29; *17/*41; *2/*3; *2/*5; *29/*42; *4/*10; *4/*10, xN; *4/*64; *5/*17; *6/*17 IM One decreased function and one functional allele 42 2 12 10 16 49 131 26.0 *3/*6; *4/*4; *4/*4xN; *4/*5; *5/*5; *4/*10 PM Two non-functional alleles 0 0 1 1 1 6 9 1.8 *1/*1xN; *1/*17xN; *1/*10xN; *17/*17xN; *1xN/*29xN; *1/*29xN; *1/*2xN; *2xN/*2xN; *2/*3xN UM Carrier of duplications of functional alleles 15 1 6 2 5 15 44 8.8 Figure 3. CYP2D6 variants distribution (a) Phenotype distribution (b) Actionable variants genotype distribution (n = 503). Patient medication safety cards A patient medication safety card was printed and given to each of the 503 SCD patients ( Figure 3 ). The card is meant for presentation at every clinical day before consultation in order to guide prescription. For each of the patients with phenotype results, detailed genotype reports and a recommended treatment plan report were provided for the primary physician of each patient. The study clinicians now have a database of the genotypes of their patients in preparation for Phase 2 of the study, when this information will be used to select drugs and doses when the patients present with pain episodes. Discussion SCD-associated VOCs are characterized by intense pain, often requiring hospitalization and medical interventions, which can result in missed school days or workdays, low economic productivity and poor quality of life 10 , 11 (QoL). With SCD disease occurring at a prevalence of 2-3% in Nigeria, and patients having up to 6 VOC episodes a year, 2 , 33 , 34 need to effectively and efficiently manage the pain episodes is of public health importance. One of the ways of achieving this is the possibility of using a precision medicine approach in the use of codeine and tramadol. In this two-phase study, we aimed to pre-emptively genotype SCD patients at selected hospitals during phase 1 and then use that genetic information to inform drug choice and dose optimization in treating the patients in phase 2. This study represents Phase I of the Implementing Pharmacogenomics Testing for Effective Care and Treatment in Africa (iPROTECTA) program to evaluate the feasibility of implementing pre-emptive pharmacogenetic testing in pain management in SCD patients in Nigeria. In this phase, we successfully identified 5 hospitals that run SCD treatment clinics and recruited 503 SCD patients. The most commonly used opioids in pain management include codeine, tramadol and morphine. The patients were genotyped for CYP2D6 variants important in the safe use of codeine and tramadol, in pain management in SCD patients. This study successfully established a pre-emptively genotyped cohort of 503 Sickle Cell Disease patients in Nigeria, with samples shipped to Zimbabwe for analysis within 4-7 days and results returned in approximately three months. The first of three batches of Dried Blood Spot (DBS) samples encountered issues, a common challenge in transnational biobanking. Literature on establishing biobanks and genomic studies in Africa frequently highlights logistical complexities, including sample degradation due to variable shipping conditions, customs delays, and insufficient cold chain infrastructure. For instance, studies by Tindana et al. (2016) and Mayne et al. (2017) discussed the multifaceted challenges of biobanking in Africa, emphasizing the need for robust standard operating procedures and contingency planning. 35 – 37 The project’s proactive mitigation strategy, by subsequently shipping extracted DNA alongside DBS cards, proved crucial in safeguarding sample integrity and ensuring the project’s continued success. This dual-sample approach is a practical solution often recommended to de-risk projects reliant on precious biological materials transported over long distances. 36 A crucial element of this success was the thorough training of medical and laboratory personnel in workflow, sample handling, and results interpretation, which significantly enhanced data quality and demonstrated the feasibility of conducting complex genomic studies in resource-limited African settings. The mean age of our participants was 25.1 years, with a majority of females (61.4%), a figure consistent with findings other studies in the Nigerian or sub-Saharan African population. 38 , 39 This underscores the severe reality of SCD in Nigeria, where life expectancy remains significantly curtailed, often falling below 50 years despite the increase in awareness and improvement in care management. 39 This demographic picture highlights the urgent need for interventions that improve survival and quality of life, in which management of the pain is key in improving the quality of life and decreasing the co-morbidities. 39 A significant proportion of our patients are underweight (33.2%) or overweight/obese (23.7%) individuals. This is critical for understanding the manifestation and management of SCD and its associated pain. Body Mass Index (BMI) is increasingly understood to influence SCD outcomes; for example, underweight patients may be at higher risk for certain complications, while obesity can exacerbate inflammation and vascular issues, potentially increasing pain frequency or severity. Studies show that a substantial proportion of children with sickle cell anemia are underweight, and poor growth and nutrition are common in this population due to increased metabolic rates and reduced absorption. 40 – 42 Thus, in low-resource settings, underweight children with SCD face an increased risk of early mortality. 41 The younger age and significantly lower BMI in the Nigerian SCD cohorts when compared to high-income countries suggest a more severe disease course and higher mortality rates in Africa, likely exacerbated by widespread malnutrition. 40 This distinct demographic and physiological profile imply that PGx-guided interventions must consider the unique metabolic characteristics of a predominantly younger, often malnourished, patient population. This could influence drug pharmacokinetics and response, potentially necessitating dosage adjustments or alternative drug choices, as drug metabolism and response can be significantly altered by nutritional status and age. One of the most striking findings in this study is the exceptionally low rate of hydroxyurea (HU) usage, with fewer than 9.5% of participants actively taking this vital, disease-modifying therapy. Participants identified cost as the primary barrier, a finding consistent with numerous reports highlighting financial constraints, limited availability, and insufficient patient/provider education as key obstacles to HU uptake in Nigeria. 43 – 46 Given HU’s proven efficacy in reducing SCD complications, this widespread underutilization represents a major public health challenge and a significant missed opportunity to improve patient outcomes. Addressing this requires a multi-pronged strategy focusing on affordability, accessibility, and education. The reported three-month turnaround time (TAT) for genotyping results for 503 patients is considerably longer than typical clinical laboratory TATs for CYP2D6 genotyping, which usually range from 5-10 days in within-country services, with comprehensive panels often taking 7-10 business days. 47 – 49 The discrepancy between the study’s TAT and standard clinical times is multifactorial, stemming from technical complexities like re-extraction of DNA and quality control. While some laboratories can achieve quick TATs for whole-exome sequencing (2-3 weeks), more complex assays like quantitative PCR for large deletion/duplication testing can take 7-10 weeks 50 making the final results for CYP2D6 genotyping take close to the 3 months reported in our project. The observed three-month TAT, though a practical reality for large-scale international research with international sample transfer in a resource-limited setting, highlights a critical operational gap for real-time pharmacogenomics-guided treatment, especially in acute pain management, where timely intervention is crucial. This makes the pre-emptive approach, where at-risk patients have their genotypes already available in local databases, more realistic than reactive testing to address a patient experiencing a pain crisis. The genotyping results show a substantial proportion of patients with actionable CYP2D6 phenotypes, indicating a significant clinical utility for PGx-guided treatment in this cohort. The study identified 41 different CYP2D6 SNV genotypes. The findings regarding CYP2D6 phenotype prevalence in this study are largely consistent with, yet provide more precise data than, existing literature on Nigerian populations and other African and Asian descent. Previous studies on Nigerian populations report poor metabolizers (PMs) at 2.3% in Yoruba Nigerians and 3.5% across Hausa, Ibo, and Yoruba populations, comparable to rates in other Black (1-4%) and Asian (1-2%) populations. 51 , 52 This PM frequency contrasts sharply with the higher rates reported for Caucasian populations, which typically range from 5-10%. 53 , 54 The PM rate of 1.8% in the current study falls within the previously reported range for Nigerians, while the IM rate of 26.0% is notably higher than the 17.4% previously observed. A significant finding from this cohort is the 8.8 % ultrarapid metabolizer (UM) rate, which fills a knowledge gap, as earlier Nigerian studies often did not explicitly detail UM prevalence, 51 despite UMs being known to be prevalent in other African populations (e.g., 16% in Ethiopians). 55 , 56 African populations are characterized by a high prevalence of UMs due to frequent CYP2D6 gene duplications, with rates often exceeding 10% in some ethnic groups. 57 The higher IM and identified UM prevalence in the current study provide more comprehensive phenotypic data for a large Nigerian Sickle Cell Disease cohort. This study revealed a high prevalence of actionable CYP2D6 variants, present in 36.6% of the genotyped cohort. This underscores the potential value of pharmacogenetic testing in this population, to guide therapy, particularly for pain management. Patients at risk of diminished effectiveness of codeine or tramadol with either IM or PM classification were 27.8% of participants, and those at higher risk of adverse drug effects with UM status were 8.8 %. Given the high risk of VOCs, which can account for as high as 70% of SCD patients’ emergency room presentation PGx-guided pain management in Nigeria could potentially be of significance. The high frequency of IMs, largely driven by the *17 allele, aligns with known data showing *CYP2D6*17 is prevalent in African populations. 30 , 58 , 59 However, the PM frequency is lower than some previous reports from Nigeria, 51 which could reflect differences in genotyping platforms, while the presence of UMs resulting from gene duplications is also a critical finding. Notably, 9.3% of participants had an undetermined phenotype, a rate considerably higher than the typical less than 5% in general clinical settings for cases requiring copy number determination. 60 This high indeterminate rate is directly attributable to high genetic diversity within African populations and suggests the presence of novel or rare CYP2D6 alleles or haplotypes not captured by current standard genotyping panels and algorithms. 27 , 58 Moreover, it also shows the extreme complexity of the CYP2D6 gene, which is a highly variable pharmacogene characterized by intricate structural variants (SVs) or copy number variants (CNVs) such as deletions, duplications, multiplications, and hybrid genes. 60 The instability of the CYP2D locus on chromosome 22, coupled with the presence of highly homologous pseudogenes (CYP2D7 and CYP2D8), significantly interferes with standard genetic analyses, making accurate haplotype assignment difficult. 60 Some complex haplotypes are even challenging to detect with standard microarray chips or short-read sequencing. 61 Accurate CYP2D6 phenotype prediction requires comprehensive testing for SVs/CNVs across multiple gene locations. 61 Thus, further investigation, potentially using sequencing, is needed to characterize these unknown variants and improve phenotype prediction accuracy. Phenotype prediction in the current study was performed by calculating the diplotype’s activity score and translating it to a metabolizer phenotype using the standardized guidelines published by CPIC. The observed CYP2D6 phenotype distribution has significant implications for pain management in Nigerian SCD patients, especially concerning commonly used opioids like codeine and tramadol. Both are prodrugs that rely on CYP2D6 for conversion to their active metabolites (morphine and O-desmethyltramadol, respectively). Poor metabolizers on codeine therapy have shown through metabolic/pharmacokinetic and clinical endpoint studies to achieve a lower mean serum morphine AUC compared to normal metabolizers. 62 This results in inadequate pain control but could still potentially expose patients to adverse drug reactions from codeine. For both codeine and tramadol treatment failure in SCD-associated pain care has been significantly linked to CYP2D6 activity score, which was reported to be average in the IM range. 63 The occurrence of hypoanalgesic state with codeine or tramadol therapy could result in prolonged hospital admission, higher care costs and poor health-related QoL for SCD patients. 63 , 64 Conversely, CYP2D6 UM status increases the risk of experiencing higher morphine levels by as much as 45% compared to CYP2D6 normal metabolizers for patients on codeine. 65 A similar phenomenon is observed with tramadol, and both could result in potentially fatal opioidergic effects. 64 These adverse drug effects occur in a spectrum of mild to severe. On the severe end of the spectrum, patients can experience sedation, dizziness, excessive nausea, vomiting, constipation, drug dependence and potentially fatal respiratory depression. 66 For both IM/PM, and UM the CPIC recommendation is to avoid codeine/tramadol use because of the potential for diminished effectiveness or serious toxicity, respectively. 28 Combining these categories, our findings suggest that at least 10.5% (UM + PM) of Nigerian SCD patients should not receive codeine or tramadol. Furthermore, another 26.0% (IM) may not achieve adequate pain relief or require careful titration. This means that over 36.6% of the SCD population in this region may experience either toxicity or lack of efficacy with these commonly prescribed analgesics if treatment is not guided by patients’ CYP2D6 status. A patient medication safety card ( Figure 4 ) was provided to each of the 503 SCD patients, intended for presentation at every clinical consultation to guide prescriptions, and detailed genotype and recommended treatment plan reports were given to each patient’s primary physician, building a database for future personalized pain management in Phase 2 of the study. This innovative safety card is a crucial step towards integrating pharmacogenomics (PGx) into routine clinical practice, particularly for managing VOCs in SCD, aligning with the role of clinical decision support (CDS) tools in preventing errors and improving health outcomes. 67 Similar to other patient-facing PGx tools with safety-code cards or QR codes, this card enhances patient-doctor communication by presenting complex PGx information in an accessible format. 67 Ultimately, this medication safety card represents a proactive and patient-centric approach, directly addressing VOC management by empowering both patients and doctors with personalized drug information, potentially reducing adverse drug reactions, improving treatment efficacy (especially for PGx-sensitive opioids in pain management), and bridging health literacy gaps, thereby enhancing patient safety in a resource-limited setting. 28 Figure 4. The medication safety card*. * This is a ‘credit card-like’ document that patient can carry with them and be able to access their results on the online GIMIS platform. Each patient will also have a hard copy of the results in case they do not have access to the internet. When visiting a doctor, the patient can carry their hard copy results or share their password with the doctor to see which medications patients should or should not take, and if there is a need for dose adjustments. For patients going to their reference clinic, the results will be in their local electronic patient data system. The study’s comprehensive genotyping and information dissemination efforts significantly position the cohort for a Phase 2 pharmacogenomics (PGx)-guided treatment trial, particularly through the pre-emptive genotyping of all 503 patients and the provision of detailed genotype reports and recommended treatment plans to primary physicians, aligning with the foundational assumption of proactive genotyping in CPIC guidelines. 28 While patient genotype databases have been established and detailed reports provided to healthcare providers, we have also addressed the crucial provider-related barriers in resource-limited settings through targeted education and capacity-building programs for the clinical team and other support staff to ensure effective PGx implementation. The availability of comprehensive CPIC guidelines with the team will support the feasibility of a PGx-guided pain management trial in the Phase 2 trial, which will pragmatically focus on optimizing existing, accessible opioid strategies given the cost and accessibility issues of newer SCD therapies in Africa. 28 Furthermore, the inherent variability across the six recruitment sites in terms of patient volume, genotype distribution, healthcare infrastructure, and resource availability has revealed the need for adaptive protocols and site-specific considerations in the Phase 2 trial design to ensure robust and generalizable findings. 60 , 67 The phase 2 findings will be important in noting the successful integration of the PGx results, acceptability of the form of patient management to clinicians and sustainability of the model absence of electronic health records systems. Successful implementation and demonstrable sustainability could help provide evidence whereby SCD patients undergo pre-emptive PGx testing soon after birth and diagnosis of SCD. Conclusion This study offers crucial insights into the feasibility and challenges of implementing pharmacogenomics (PGx)-guided treatment for Sickle Cell Disease (SCD) in high-burden, resource-limited settings like Nigeria. The cohort’s younger age and lower Body Mass Index (BMI) suggest a severe disease burden exacerbated by malnutrition and limited access to hydroxyurea, indicating that PGx interventions must be tailored to this distinct physiological context. Genotyping revealed the clinical utility of PGx, with a notable prevalence of CYP2D6 poor or intermediate metabolizer phenotypes suggesting potential for personalized opioid pain management, yet a 9% indeterminate rate for CYP2D6 genotyping presents a critical challenge due to the gene’s complexity and emphasizes the need for advanced methods and population-specific research. Readiness for a Phase 2 PGx-guided trial is bolstered by pre-emptive genotyping and the introduction of a PGx medication safety card, empowering patients and doctors in VOC management. The inherent variability across different sites also demands adaptive trial protocols and site-specific considerations for equitable implementation and generalizability. This study ultimately demonstrates the scientific promise of PGx while critically highlighting systemic, logistical, and human infrastructure challenges that must be addressed for equitable precision medicine in such settings. The pragmatic implementation study design employed here demonstrated the strength of a pan-African collaborative approach that is cost-effective without requirements for new laboratories to be set up at this stage in the study. It also provides a wider external validity to this regional approach to PGx implementation. This PGx implementation study has shown PGx acceptability in a Nigerian setting, the feasibility of clinical and laboratory coordination at a regional level and the ability to move to an effective decision-making input platform for a disease relevant to the Nigerian and greater sub-Saharan Africa population. Moving forward, the long-term clinical utility and widespread adoption of this model will rely on integrating pre-emptive testing into national healthcare policies, which will require government subsidy and targeted training to ensure that genotyping costs become a sustainable investment in reducing adverse drug reactions and optimizing patient outcomes across Nigeria and the wider Sub-Saharan African region. Moreover, successful implementation of any PGx testing program will also include a comprehensive education of all stakeholders, particularly Primary Health Care Professionals (PHCPs). Training modules must be developed and integrated into continuing medical education to enhance PHCPs’ comprehension of PGx principles, their confidence in interpreting metabolizer phenotypes, and their ability to counsel patients effectively on genotype-guided prescribing decisions for critical medications like opioids. Ethics approval and consent to participate All elements of the study were performed in accordance with the Declaration of Helsinki and the relevant regulations and laws governing research in Nigeria. Ethical approval for this study was obtained from the Ethics and Research Committee of Obafemi Awolowo University Teaching Hospitals Complex, Ile-Ife, with registration numbers International-IRB/IEC/0004553 and National-NHREC/17/03/2021. The ethical approval was received on 31 st July 2023 and the number assigned to this study is ERC/2022/07/17. Written informed consent was obtained from all participants in a language the participant understood, which was English or the local language, mainly Yoruba and Igbo. Participants were thoroughly informed about the study’s purpose, procedures, potential risks and benefits, their right to withdraw at any time without penalty, and the confidentiality of their data. Ample opportunity was provided for participants to ask questions, and all queries were addressed to their satisfaction before consent was obtained. For participants who were minors (less than 18 years of age), written informed consent was obtained from their parents or legal guardians. Data availability statement Due to the highly sensitive nature of genetic data from human subjects, the datasets supporting this study are not publicly available to protect participant privacy and confidentiality. This restriction aligns with the ethical guidelines set forth by the Ethics Committee of Obafemi Awolowo University Teaching Hospitals Complex, Ile-Ife, which approved the study protocol, including its data access provisions. Qualified researchers, however, can apply for restricted access to de-identified data by submitting a research proposal, proof of their ethical approval, and signing a Data Access Agreement. All access requests should be directed to the corresponding authors ( [email protected] , [email protected] ) and will be reviewed by the study’s data governance committee to ensure ethical compliance. References 1. Kambale-Kombi P, Marini Djang’eing’a R, Alworong’a Opara JP, et al. : Management of sickle cell disease: current practices and challenges in a northeastern region of the Democratic Republic of the Congo. Hematology. 2021; 26 (1): 199–205. PubMed Abstract | Publisher Full Text 2. Ojewunmi OO, Adeyemo TA, Ayinde OC, et al. : Current perspectives of sickle cell disease in Nigeria: changing the narratives. Expert Rev. Hematol. 2019; 12 (8): 609–620. PubMed Abstract | Publisher Full Text 3. Alenzi FQ, AlShaya DS: Biochemical and molecular analysis of the beta-globin gene on Saudi sickle cell anemia. Saudi J. Biol. Sci. 2019; 26 (7): 1377–1384. PubMed Abstract | Publisher Full Text | Free Full Text 4. Steinberg MH: Fetal hemoglobin in sickle cell anemia. Blood. 2020; 136 (21): 2392–2400. PubMed Abstract | Publisher Full Text | Free Full Text 5. Efobi CC, Ugwu AO, Ugwu NI, et al. : Preventive measures of vaso-occlusive crisis among sickle cell disease patients in South-Eastern Nigeria. Niger. J. Med. 2022; 31 (2): 197–201. Publisher Full Text 6. Colombatti R, Hoppe C, Vichinsky EP, et al. : Insights into Vaso-Occlusive Crises-Related Readmissions in Patients with SCD across Geographic Regions. Blood. 2022; 140 (Supplement 1): 5453–5455. Publisher Full Text 7. Mava Y, Ambe JP, Mava Y, et al. : Clinical features of sickle cell anaemia in Northern Nigerian children. West Africa J. Med. 2012; 31 (2). 8. West BA, Aitafo JE: Prevalence, pattern of disease and outcome of children with sickle cell disease admitted in a private health facility in Southern Nigeria. Asian J. Pediatr. Res. 2023; 12 (1): 17–27. Publisher Full Text 9. Makani J, Williams TN, Marsh K: Sickle cell disease in Africa: Burden and research priorities. Ann. Trop. Med. Parasitol. 2007; 101 (1): 3–14. PubMed Abstract | Publisher Full Text | Free Full Text 10. Adigwe OP, Onavbavba G, Onoja SO: Impact of sickle cell disease on affected individuals in Nigeria: A critical review. Int. J. Gen. Med. 2023; 16 : 3503–3515. PubMed Abstract | Publisher Full Text | Free Full Text 11. Birudu RB, Anil I, Bala Krishna SL, et al. : Global sickle cell Disease and impact on school education in children; A focus on interventions for improving academic performance.May 27, 2025. Publisher Full Text 12. Ogunfowora OB, Olanrewaju DM, Akenzua GI: A comparative study of academic achievement of children with sickle cell anemia and their healthy siblings. J. Natl. Med. Assoc. 2005; 97 (3). 13. Adeleke OT, Folaranmi O, Olasinde Y, et al. : Unveiling the psychosocial and academic implications of living with sickle cell disease among undergraduates in a private university in Nigeria. Front. Public Health. 2025 Jan 31; 13 : 1531161. PubMed Abstract | Publisher Full Text | Free Full Text 14. Brandow AM, DeBaun MR: Key components of pain management for children and adults with sickle cell disease. Hematol. Oncol. Clin. North Am. 2018; 32 (3): 535–550. PubMed Abstract | Publisher Full Text | Free Full Text 15. Admiraal M, van Daalen J , Ritt MWJ, et al. : A multimodal pain protocol for treatment of vaso-occlusive crisis in patients with sickle cell disease: Implementation and evaluation. Eur. J. Haematol. 2023 Sep; 111 (3): 382–390. PubMed Abstract | Publisher Full Text 16. Uwaezuoke SN, Ayuk AC, Ndu IK, et al. : Vaso-occlusive crisis in sickle cell disease: Current paradigm on pain management. J. Pain Res. 2018; 11 : 3141–3150. PubMed Abstract | Publisher Full Text | Free Full Text 17. Argoff CE: Pharmacologic management of chronic pain. Korean J. Pain. 2010; 23 (2): 99–108. PubMed Abstract | Publisher Full Text | Free Full Text 18. Pergolizzi J, Böger RH, Budd K, et al. : Opioids and the management of chronic severe pain in the elderly: consensus statement of an International Expert Panel with focus on the six clinically most often used World Health Organization Step III opioids (buprenorphine, fentanyl, hydromorphone, methadone, morphine, oxycodone). Pain Pract. 2008 Jul-Aug; 8 (4): 287–313. PubMed Abstract | Publisher Full Text 19. Thybo KH, Hägi-Pedersen D, Dahl JB, et al. : Effect of Combination of Paracetamol (Acetaminophen) and Ibuprofen vs Either Alone on Patient-Controlled Morphine Consumption in the First 24 Hours After Total Hip Arthroplasty: The PANSAID Randomized Clinical Trial. JAMA. 2019 Feb 12; 321 (6): 562–571. PubMed Abstract | Publisher Full Text | Free Full Text 20. Dasgupta A: Pharmacogenomics of abused drugs. Alcohol, Drugs, Genes and the Clinical Laboratory. January 1, 2017; 117–133. Publisher Full Text 21. Reizine N, Danahey K, Schierer E, et al. : Impact of CYP2D6 Pharmacogenomic Status on Pain Control Among Opioid-Treated Oncology Patients. Oncologist. 2021 Nov; 26 (11): e2042–e2052. PubMed Abstract | Publisher Full Text | Free Full Text 22. Just KS, Dormann H, Schurig M, et al. : Adverse Drug Reactions in the Emergency Department: Is There a Role for Pharmacogenomic Profiles at Risk?-Results from the ADRED Study. J. Clin. Med. 2020 Jun 9; 9 (6): 1801. PubMed Abstract | Publisher Full Text | Free Full Text 23. Dean L, Kane M: Codeine Therapy and CYP2D6 genotype. Medical Genetics Summaries. March 30, 2021. 24. Meyer UA, Zanger UM: Molecular mechanisms of genetic polymorphisms of drug metabolism. Annu. Rev. Pharmacol. Toxicol. 1997; 37 : 269–296. Publisher Full Text 25. Bugada D, Lorini LF, Fumagalli R, et al. : Genetics and opioids: towards more appropriate prescription in cancer pain. Cancers. 2020; 12 (7): 1951. PubMed Abstract | Publisher Full Text | Free Full Text 26. Meyer UA, Zanger UM: Molecular mechanisms of genetic polymorphisms of drug metabolism. Annu. Rev. Pharmacol. Toxicol. 1997; 37 : 269–296. Publisher Full Text 27. Lerena A, Naranjo MEG, Rodrigues-Soares F, et al. : Interethnic variability of CYP2D6 alleles and of predicted and measured metabolic phenotypes across world populations. Expert Opin. Drug Metab. Toxicol. 2014; 10 (11): 1569–1583. PubMed Abstract | Publisher Full Text 28. Crews KR, Monte AA, Huddart R, et al. : Clinical Pharmacogenetics Implementation Consortium Guideline for CYP2D6, OPRM1, and COMT Genotypes and Select Opioid Therapy. Clin. Pharm. Therap. 2021; 110 (4): 888–896. PubMed Abstract | Publisher Full Text | Free Full Text 29. Saba R, Kaye AD, Urman RD: Pharmacogenomics in pain management. Anesthesiol. Clin. 2017; 35 : 295–304. Publisher Full Text 30. Caudle KE, Sangkuhl K, Whirl-Carrillo M, et al. : Standardizing CYP2D6 genotype to phenotype translation: consensus recommendations from the Clinical Pharmacogenetics Implementation Consortium and Dutch Pharmacogenetics Working Group. Clin. Transl. Sci. 2020; 13 (1): 116–124. PubMed Abstract | Publisher Full Text | Free Full Text 31. Gammal RS, Crews KR, Haidar CE, et al. : Pharmacogenetics for safe codeine use in sickle cell disease. Pediatrics. 2016; 138 (1). PubMed Abstract | Publisher Full Text | Free Full Text 32. Kanji CR, Mbavha BT, Masimirembwa C, et al. : Analytical validation of GenoPharm a clinical genotyping open array panel of 46 pharmacogenes inclusive of variants unique to people of African ancestry. PLoS One. 2023; 18 (10 October): e0292131. PubMed Abstract | Publisher Full Text | Free Full Text 33. Oladapo A, Swallow E, Briggs A, et al. : Prevalence of vaso-occlusive crises in patients with sickle cell disease: A retrospective US claims database analysis. Blood. 2020; 136 (Supplement 1): 8–9. Publisher Full Text 34. Zaidi AU, Glaros AK, Lee S, et al. : A systematic literature review of frequency of vaso-occlusive crises in sickle cell disease. A systematic literature review of frequency of vaso-occlusive crises in sickle cell disease. Orphanet J. Rare Dis. 2021; 16 (1). PubMed Abstract | Publisher Full Text | Free Full Text 35. Mayne ES, Croxton T, Abimiku A, et al. : Genes for life: Biobanking for genetic research in Africa. Biopreserv. Biobank. 2017; 15 (2): 93–94. Publisher Full Text 36. Tindana P, De Vries J: Broad Consent for genomic research and biobanking: perspectives from low- and middle-income countries. Annu. Rev. Genom. Hum. Genet. 2016; 17 : 375–393. PubMed Abstract | Publisher Full Text 37. Tindana P, Molyneux S, Bull S, et al. : ‘It is an entrustment’: Broad consent for genomic research and biobanks in sub-Saharan Africa. Dev. World Bioeth. 2019; 19 (1): 9–17. PubMed Abstract | Publisher Full Text | Free Full Text 38. Ibemere S, Onyeka T, Ezenwosu O, et al. : Sickle cell disease management practices across Nigeria: a cross-sectional analysis. Blood. 2023; 142 (Supplement 1): 1143. Publisher Full Text 39. Amaeshi L, Kalejaiye OO, Ogamba CF, et al. : Health-related quality of life among patients with sickle cell disease in an adult hematology clinic in a tertiary hospital in Lagos, Nigeria. Cureus. 2022; 14 : e21377. PubMed Abstract | Publisher Full Text | Free Full Text 40. Hyacinth HI, Gee BE, Hibbert JM: The role of nutrition in sickle cell disease. Nutr. Metab. Insights. 2010; 3 : 57–67. PubMed Abstract | Publisher Full Text | Free Full Text 41. Arji EE, Eze UJ, Ezenwaka GO, et al. : Evidence-based interventions for reducing sickle cell disease-associated morbidity and mortality in sub-Saharan Africa: A scoping review. SAGE Open Med. 2023; 11 : 11. PubMed Abstract | Publisher Full Text | Free Full Text 42. Vyas N, Onwuemene O, Hendren S, et al. : The accuracy of physical examination to diagnose anemia among patients 5 years of age or older: A systematic review of the literature. Blood. 2020; 136 (Supplement 1): 23–24. Publisher Full Text 43. Chianumba RI, Ofakunrin AOD, Morrice J, et al. : Outcome of hydroxyurea use in scd and evaluation of patients’ perception and experience in Nigeria. Front. Genet. 2022; 13 : 13. PubMed Abstract | Publisher Full Text | Free Full Text 44. Isa HA, Nnebe-Agumadu U, Nwegbu MM, et al. : Determinants of hydroxyurea use among doctors, nurses and sickle cell disease patients in Nigeria. PLoS One. 2022; 17 (11 November): e0276639. PubMed Abstract | Publisher Full Text | Free Full Text 45. Ofakunrin AO, Okpe ES, Afolaranmi TO, et al. : Level of utilization and provider-related barriers to the use of hydroxyurea in the treatment of sickle cell disease patients in Jos, North-Central Nigeria. Afr. Health Sci. 2021; 21 (2): 765–774. PubMed Abstract | Publisher Full Text | Free Full Text 46. Okocha EC, Gyamfi J, Ryan N, et al. : Barriers to therapeutic use of hydroxyurea for sickle cell disease in Nigeria: A cross-sectional survey. Front. Genet. 2022; 12 : 12. PubMed Abstract | Publisher Full Text | Free Full Text 47. Australian Clinicalabs: Clinicians’ Guide to pharmacogenetic testing at clinical labs. Accessed June 10, 2025. Reference Source 48. ARUP Laboratories: Pharmacogenetics panel: Psychotropics. Accessed June 12, 2025. Reference Source 49. Lunenburg CATC, Hauser AS, Ishtiak-Ahmed K, et al. : Primary Care Prescription drug use and related actionable drug-gene interactions in the Danish population. Clin. Transl. Sci. 2020; 13 (4): 798–806. PubMed Abstract | Publisher Full Text | Free Full Text 50. International Blood Group Reference Laboratory: Red cell genotyping - NHS Blood and Transplant. Accessed June 12, 2025. Reference Source 51. Ebeshi BU, Bolaji OO, Masimirembwa CM: Cytochrome P450 2D6 (CYP2D6) genotype and phenotype determination in the Nigerian populations. Asian J. Pharm. Health Sci. 2011; 1 (2): 47–54. 52. Adedeji WA, Igbinoba SI, Fakeye TO, et al. : Evaluation of CYP2D6 phenotype in the Yoruba Nigerian population. Expert Rev. Clin. Pharmacol. 2017; 10 (10): 1145–1152. PubMed Abstract | Publisher Full Text | Free Full Text 53. Zhou SF: Polymorphism of human cytochrome P450 2D6 and its clinical significance: Part I.Clin. Pharmacokinet.2009; 48 (11): 689–723. PubMed Abstract | Publisher Full Text 54. Gaedigk A, Sangkuhl K, Whirl-Carrillo M, et al. : Prediction of CYP2D6 phenotype from genotype across world populations. Genet. Med. 2017; 19 (1): 69–76. PubMed Abstract | Publisher Full Text | Free Full Text 55. Alali M, Ismail Al-khalil W, Rijjal S, et al. : Frequencies of CYP2D6 genetic polymorphisms in Arab populations. Hum. Genomics. 2022; 16 (1): 6. PubMed Abstract | Publisher Full Text | Free Full Text 56. Twesigomwe D, Drögemöller BI, Wright GEB, et al. : Characterisation of CYP2D6 Pharmacogenetic Variation in Sub-Saharan African Populations. Clin. Pharmacol. Ther. 2023; 113 (3): 643–659. PubMed Abstract | Publisher Full Text | Free Full Text 57. Aklillu E, Person I, Bertilsson L, et al. : Frequent distribution of ultrarapid metabolizers of debrisoquine in an Ethiopian population carrying duplicated and multiduplicated functional CYP2D6 alleles. J. Pharmacol. Exp. Ther. 1996; 278 (1): 441–446. PubMed Abstract | Publisher Full Text 58. Carranza-Leon D, Dickson AL, Gaedigk A, et al. : CYP2D6 genotype and reduced codeine analgesic effect in real-world clinical practice. Pharmacogenomics J. 2021; 21 (4): 484–490. PubMed Abstract | Publisher Full Text | Free Full Text 59. Wen YF, Gaedigk A, Boone EC, et al. : The identification of novel CYP2D6 variants in US Hmong: Results from genome sequencing and clinical genotyping. Front. Pharmacol. 2022; 13 : 867331. PubMed Abstract | Publisher Full Text | Free Full Text 60. Turner AJ, Nofziger C, Ramey BE, et al. : PharmVar tutorial on CYP2D6 structural variation testing and recommendations on reporting. Clin. Pharmacol. Ther. 2023; 114 (6): 1220–1237. PubMed Abstract | Publisher Full Text | Free Full Text 61. Gan Hui Peng P, Han Lin Y, Bin Hajis MI, et al. : Targeted adaptive sampling enables clinical pharmacogenomics testing and genome-wide genotyping. medRxiv. 2025 May 7; 2025.05.05.25326970. Publisher Full Text 62. Eckhardt K, Li S, Ammon S, et al. : Same incidence of adverse drug events after codeine administration irrespective of the genetically determined differences in morphine formation. Pain. 1998; 76 (1-2): 27–33. PubMed Abstract | Publisher Full Text 63. Brousseau DC, McCarver DG, Drendel AL, et al. : The effect of CYP2D6 polymorphisms on the response to pain treatment for pediatric sickle cell pain crisis. J. Pediatr. 2007; 150 (6): 623–626. PubMed Abstract | Publisher Full Text | Free Full Text 64. Poulsen L, Arendt-Nielsen L, Brøsen K, et al. : The hypoalgesic effect of tramadol in relation to CYP2D6. Clin. Pharmacol. Ther. 1996; 60 (6): 636–644. PubMed Abstract | Publisher Full Text 65. Kirchheiner J, Schmidt H, Tzvetkov M, et al. : Pharmacokinetics of codeine and its metabolite morphine in ultra-rapid metabolizers due to CYP2D6 duplication. Pharmacogenomics J. 2007; 7 (4): 257–265. PubMed Abstract | Publisher Full Text 66. Benyamin R, Trescot AM, Datta S, et al. : Opioid complications and side effects. Pain Physician. 2008; 2s;11 (SPEC. ISS. 2): S105–S120. Publisher Full Text 67. Wake DT, Smith DM, Kazi S, et al. : Pharmacogenomic Clinical Decision Support: A Review, How-to Guide, and Future Vision. Clin. Pharmacol. Ther. 2022; 112 (1): 44–57. PubMed Abstract | Publisher Full Text | Free Full Text Comments on this article Comments (0) Version 1 VERSION 1 PUBLISHED 10 Nov 2025 ADD YOUR COMMENT Comment Author details Author details 1 Obafemi Awolowo University Faculty of Pharmacy, Ife, Osun, 220282, Nigeria 2 Obafemi Awolowo University Teaching Hospital Complex, Ile-Ife, Osun, 220282, Nigeria 3 African Institute of Biomedical Science and Technology, Harare, Harare South, Zimbabwe 4 Obafemi Awolowo University Faculty of Basic Medical Sciences, Ile-Ife, Osun, 220282, Nigeria Babatunde Adeagbo Roles: Conceptualization, Formal Analysis, Investigation, Methodology, Project Administration, Supervision, Validation, Visualization, Writing – Original Draft Preparation, Writing – Review & Editing Olusola Olarewaju Roles: Investigation, Methodology, Validation, Writing – Original Draft Preparation, Writing – Review & Editing Ochuko Orherhe Roles: Formal Analysis, Software, Visualization, Writing – Original Draft Preparation Zedias Chikwambi Roles: Data Curation, Formal Analysis, Methodology, Validation, Visualization, Writing – Original Draft Preparation Adrian Mazhindu Roles: Conceptualization, Methodology, Writing – Original Draft Preparation, Writing – Review & Editing Rahman Bolarinwa Roles: Conceptualization, Investigation, Methodology, Project Administration, Supervision, Writing – Original Draft Preparation, Writing – Review & Editing Oluseye Bolaji Roles: Conceptualization, Project Administration, Supervision, Writing – Original Draft Preparation, Writing – Review & Editing Collen Masimirembwa Roles: Conceptualization, Data Curation, Funding Acquisition, Project Administration, Resources, Supervision, Writing – Original Draft Preparation, Writing – Review & Editing Competing interests No competing interests were disclosed. Grant information Support for this work was provided through grant funding from the Gates Foundation (GF) (Grant Number ID INV-036801) The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript. Article Versions (1) version 1 Published: 10 Nov 2025, 9:101 https://doi.org/10.12688/gatesopenres.16370.1 Copyright © 2025 Adeagbo B et al . This is an open access article distributed under the terms of the Creative Commons Attribution License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Download Export To Sciwheel Bibtex EndNote ProCite Ref. Manager (RIS) Sente metrics Views Downloads Gates Open Research - - PubMed Central info_outline Data from PMC are received and updated monthly. - - Citations open_in_new 0 open_in_new 0 open_in_new SEE MORE DETAILS CITE how to cite this article Adeagbo B, Olarewaju O, Orherhe O et al. CYP2D6 Pharmacogenetics in Nigerian Sickle Cell Disease: Phase 1 of Implementing Pharmacogenomics Testing for Effective Care and Treatment in Africa (iPROTECTA) program . Gates Open Res 2025, 9 :101 ( https://doi.org/10.12688/gatesopenres.16370.1 ) NOTE: If applicable, it is important to ensure the information in square brackets after the title is included in all citations of this article. COPY CITATION DETAILS track receive updates on this article Track an article to receive email alerts on any updates to this article. TRACK THIS ARTICLE Share Open Peer Review Current Reviewer Status: AWAITING PEER REVIEW AWAITING PEER REVIEW ? Key to Reviewer Statuses VIEW HIDE Approved The paper is scientifically sound in its current form and only minor, if any, improvements are suggested Approved with reservations A number of small changes, sometimes more significant revisions are required to address specific details and improve the papers academic merit. Not approved Fundamental flaws in the paper seriously undermine the findings and conclusions Comments on this article Comments (0) Version 1 VERSION 1 PUBLISHED 10 Nov 2025 ADD YOUR COMMENT Comment keyboard_arrow_left keyboard_arrow_right Comments on this article All Comments (0) Add a comment Sign up for content alerts Sign Up You are now signed up to receive this alert Alongside their report, reviewers assign a status to the article: Approved - the paper is scientifically sound in its current form and only minor, if any, improvements are suggested Approved with reservations - A number of small changes, sometimes more significant revisions are required to address specific details and improve the papers academic merit. Not approved - fundamental flaws in the paper seriously undermine the findings and conclusions Adjust parameters to alter display View on desktop for interactive features Includes Interactive Elements View on desktop for interactive features Competing Interests Policy Provide sufficient details of any financial or non-financial competing interests to enable users to assess whether your comments might lead a reasonable person to question your impartiality. Consider the following examples, but note that this is not an exhaustive list: Examples of 'Non-Financial Competing Interests' Within the past 4 years, you have held joint grants, published or collaborated with any of the authors of the selected paper. You have a close personal relationship (e.g. parent, spouse, sibling, or domestic partner) with any of the authors. You are a close professional associate of any of the authors (e.g. scientific mentor, recent student). You work at the same institute as any of the authors. You hope/expect to benefit (e.g. favour or employment) as a result of your submission. You are an Editor for the journal in which the article is published. Examples of 'Financial Competing Interests' You expect to receive, or in the past 4 years have received, any of the following from any commercial organisation that may gain financially from your submission: a salary, fees, funding, reimbursements. You expect to receive, or in the past 4 years have received, shared grant support or other funding with any of the authors. You hold, or are currently applying for, any patents or significant stocks/shares relating to the subject matter of the paper you are commenting on. Stay Updated Sign up for content alerts and receive a weekly or monthly email with all newly published articles Register with Gates Open Research Already registered? Sign in Not now, thanks close PLEASE NOTE If you are an AUTHOR of this article, please check that you signed in with the account associated with this article otherwise we cannot automatically identify your role as an author and your comment will be labelled as a “User Comment”. If you are a REVIEWER of this article, please check that you have signed in with the account associated with this article and then go to your account to submit your report, please do not post your review here. If you do not have access to your original account, please contact us . All commenters must hold a formal affiliation as per our Policies . The information that you give us will be displayed next to your comment. User comments must be in English, comprehensible and relevant to the article under discussion. We reserve the right to remove any comments that we consider to be inappropriate, offensive or otherwise in breach of the User Comment Terms and Conditions . Commenters must not use a comment for personal attacks. When criticisms of the article are based on unpublished data, the data should be made available. I accept the User Comment Terms and Conditions Please confirm that you accept the User Comment Terms and Conditions. Affiliation ✕ refresh Please enter your institution. Note: To add your institution or organisation, start typing the name and then select the correct name from the list. Where applicable, the name will appear in both the original language and in English. Do not paste in the name. If the name does not appear in the drop-down list, we will display the information you have entered. ✕ refresh Country/Region * USA UK Canada China France Germany Afghanistan Aland Islands Albania Algeria American Samoa Andorra Angola Anguilla Antarctica Antigua and Barbuda Argentina Armenia Aruba Australia Austria Azerbaijan Bahamas Bahrain Bangladesh Barbados Belarus Belgium Belize Benin Bermuda Bhutan Bolivia Bosnia and Herzegovina Botswana Bouvet Island Brazil British Indian Ocean Territory British Virgin Islands Brunei Bulgaria Burkina Faso Burundi Cambodia Cameroon Canada Cape Verde Cayman Islands Central African Republic Chad Chile China Christmas Island Cocos (Keeling) Islands Colombia Comoros Congo Cook Islands Costa Rica Cote d'Ivoire Croatia Cuba Cyprus Czech Republic Democratic Republic of the Congo Denmark Djibouti Dominica Dominican Republic Ecuador Egypt El Salvador Equatorial Guinea Eritrea Estonia Ethiopia Falkland Islands Faroe Islands Federated States of Micronesia Fiji Finland France French Guiana French Polynesia French Southern Territories Gabon Georgia Germany Ghana Gibraltar Greece Greenland Grenada Guadeloupe Guam Guatemala Guernsey Guinea Guinea-Bissau Guyana Haiti Heard Island and Mcdonald Islands Holy See (Vatican City State) Honduras Hong Kong Hungary Iceland India Indonesia Iran Iraq Ireland Israel Italy Jamaica Japan Jersey Jordan Kazakhstan Kenya Kiribati Kosovo (Serbia and Montenegro) Kuwait Kyrgyzstan Lao People's Democratic Republic Latvia Lebanon Lesotho Liberia Libya Liechtenstein Lithuania Luxembourg Macao Madagascar Malawi Malaysia Maldives Mali Malta Marshall Islands Martinique Mauritania Mauritius Mayotte Mexico Minor Outlying Islands of the United States Moldova Monaco Mongolia Montenegro Montserrat Morocco Mozambique Myanmar Namibia Nauru Nepal Netherlands Antilles New Caledonia New Zealand Nicaragua Niger Nigeria Niue Norfolk Island North Korea North Macedonia Northern Mariana Islands Norway Oman Pakistan Palau Palestinian Territory Panama Papua New Guinea Paraguay Peru Philippines Pitcairn Poland Portugal Puerto Rico Qatar Reunion Romania Russian Federation Rwanda Saint Helena Saint Kitts and Nevis Saint Lucia Saint Pierre and Miquelon Saint Vincent and the Grenadines Samoa San Marino Sao Tome and Principe Saudi Arabia Senegal Serbia Seychelles Sierra Leone Singapore Slovakia Slovenia Solomon Islands Somalia South Africa South Georgia and the South Sandwich Is South Korea South Sudan Spain Sri Lanka Sudan Suriname Svalbard and Jan Mayen Swaziland Sweden Switzerland Syria Taiwan Tajikistan Tanzania Thailand The Gambia The Netherlands Timor-Leste Togo Tokelau Tonga Trinidad and Tobago Tunisia Turkey Turkmenistan Turks and Caicos Islands Tuvalu UK USA Uganda Ukraine United Arab Emirates United States Virgin Islands Uruguay Uzbekistan Vanuatu Venezuela Vietnam Wallis and Futuna West Bank and Gaza Strip Western Sahara Yemen Zambia Zimbabwe Please select your country/region. You must enter a comment. Competing Interests Please disclose any competing interests that might be construed to influence your judgment of the article's or peer review report's validity or importance. Competing Interests Policy Provide sufficient details of any financial or non-financial competing interests to enable users to assess whether your comments might lead a reasonable person to question your impartiality. Consider the following examples, but note that this is not an exhaustive list: Examples of 'Non-Financial Competing Interests' Within the past 4 years, you have held joint grants, published or collaborated with any of the authors of the selected paper. You have a close personal relationship (e.g. parent, spouse, sibling, or domestic partner) with any of the authors. You are a close professional associate of any of the authors (e.g. scientific mentor, recent student). You work at the same institute as any of the authors. You hope/expect to benefit (e.g. favour or employment) as a result of your submission. You are an Editor for the journal in which the article is published. Examples of 'Financial Competing Interests' You expect to receive, or in the past 4 years have received, any of the following from any commercial organisation that may gain financially from your submission: a salary, fees, funding, reimbursements. You expect to receive, or in the past 4 years have received, shared grant support or other funding with any of the authors. You hold, or are currently applying for, any patents or significant stocks/shares relating to the subject matter of the paper you are commenting on. Please state your competing interests The comment has been saved. An error has occurred. Please try again. Cancel Post var lTitle = "CYP2D6 Pharmacogenetics in Nigerian Sickle...".replace("'", ''); var linkedInUrl = "http://www.linkedin.com/shareArticle?url=https://gatesopenresearch.org/articles/9-101/v1" + "&title=" + encodeURIComponent(lTitle) + "&summary=" + encodeURIComponent('Read the article by '); var deliciousUrl = "https://del.icio.us/post?url=https://gatesopenresearch.org/articles/9-101/v1&title=" + encodeURIComponent(lTitle); var redditUrl = "http://reddit.com/submit?url=https://gatesopenresearch.org/articles/9-101/v1" + "&title=" + encodeURIComponent(lTitle); linkedInUrl += encodeURIComponent('Adeagbo B et al.'); var offsetTop = /chrome/i.test( navigator.userAgent ) ? 4 : -10; var addthis_config = { ui_offset_top: offsetTop, services_compact : "facebook,twitter,www.linkedin.com,www.mendeley.com,reddit.com", services_expanded : "facebook,twitter,www.linkedin.com,www.mendeley.com,reddit.com", services_custom : [ { name: "LinkedIn", url: linkedInUrl, icon:"/img/icon/at_linkedin.svg" }, { name: "Mendeley", url: "http://www.mendeley.com/import/?url=https://gatesopenresearch.org/articles/9-101/v1/mendeley", icon:"/img/icon/at_mendeley.svg" }, { name: "Reddit", url: redditUrl, icon:"/img/icon/at_reddit.svg" }, ] }; var addthis_share = { url: "https://gatesopenresearch.org/articles/9-101", templates : { twitter : "CYP2D6 Pharmacogenetics in Nigerian Sickle Cell Disease: Phase.... Adeagbo B et al., published by " + "Gates Open Research" + ", https://gatesopenresearch.org/articles/9-101/v1" } }; if (typeof(addthis) != "undefined"){ addthis.addEventListener('addthis.ready', checkCount); addthis.addEventListener('addthis.menu.share', checkCount); } $(".f1r-shares-twitter").attr("href", "https://twitter.com/intent/tweet?text=" + addthis_share.templates.twitter); $(".f1r-shares-facebook").attr("href", "https://www.facebook.com/sharer/sharer.php?u=" + addthis_share.url); $(".f1r-shares-linkedin").attr("href", addthis_config.services_custom[0].url); $(".f1r-shares-reddit").attr("href", addthis_config.services_custom[2].url); $(".f1r-shares-mendelay").attr("href", addthis_config.services_custom[1].url); function checkCount(){ setTimeout(function(){ $(".addthis_button_expanded").each(function(){ var count = $(this).text(); if (count !== "" && count != "0") $(this).removeClass("is-hidden"); else $(this).addClass("is-hidden"); }); }, 1000); } close How to cite this report {{reportCitation}} Cancel Copy Citation Details $(function(){R.ui.buttonDropdowns('.dropdown-for-downloads');}); $(function(){R.ui.toolbarDropdowns('.toolbar-dropdown-for-downloads');}); $.get("/articles/acj/16370/17772") new F1000.Clipboard(); new F1000.ThesaurusTermsDisplay("articles", "article", "17772"); $(document).ready(function() { $( "#frame1" ).on('load', function() { var mydiv = $(this).contents().find("div"); var h = mydiv.height(); console.log(h) }); var tooltipLivingFigure = jQuery(".interactive-living-figure-label .icon-more-info"), titleLivingFigure = tooltipLivingFigure.attr("title"); tooltipLivingFigure.simpletip({ fixed: true, position: ["-115", "30"], baseClass: 'small-tooltip', content:titleLivingFigure + " " }); tooltipLivingFigure.removeAttr("title"); $("body").on("click", ".cite-living-figure", function(e) { e.preventDefault(); var ref = $(this).attr("data-ref"); $(this).closest(".living-figure-list-container").find("#" + ref).fadeIn(200); }); $("body").on("click", ".close-cite-living-figure", function(e) { e.preventDefault(); $(this).closest(".popup-window-wrapper").fadeOut(200); }); $(document).on("mouseup", function(e) { var metricsContainer = $(".article-metrics-popover-wrapper"); if (!metricsContainer.is(e.target) && metricsContainer.has(e.target).length === 0) { $(".article-metrics-close-button").click(); } }); var articleId = $('#articleId').val(); if($("#main-article-count-box").attachArticleMetrics) { $("#main-article-count-box").attachArticleMetrics(articleId, { articleMetricsView: true }); } }); var figshareWidget = $(".new_figshare_widget"); if (figshareWidget.length > 0) { window.figshare.load("f1000", function(Widget) { // Select a tag/tags defined in your page. In this tag we will place the widget. _.map(figshareWidget, function(el){ var widget = new Widget({ articleId: $(el).attr("figshare_articleId") //height:300 // this is the height of the viewer part. [Default: 550] }); widget.initialize(); // initialize the widget widget.mount(el); // mount it in a tag that's on your page // this will save the widget on the global scope for later use from // your JS scripts. This line is optional. //window.widget = widget; }); }); } close Error Close Add Reset F1000.MICROSERVICES.AFFILIATION = ''; $(document).ready(function () { $('.js-affiliations-form').each((index, form) => { new AffiliationForm({ formId: form.id, institutionErrorSelector: '.comment-enter-institution', departmentErrorSelector: '.comment-enter-department', placeSelector: '.js-add-comment-place', stateSelector: '.js-add-comment-state', zipCodeSelector: '.js-add-comment-zipcode', countrySelector: '.js-add-comment-country', countryErrorSelector: '.comment-enter-country', }); }); }); $(document).ready(function () { var reportIds = { }; $(".referee-response-container,.js-referee-report").each(function(index, el) { var reportId = $(el).attr("data-reportid"), reportCount = reportIds[reportId] || 0; $(el).find(".comments-count-container,.js-referee-report-views").html(reportCount); }); var uuidInput = $("#article_uuid"), oldUUId = uuidInput.val(), newUUId = "ad6ba721-715d-46a5-baad-7ef83ca40eef"; uuidInput.val(newUUId); $("a[href*='article_uuid=']").each(function(index, el) { var newHref = $(el).attr("href").replace(oldUUId, newUUId); $(el).attr("href", newHref); }); }); Are you a Gates-funded researcher? If you are a previous or current Gates grant holder, sign up for information about developments, publishing and publications from Gates Open Research. First Name * You must provide your first name Last Name * You must provide your last name Email * You must provide a valid email address Institution You must provide an institution. Submit Thank you! We'll keep you updated on any major new updates to Gates Open Research Gates Open Research Browse Gateways How to Publish About Contact Legal For Developers Cookie Notice Privacy Notice RSS Submit via VeriXiv © F1000 Research Limited and its licensors ISSN 2572-4754 var F1000platform = new F1000.Platform({ name: "gates", displayName: "Gates Open Research", hostName: "gatesopenresearch.org", id: "3", editorialEmail: "[email protected]", infoEmail: "[email protected]", usePmcStats: true }); Sign In Remember me Forgotten your password? Sign In Cancel Email or password not correct. Please try again Please wait... $(function(){ // Note: All the setup needs to run against a name attribute and *not* the id due the clonish // nature of facebox... $("a[id=googleSignInButton]").click(function(event){ event.preventDefault(); $("input[id=oAuthSystem]").val("GOOGLE"); $("form[id=oAuthForm]").submit(); }); $("a[id=facebookSignInButton]").click(function(event){ event.preventDefault(); $("input[id=oAuthSystem]").val("FACEBOOK"); $("form[id=oAuthForm]").submit(); }); $("a[id=orcidSignInButton]").click(function(event){ event.preventDefault(); $("input[id=oAuthSystem]").val("ORCID"); $("form[id=oAuthForm]").submit(); }); }); If you've forgotten your password, please enter your email address below and we'll send you instructions on how to reset your password. The email address should be the one you originally registered with F1000. Email address not valid, please try again You registered with F1000 via Google, so we cannot reset your password. To sign in, please click here . If you still need help with your Google account password, please click here . You registered with F1000 via Facebook, so we cannot reset your password. To sign in, please click here . If you still need help with your Facebook account password, please click here . Code not correct, please try again Reset password Cancel Email us for further assistance. Server error, please try again. If your email address is registered with us, we will email you instructions to reset your password. If you think you should have received this email but it has not arrived, please check your spam filters and/or contact for further assistance. Please wait... Register $(document).ready(function () { signIn.createSignInAsRow($("#sign-in-form-gfb-popup")); $(".target-field").each(function () { var uris = $(this).val().split("/"); if (uris.pop() === "login") { $(this).val(uris.toString().replace(",","/")); } }); });

Text is read by the "Ask this paper" AI Q&A widget below. Extraction quality varies by source — PMC NXML preserves structure cleanly, OA-HTML may include some navigation residue, and OA-PDF can have broken hyphenation. The publisher copy (via DOI) is the canonical version.

My notes (saved in your browser only)

Ask this paper AI returns verbatim quotes from the full text · source: preprint-html

Answers must be backed by verbatim quotes from this paper's full text. Hallucinated quotes are dropped automatically; if no verbatim passage answers the question, we say so. How this works

Citation neighborhood (no data yet)

We don't have any in-corpus citations linked to this paper yet. This is a recent paper (2025) — citers typically take a year or two to land, and the OpenAlex reference graph may still be filling in.

Source provenance

europepmc
last seen: 2026-05-20T01:45:00.602351+00:00