Fertility Tests for Women: A Comprehensive Overview (2025)

If you and your partner have been unsuccessfully trying to get pregnant, you may want to seek expert advice.

5 min read

Fertility Tests for Women: A Comprehensive Overview (1)

Updated November 05, 2020

Updated November 05, 2020

Fertility Tests for Women: A Comprehensive Overview (2)

Reviewed by Tanya Tantry, MD, Obstetrician & Gynecologist, Medical Consultant at Flo

Flo Fact-Checking Standards

Every piece of content at Flo Health adheres to the highest editorial standards for language, style, and medical accuracy. To learn what we do to deliver the best health and lifestyle insights to you, check out our content review principles.

When should you consider female fertility testing?

Most women who have trouble becoming pregnant do go on to enjoy a normal pregnancy and deliver a healthy baby. A fertility specialist will be able to tell you about lifestyle factors and underlying conditions that may be affecting your ability to conceive.

Here’s a rule of thumb to keep in mind: most couples will conceive a child within a year of regular sex without contraception. If you’re under the age of 35 and you’ve been trying unsuccessfully for this long, it’s time to consult a doctor (but do so after six months if you’re over 35).

How to test female fertility: types of tests

1. Cervical test

If you’re having trouble getting pregnant, your doctor may suggest a cervical screening test (sometimes called a Pap smear). These tests check for cervical cancer and other problems with the cervix that can interfere with fertility.

During a cervical test, your doctor will use a small, soft brush to take a sample of cells from the surface of your cervix. The procedure can be uncomfortable, but isn’t painful. The sample is then sent to a laboratory for analysis. The results will be available through your clinic shortly afterwards. Also, you may discuss STD testing with your doctor.

2. Ovulation test

Some women have trouble getting pregnant because of problems with ovulation. This can be assessed using ovulation testing kits that are commonly available in clinics and drugstores.

An ovulation test can safely and accurately be done at home. These kits work by testing your urine for the presence of luteinizing hormone, which rises in concentration in the 24–36 hours before ovulation. Some of them also detect an estrogen increase before ovulation.

3. Ultrasound test

This is sometimes called a transvaginal ultrasound and involves your doctor inserting a wand-like ultrasound device into your vagina. With this device, they’ll be able to review highly detailed images of your uterus and ovaries to check for any abnormalities. Ultrasound imaging uses sound waves that are completely harmless.

4. Hormone blood test

A number of hormones can have an impact upon a woman’s fertility. For instance, a blood test for progesterone may be helpful in cases of reduced fertility. Doctors use this test to determine if you have normal levels of circulating progesterone, indicating that ovulation is taking place.

Similarly, your blood can also be tested for follicle-stimulating hormone (FSH), which prepares an egg to be released from your ovaries. Women with fertility problems sometimes have excessively high levels of FSH.

Your doctor may also suggest testing for the hormone prolactin if you’re having trouble conceiving. Prolactin is mainly produced in the pituitary gland, and its high levels can block ovulation. A benign pituitary tumor, or a prolactinoma, can cause high levels of prolactin in the blood (hyperprolactinemia). Thyroid problems and some drugs that reduce dopamine levels can also cause hyperprolactinemia.

Fertility Tests for Women: A Comprehensive Overview (3)

5. Hysterosalpingogram

The health of your uterus, ovaries, and fallopian tubes is an important factor when trying to get pregnant. Your doctor can offer you a number of ways to check for problems in your reproductive system. A hysterosalpingogram (HSG) is sometimes known as a “tubogram” because it allows the doctor to examine the condition of your fallopian tubes.

The HSG can check for blockage of the fallopian tubes or defects of the uterus that can affect fertility. Your doctor will typically perform the tubogram immediately after your period. They will take a series of X-rays of your reproductive system after injecting a harmless dye into your vagina. Sometimes the doctor might use saltwater and air in an HSG instead of a dye, and an ultrasound instead of X-rays.

6. Hysteroscopy

A hysteroscope is a thin, flexible tube with a camera at one end. To perform a hysteroscopy, your doctor will pass this tube through the cervix and into the uterus. The doctor can then visualize the structure of your reproductive system and take tissue samples to check for any signs of abnormalities.

7. Laparoscopy

If you and your doctor decide that a laparoscopy is necessary, they will make small incisions in your belly through which a camera and other investigative tools can be inserted.

This procedure allows a comprehensive examination of the entire pelvis and can treat conditions like endometriosis (a disease in which the uterus’s inner lining, called endometrium, grows outside the uterus).

Other types of tests

In addition to the above tests, a number of other assessments can indicate why you may be having trouble conceiving:

  • For many women, monitoring their body temperature is a straightforward way to check if they’re ovulating. Shortly after ovulation, a rise in progesterone will cause your body temperature to increase. By taking a measurement of your temperature when you first wake up, you can indirectly tell if you’re ovulating.
  • Thyroid disorders and a number of other conditions can cause irregular or absent ovulation. Your doctor will be able to suggest appropriate tests if they believe that such a condition may be affecting your ability to conceive.

How to choose the most suitable test for you

As you can see, there is a wide range of tests available to get to the bottom of fertility problems. You will not need to undergo all of these tests. Your doctor will advise you about which tests will be most helpful in your specific circumstances.

Fertility testing can be stressful for many couples, but a thorough investigation will usually reveal the cause of any difficulty conceiving.

Get started with Flo today, for free
Try Flo today, for free

Take a quiz

Find out what you can do with our Health Assistant

Track my period
Get pregnant
Follow my baby's growth

Fertility Tests for Women: A Comprehensive Overview (7) Fertility Tests for Women: A Comprehensive Overview (8)

Hey, I'm Anique

I started using Flo app to track my period and ovulation because we wanted to have a baby.

Fertility Tests for Women: A Comprehensive Overview (9) Fertility Tests for Women: A Comprehensive Overview (10)

The Flo app helped me learn about my body and spot ovulation signs during our conception journey.

Fertility Tests for Women: A Comprehensive Overview (11) Fertility Tests for Women: A Comprehensive Overview (12)

I vividly remember the day
that we switched Flo into
Pregnancy Mode — it was
such a special moment.

Fertility Tests for Women: A Comprehensive Overview (13) Fertility Tests for Women: A Comprehensive Overview (14)

Join Anique and explore
ways to increase
pregnancy chances
with the Flo app

Try Flo today

Fertility Tests for Women: A Comprehensive Overview (15)

Real stories, real results

Learn how the Flo app became an amazing cheerleader for us on our conception journey.

Anique

Anique is a real Flo member and was compensated for her time. Her experiences and opinions are her own.

History of updates

Current version (05 November 2020)

Reviewed by Tanya Tantry, MD, Obstetrician & Gynecologist, Medical Consultant at Flo

Published (05 March 2019)

In this article

    Related articles

    Fertility problems Why am I not getting pregnant? Common reasons to consider
    Fertility problems What causes infertility in women? All your questions answered
    Fertility problems Fallopian tube problems: blockage, salpingitis, hydrosalpinx
    Trouble conceiving Rainbow baby meaning: What is it, and what does it mean to parents?

    Download Flo today

    Fertility Tests for Women: A Comprehensive Overview (16) Fertility Tests for Women: A Comprehensive Overview (17)

    Try Flo today

    Try the Flo app now, for free

    Understand what your symptoms might mean — and what's normal for you — by tracking your cycle.

    Fertility Tests for Women: A Comprehensive Overview (18) Fertility Tests for Women: A Comprehensive Overview (19)

    Fertility Tests for Women: A Comprehensive Overview (20)

    Try the Flo app now, for free

    Follow your baby's growth and see how your body is changing.

    Fertility Tests for Women: A Comprehensive Overview (21) Fertility Tests for Women: A Comprehensive Overview (22)

    Fertility Tests for Women: A Comprehensive Overview (23)

    Try the Flo app now, for free

    Know when you're most fertile to maximize your chances of getting pregnant.

    Fertility Tests for Women: A Comprehensive Overview (24) Fertility Tests for Women: A Comprehensive Overview (25)

    Fertility Tests for Women: A Comprehensive Overview (26)

    "),e}}};r(4346);var P=r(7232);function I(t){return function(t){if(Array.isArray(t))return C(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return C(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?C(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function C(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r

    0&&void 0!==arguments[0]?arguments[0]:-114,e=window.pageYOffset;function r(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=window.pageYOffset;s(e<=n?t:r),(e=n)<=0&&(e=1)}window.addEventListener("scroll",(function(){var e=document.querySelector(".flo-header__contents--hide");null!=i&&i.classList.contains("active")||(window.matchMedia("(max-width: 759px)").matches?r(e?t+60:t,0):r())}))}e&&(n&&o&&[e.querySelectorAll("a"),o.querySelectorAll("a")].forEach((function(t){var e=function(e){return I(t).find((function(t){return t.getAttribute("device")===e}))},r=e("android"===a||"ios"===a?a:"general");null==r||r.classList.remove("hide")})),window.addEventListener("scroll",(function(){var t=document.querySelector(".flo-footer")?document.querySelector(".flo-footer").offsetHeight:0,r=document.documentElement.scrollHeight-document.documentElement.clientHeight-t,n=document.querySelector(".flo-article-header")?document.querySelector(".flo-article-header").offsetHeight:160;window.scrollY>=n/1.6&&e.classList.add("active"),window.scrollY>r&&e.classList.remove("active")})),r&&(window.matchMedia("(max-width: 759px)").matches&&c(),window.addEventListener("resize",(function(){window.matchMedia("(max-width: 759px)").matches?c():c(0)}))))}};const R=N;const D={init:function(){var t=document.querySelector(".flo-popups"),e=(document.documentElement.scrollHeight,0);function r(t){if(0!==e)return!1;window.scrollY>t&&window.scrollTo(0,t)}t&&(function(){var n=t.getAttribute("displayprinciple"),o=Boolean(t.getAttribute("blockscroll"));if("scroll"===n)window.addEventListener("scroll",(function(){if(0===e){var n=(document.documentElement.scrollHeight-document.documentElement.clientHeight)/100*(t.getAttribute("percentscroll")?t.getAttribute("percentscroll"):40);window.scrollY>=n&&(t.classList.add("active"),o&&r(n))}}));else if("timing"===n){var i=t.getAttribute("timingpause")?1e3*t.getAttribute("timingpause"):15e3;setTimeout((function(){if(t.classList.add("active"),o){var e=window.scrollY;window.addEventListener("scroll",(function(){r(e)}))}}),i)}}(),document.querySelector(".flo-popups__close").addEventListener("click",(function(){t.classList.remove("active"),e++})))}};r(5086);var q={init:function(){var t,e=document.querySelector(".flo-content"),r=null!==(t=document.querySelector(".flo-content-links__list"))&&void 0!==t?t:document.querySelector(".flo-content__aside-list"),n=document.querySelector(".flo-content-links .flo-preloader"),o=["flo-template__article_v2","flo-template__pregnancy-week","flo-template__dev-page","flo-template__calculator-new"].some((function(t){return document.body.classList.contains(t)})),i=document.querySelector(".flo-content__aside-content"),a=document.querySelector(".flo-header__contents");if(r){var s=o?function(){var t=[];return""!=r.getAttribute("tag-size")&&document.querySelectorAll("".concat(r.getAttribute("tag-size"))).forEach((function(e){var r,n=null!==(r=e.closest(".flo-article-text"))&&void 0!==r?r:e.closest(".flo-narrow-text");n&&"false"==(null==n?void 0:n.getAttribute("hide-header"))&&t.push(e)})),t}():document.querySelectorAll("".concat(r.getAttribute("tag-size")));if(s&&s.length>0){if(i&&(i.style.display="block"),null==n||n.classList.add("flo-preloader__deactive"),s.forEach((function(t){t.offsetTop>r.offsetTop&&(function(t){var e,n=null===(e=t.closest("[real-header]"))||void 0===e?void 0:e.getAttribute("real-header"),i=t.textContent.toLowerCase().replace(/[ @.",\/#!$%\^&\*;:{}=\-_`~()]/g,"-"),s=document.createElement("li"),c=document.createElement("a");if(s.classList.add("flo-content-links__list-item"),c.classList.add("flo-content-links__list-item-link"),c.href="#".concat(i),c.textContent=null!=n?n:t.textContent,c.addEventListener("click",(function(e){var r;e.preventDefault(),o&&f(null===(r=e.target)||void 0===r?void 0:r.closest(".flo-content-links__list-item"),".flo-content-links__list-item"),t.scrollIntoView({behavior:"smooth",block:"center"})})),s.appendChild(c),r.appendChild(s),o){var u=a.querySelector(".flo-header__contents-list > ol"),l=document.createElement("li"),h=document.createElement("a");l.classList.add("flo-header__contents-list-element"),h.href="#".concat(i),h.textContent=null!=n?n:t.textContent,h.addEventListener("click",(function(e){e.preventDefault(),t.scrollIntoView({behavior:"smooth",block:"center"}),setTimeout((function(){a.classList.toggle("active"),document.body.style.overflow=document.body.style.overflow?null:"hidden"}),500)})),l.appendChild(h),u.appendChild(l)}}(t),function(t){t.id=t.textContent.toLowerCase().replace(/[ @.",\/#!$%\^&\*;:{}=\-_`~()]/g,"-")}(t))})),o){var c,u,l=function(t){"click"!==t.type&&"Enter"!==t.key||(a.classList.toggle("active"),document.body.style.overflow=document.body.style.overflow?null:"hidden")};null==a||null===(c=a.querySelector(".flo-header__contents-title"))||void 0===c||c.addEventListener("click",l),null==a||null===(u=a.querySelector(".flo-header__contents-title"))||void 0===u||u.addEventListener("keypress",l)}o&&function(t){var r,n=null==i?void 0:i.clientHeight,o=null===(r=document.querySelector(".flo-content__aside-list"))||void 0===r?void 0:r.clientHeight,s=new IntersectionObserver(c,{rootMargin:window.matchMedia("(max-width:850px)").matches?"-150px":"-400px"});function c(t){t.forEach((function(t){if(t.isIntersecting){var r,s,c=function(t){i.scrollTo({top:t,behavior:"smooth"})},u=null===(r=document.querySelector('a[href="#'.concat(t.target.id,'"].flo-content-links__list-item-link')))||void 0===r?void 0:r.closest(".flo-content-links__list-item"),l=null===(s=document.querySelector('.flo-header__contents-list-element > a[href="#'.concat(t.target.id,'"]')))||void 0===s?void 0:s.closest(".flo-header__contents-list-element"),h=document.querySelector(".flo-header__contents-title > span");u&&f(u,".flo-content-links__list-item"),l&&f(l,".flo-header__contents-list-element"),h&&u&&(h.textContent="".concat(u.textContent)),(null==h?void 0:h.textContent.length)>0&&(e.classList.add("flo-content--header-content-links"),a.classList.remove("flo-header__contents--hide")),o>=n&&(u.offsetTop+u.clientHeight>n-200?c(u.offsetTop/1.4):c(0))}}))}o0&&t.forEach((function(t){if(t.getAttribute("device")){var r,n=null==t||null===(r=t.closest("section"))||void 0===r?void 0:r.querySelectorAll("a");(null==n?void 0:n.length)>1&&t.getAttribute("device")!==e?t.remove():t.classList.remove("hidden")}}))}"android"===H||"ios"===H?t(z,H):t(Y,"other")}});const V={init:function(){var t=document.getElementById("new-pop-up"),e=null==t?void 0:t.querySelector(".flo-pop-up-window__close-icon");null==e||e.addEventListener("click",(function(){t.style.display="none"}))}};r(5700),r(2008),r(1688),r(9572),r(7945),r(3851),r(1278),r(9432),r(9391),r(4520),r(8431),r(3215);const W=Object.prototype.toString;function J(t,e){return W.call(t)===`[object ${e}]`}function K(t){return J(t,"Object")}function X(t){return Boolean(t&&t.then&&"function"==typeof t.then)}function Z(t){return t&&t.Math==Math?t:void 0}const Q="object"==typeof globalThis&&Z(globalThis)||"object"==typeof window&&Z(window)||"object"==typeof self&&Z(self)||"object"==typeof r.g&&Z(r.g)||function(){return this}()||{};function tt(t,e,r){const n=r||Q,o=n.__SENTRY__=n.__SENTRY__||{};return o[t]||(o[t]=e())}function et(){const t=Q,e=t.crypto||t.msCrypto;let r=()=>16*Math.random();try{if(e&&e.randomUUID)return e.randomUUID().replace(/-/g,"");e&&e.getRandomValues&&(r=()=>{const t=new Uint8Array(1);return e.getRandomValues(t),t[0]})}catch(t){}return([1e7]+1e3+4e3+8e3+1e11).replace(/[018]/g,(t=>(t^(15&r())>>t/4).toString(16)))}function rt(){return Date.now()/1e3}const nt=function(){const{performance:t}=Q;if(!t||!t.now)return rt;const e=Date.now()-t.now(),r=null==t.timeOrigin?e:t.timeOrigin;return()=>(r+t.now())/1e3}();let ot;(()=>{const{performance:t}=Q;if(!t||!t.now)return void(ot="none");const e=36e5,r=t.now(),n=Date.now(),o=t.timeOrigin?Math.abs(t.timeOrigin+r-n):e,i=o{const n=st[t];r[t]=e[t],e[t]=n}));try{return t()}finally{n.forEach((t=>{e[t]=r[t]}))}}const ut=function(){let t=!1;const e={enable:()=>{t=!0},disable:()=>{t=!1},isEnabled:()=>t};return it?at.forEach((r=>{e[r]=(...e)=>{t&&ct((()=>{Q.console[r](`Sentry Logger [${r}]:`,...e)}))}})):at.forEach((t=>{e[t]=()=>{}})),e}(),lt="production",ft="undefined"==typeof __SENTRY_DEBUG__||__SENTRY_DEBUG__;var ht;!function(t){t[t.PENDING=0]="PENDING";t[t.RESOLVED=1]="RESOLVED";t[t.REJECTED=2]="REJECTED"}(ht||(ht={}));class dt{constructor(t){dt.prototype.__init.call(this),dt.prototype.__init2.call(this),dt.prototype.__init3.call(this),dt.prototype.__init4.call(this),this._state=ht.PENDING,this._handlers=[];try{t(this._resolve,this._reject)}catch(t){this._reject(t)}}then(t,e){return new dt(((r,n)=>{this._handlers.push([!1,e=>{if(t)try{r(t(e))}catch(t){n(t)}else r(e)},t=>{if(e)try{r(e(t))}catch(t){n(t)}else n(t)}]),this._executeHandlers()}))}catch(t){return this.then((t=>t),t)}finally(t){return new dt(((e,r)=>{let n,o;return this.then((e=>{o=!1,n=e,t&&t()}),(e=>{o=!0,n=e,t&&t()})).then((()=>{o?r(n):e(n)}))}))}__init(){this._resolve=t=>{this._setResult(ht.RESOLVED,t)}}__init2(){this._reject=t=>{this._setResult(ht.REJECTED,t)}}__init3(){this._setResult=(t,e)=>{this._state===ht.PENDING&&(X(e)?e.then(this._resolve,this._reject):(this._state=t,this._value=e,this._executeHandlers()))}}__init4(){this._executeHandlers=()=>{if(this._state===ht.PENDING)return;const t=this._handlers.slice();this._handlers=[],t.forEach((t=>{t[0]||(this._state===ht.RESOLVED&&t[1](this._value),this._state===ht.REJECTED&&t[2](this._value),t[0]=!0)}))}}}function pt(){return tt("globalEventProcessors",(()=>[]))}function vt(t,e,r,n=0){return new dt(((o,i)=>{const a=t[n];if(null===e||"function"!=typeof a)o(e);else{const s=a({...e},r);ft&&a.id&&null===s&&ut.log(`Event processor "${a.id}" dropped event`),X(s)?s.then((e=>vt(t,e,r,n+1).then(o))).then(null,i):vt(t,s,r,n+1).then(o).then(null,i)}}))}function gt(t){return yt(t,new Map)}function yt(t,e){if(function(t){if(!K(t))return!1;try{const e=Object.getPrototypeOf(t).constructor.name;return!e||"Object"===e}catch(t){return!0}}(t)){const r=e.get(t);if(void 0!==r)return r;const n={};e.set(t,n);for(const r of Object.keys(t))void 0!==t[r]&&(n[r]=yt(t[r],e));return n}if(Array.isArray(t)){const r=e.get(t);if(void 0!==r)return r;const n=[];return e.set(t,n),t.forEach((t=>{n.push(yt(t,e))})),n}return t}function mt(t){const e=nt(),r={sid:et(),init:!0,timestamp:e,started:e,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>function(t){return gt({sid:`${t.sid}`,init:t.init,started:new Date(1e3*t.started).toISOString(),timestamp:new Date(1e3*t.timestamp).toISOString(),status:t.status,errors:t.errors,did:"number"==typeof t.did||"string"==typeof t.did?`${t.did}`:void 0,duration:t.duration,abnormal_mechanism:t.abnormal_mechanism,attrs:{release:t.release,environment:t.environment,ip_address:t.ipAddress,user_agent:t.userAgent}})}(r)};return t&&bt(r,t),r}function bt(t,e={}){if(e.user&&(!t.ipAddress&&e.user.ip_address&&(t.ipAddress=e.user.ip_address),t.did||e.did||(t.did=e.user.id||e.user.email||e.user.username)),t.timestamp=e.timestamp||nt(),e.abnormal_mechanism&&(t.abnormal_mechanism=e.abnormal_mechanism),e.ignoreDuration&&(t.ignoreDuration=e.ignoreDuration),e.sid&&(t.sid=32===e.sid.length?e.sid:et()),void 0!==e.init&&(t.init=e.init),!t.did&&e.did&&(t.did=`${e.did}`),"number"==typeof e.started&&(t.started=e.started),t.ignoreDuration)t.duration=void 0;else if("number"==typeof e.duration)t.duration=e.duration;else{const e=t.timestamp-t.started;t.duration=e>=0?e:0}e.release&&(t.release=e.release),e.environment&&(t.environment=e.environment),!t.ipAddress&&e.ipAddress&&(t.ipAddress=e.ipAddress),!t.userAgent&&e.userAgent&&(t.userAgent=e.userAgent),"number"==typeof e.errors&&(t.errors=e.errors),e.status&&(t.status=e.status)}function wt(t){return t.transaction}function xt(t){const{spanId:e,traceId:r}=t.spanContext(),{data:n,op:o,parent_span_id:i,status:a,tags:s,origin:c}=_t(t);return gt({data:n,op:o,parent_span_id:i,span_id:e,status:a,tags:s,trace_id:r,origin:c})}function _t(t){return function(t){return"function"==typeof t.getSpanJSON}(t)?t.getSpanJSON():"function"==typeof t.toJSON?t.toJSON():{}}function St(t){const{traceFlags:e}=t.spanContext();return Boolean(1&e)}function Et(t){const e=Ft();if(!e)return{};const r=function(t,e,r){const n=e.getOptions(),{publicKey:o}=e.getDsn()||{},{segment:i}=r&&r.getUser()||{},a=gt({environment:n.environment||lt,release:n.release,user_segment:i,public_key:o,trace_id:t});return e.emit&&e.emit("createDsc",a),a}(_t(t).trace_id||"",e,Gt()),n=wt(t);if(!n)return r;const o=n&&n._frozenDynamicSamplingContext;if(o)return o;const{sampleRate:i,source:a}=n.metadata;null!=i&&(r.sample_rate=`${i}`);const s=_t(n);return a&&"url"!==a&&(r.transaction=s.description),r.sampled=String(St(n)),e.emit&&e.emit("createDsc",r),r}function kt(t,e){const{fingerprint:r,span:n,breadcrumbs:o,sdkProcessingMetadata:i}=e;!function(t,e){const{extra:r,tags:n,user:o,contexts:i,level:a,transactionName:s}=e,c=gt(r);c&&Object.keys(c).length&&(t.extra={...c,...t.extra});const u=gt(n);u&&Object.keys(u).length&&(t.tags={...u,...t.tags});const l=gt(o);l&&Object.keys(l).length&&(t.user={...l,...t.user});const f=gt(i);f&&Object.keys(f).length&&(t.contexts={...f,...t.contexts});a&&(t.level=a);s&&(t.transaction=s)}(t,e),n&&function(t,e){t.contexts={trace:xt(e),...t.contexts};const r=wt(e);if(r){t.sdkProcessingMetadata={dynamicSamplingContext:Et(e),...t.sdkProcessingMetadata};const n=_t(r).description;n&&(t.tags={transaction:n,...t.tags})}}(t,n),function(t,e){t.fingerprint=t.fingerprint?function(t){return Array.isArray(t)?t:[t]}(t.fingerprint):[],e&&(t.fingerprint=t.fingerprint.concat(e));t.fingerprint&&!t.fingerprint.length&&delete t.fingerprint}(t,r),function(t,e){const r=[...t.breadcrumbs||[],...e];t.breadcrumbs=r.length?r:void 0}(t,o),function(t,e){t.sdkProcessingMetadata={...t.sdkProcessingMetadata,...e}}(t,i)}class Ot{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext=Tt()}static clone(t){return t?t.clone():new Ot}clone(){const t=new Ot;return t._breadcrumbs=[...this._breadcrumbs],t._tags={...this._tags},t._extra={...this._extra},t._contexts={...this._contexts},t._user=this._user,t._level=this._level,t._span=this._span,t._session=this._session,t._transactionName=this._transactionName,t._fingerprint=this._fingerprint,t._eventProcessors=[...this._eventProcessors],t._requestSession=this._requestSession,t._attachments=[...this._attachments],t._sdkProcessingMetadata={...this._sdkProcessingMetadata},t._propagationContext={...this._propagationContext},t._client=this._client,t}setClient(t){this._client=t}getClient(){return this._client}addScopeListener(t){this._scopeListeners.push(t)}addEventProcessor(t){return this._eventProcessors.push(t),this}setUser(t){return this._user=t||{email:void 0,id:void 0,ip_address:void 0,segment:void 0,username:void 0},this._session&&bt(this._session,{user:t}),this._notifyScopeListeners(),this}getUser(){return this._user}getRequestSession(){return this._requestSession}setRequestSession(t){return this._requestSession=t,this}setTags(t){return this._tags={...this._tags,...t},this._notifyScopeListeners(),this}setTag(t,e){return this._tags={...this._tags,[t]:e},this._notifyScopeListeners(),this}setExtras(t){return this._extra={...this._extra,...t},this._notifyScopeListeners(),this}setExtra(t,e){return this._extra={...this._extra,[t]:e},this._notifyScopeListeners(),this}setFingerprint(t){return this._fingerprint=t,this._notifyScopeListeners(),this}setLevel(t){return this._level=t,this._notifyScopeListeners(),this}setTransactionName(t){return this._transactionName=t,this._notifyScopeListeners(),this}setContext(t,e){return null===e?delete this._contexts[t]:this._contexts[t]=e,this._notifyScopeListeners(),this}setSpan(t){return this._span=t,this._notifyScopeListeners(),this}getSpan(){return this._span}getTransaction(){const t=this._span;return t&&t.transaction}setSession(t){return t?this._session=t:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(t){if(!t)return this;const e="function"==typeof t?t(this):t;if(e instanceof Ot){const t=e.getScopeData();this._tags={...this._tags,...t.tags},this._extra={...this._extra,...t.extra},this._contexts={...this._contexts,...t.contexts},t.user&&Object.keys(t.user).length&&(this._user=t.user),t.level&&(this._level=t.level),t.fingerprint.length&&(this._fingerprint=t.fingerprint),e.getRequestSession()&&(this._requestSession=e.getRequestSession()),t.propagationContext&&(this._propagationContext=t.propagationContext)}else if(K(e)){const e=t;this._tags={...this._tags,...e.tags},this._extra={...this._extra,...e.extra},this._contexts={...this._contexts,...e.contexts},e.user&&(this._user=e.user),e.level&&(this._level=e.level),e.fingerprint&&(this._fingerprint=e.fingerprint),e.requestSession&&(this._requestSession=e.requestSession),e.propagationContext&&(this._propagationContext=e.propagationContext)}return this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._requestSession=void 0,this._span=void 0,this._session=void 0,this._notifyScopeListeners(),this._attachments=[],this._propagationContext=Tt(),this}addBreadcrumb(t,e){const r="number"==typeof e?e:100;if(r<=0)return this;const n={timestamp:rt(),...t},o=this._breadcrumbs;return o.push(n),this._breadcrumbs=o.length>r?o.slice(-r):o,this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(t){return this._attachments.push(t),this}getAttachments(){return this.getScopeData().attachments}clearAttachments(){return this._attachments=[],this}getScopeData(){const{_breadcrumbs:t,_attachments:e,_contexts:r,_tags:n,_extra:o,_user:i,_level:a,_fingerprint:s,_eventProcessors:c,_propagationContext:u,_sdkProcessingMetadata:l,_transactionName:f,_span:h}=this;return{breadcrumbs:t,attachments:e,contexts:r,tags:n,extra:o,user:i,level:a,fingerprint:s||[],eventProcessors:c,propagationContext:u,sdkProcessingMetadata:l,transactionName:f,span:h}}applyToEvent(t,e={},r=[]){kt(t,this.getScopeData());return vt([...r,...pt(),...this._eventProcessors],t,e)}setSDKProcessingMetadata(t){return this._sdkProcessingMetadata={...this._sdkProcessingMetadata,...t},this}setPropagationContext(t){return this._propagationContext=t,this}getPropagationContext(){return this._propagationContext}captureException(t,e){const r=e&&e.event_id?e.event_id:et();if(!this._client)return ut.warn("No client configured on scope - will not capture exception!"),r;const n=new Error("Sentry syntheticException");return this._client.captureException(t,{originalException:t,syntheticException:n,...e,event_id:r},this),r}captureMessage(t,e,r){const n=r&&r.event_id?r.event_id:et();if(!this._client)return ut.warn("No client configured on scope - will not capture message!"),n;const o=new Error(t);return this._client.captureMessage(t,e,{originalException:t,syntheticException:o,...r,event_id:n},this),n}captureEvent(t,e){const r=e&&e.event_id?e.event_id:et();return this._client?(this._client.captureEvent(t,{...e,event_id:r},this),r):(ut.warn("No client configured on scope - will not capture event!"),r)}_notifyScopeListeners(){this._notifyingListeners||(this._notifyingListeners=!0,this._scopeListeners.forEach((t=>{t(this)})),this._notifyingListeners=!1)}}function Tt(){return{traceId:et(),spanId:et().substring(16)}}const jt=parseFloat("7.120.3"),At=100;class Lt{constructor(t,e,r,n=jt){let o,i;this._version=n,e?o=e:(o=new Ot,o.setClient(t)),r?i=r:(i=new Ot,i.setClient(t)),this._stack=[{scope:o}],t&&this.bindClient(t),this._isolationScope=i}isOlderThan(t){return this._version(this.popScope(),t)),(t=>{throw this.popScope(),t})):(this.popScope(),r)}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStack(){return this._stack}getStackTop(){return this._stack[this._stack.length-1]}captureException(t,e){const r=this._lastEventId=e&&e.event_id?e.event_id:et(),n=new Error("Sentry syntheticException");return this.getScope().captureException(t,{originalException:t,syntheticException:n,...e,event_id:r}),r}captureMessage(t,e,r){const n=this._lastEventId=r&&r.event_id?r.event_id:et(),o=new Error(t);return this.getScope().captureMessage(t,e,{originalException:t,syntheticException:o,...r,event_id:n}),n}captureEvent(t,e){const r=e&&e.event_id?e.event_id:et();return t.type||(this._lastEventId=r),this.getScope().captureEvent(t,{...e,event_id:r}),r}lastEventId(){return this._lastEventId}addBreadcrumb(t,e){const{scope:r,client:n}=this.getStackTop();if(!n)return;const{beforeBreadcrumb:o=null,maxBreadcrumbs:i=At}=n.getOptions&&n.getOptions()||{};if(i<=0)return;const a={timestamp:rt(),...t},s=o?ct((()=>o(a,e))):a;null!==s&&(n.emit&&n.emit("beforeAddBreadcrumb",s,e),r.addBreadcrumb(s,i))}setUser(t){this.getScope().setUser(t),this.getIsolationScope().setUser(t)}setTags(t){this.getScope().setTags(t),this.getIsolationScope().setTags(t)}setExtras(t){this.getScope().setExtras(t),this.getIsolationScope().setExtras(t)}setTag(t,e){this.getScope().setTag(t,e),this.getIsolationScope().setTag(t,e)}setExtra(t,e){this.getScope().setExtra(t,e),this.getIsolationScope().setExtra(t,e)}setContext(t,e){this.getScope().setContext(t,e),this.getIsolationScope().setContext(t,e)}configureScope(t){const{scope:e,client:r}=this.getStackTop();r&&t(e)}run(t){const e=It(this);try{t(this)}finally{It(e)}}getIntegration(t){const e=this.getClient();if(!e)return null;try{return e.getIntegration(t)}catch(e){return ft&&ut.warn(`Cannot retrieve integration ${t.id} from the current Hub`),null}}startTransaction(t,e){const r=this._callExtensionMethod("startTransaction",t,e);if(ft&&!r){this.getClient()?ut.warn("Tracing extension 'startTransaction' has not been added. Call 'addTracingExtensions' before calling 'init':\nSentry.addTracingExtensions();\nSentry.init({...});\n"):ut.warn("Tracing extension 'startTransaction' is missing. You should 'init' the SDK before calling 'startTransaction'")}return r}traceHeaders(){return this._callExtensionMethod("traceHeaders")}captureSession(t=!1){if(t)return this.endSession();this._sendSessionUpdate()}endSession(){const t=this.getStackTop().scope,e=t.getSession();e&&function(t,e){let r={};e?r={status:e}:"ok"===t.status&&(r={status:"exited"}),bt(t,r)}(e),this._sendSessionUpdate(),t.setSession()}startSession(t){const{scope:e,client:r}=this.getStackTop(),{release:n,environment:o=lt}=r&&r.getOptions()||{},{userAgent:i}=Q.navigator||{},a=mt({release:n,environment:o,user:e.getUser(),...i&&{userAgent:i},...t}),s=e.getSession&&e.getSession();return s&&"ok"===s.status&&bt(s,{status:"exited"}),this.endSession(),e.setSession(a),a}shouldSendDefaultPii(){const t=this.getClient(),e=t&&t.getOptions();return Boolean(e&&e.sendDefaultPii)}_sendSessionUpdate(){const{scope:t,client:e}=this.getStackTop(),r=t.getSession();r&&e&&e.captureSession&&e.captureSession(r)}_callExtensionMethod(t,...e){const r=Pt().__SENTRY__;if(r&&r.extensions&&"function"==typeof r.extensions[t])return r.extensions[t].apply(this,e);ft&&ut.warn(`Extension method ${t} couldn't be found, doing nothing.`)}}function Pt(){return Q.__SENTRY__=Q.__SENTRY__||{extensions:{},hub:void 0},Q}function It(t){const e=Pt(),r=Dt(e);return qt(e,t),r}function Ct(){const t=Pt();if(t.__SENTRY__&&t.__SENTRY__.acs){const e=t.__SENTRY__.acs.getCurrentHub();if(e)return e}return Nt(t)}function Nt(t=Pt()){return Rt(t)&&!Dt(t).isOlderThan(jt)||qt(t,new Lt),Dt(t)}function Rt(t){return!!(t&&t.__SENTRY__&&t.__SENTRY__.hub)}function Dt(t){return tt("hub",(()=>new Lt),t)}function qt(t,e){if(!t)return!1;return(t.__SENTRY__=t.__SENTRY__||{}).hub=e,!0}new WeakMap;function Ut(t){if(t)return function(t){return t instanceof Ot||"function"==typeof t}(t)||function(t){return Object.keys(t).some((t=>Mt.includes(t)))}(t)?{captureContext:t}:t}const Mt=["user","level","extra","contexts","tags","fingerprint","requestSession","propagationContext"];function Ft(){return Ct().getClient()}function Gt(){return Ct().getScope()}function Ht(t){var e,r,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(e=t,Ct().captureException(e,Ut(r)),"prod"!==webEnv&&(console.error(t),!0===n))throw t}var Bt="CrossDomainConsent";function zt(){return function(t){try{var r=e.get(t),n=null!=r&&r.length?r.replace(/'/g,'"').replace(/([^{}:,\s]+):(\s*)?([^{}:,\s]+)/g,'"$1":$3'):"{}",o=JSON.parse(n);return{marketing:o.marketing,necessary:o.necessary,preferences:o.preferences,statistics:o.statistics}}catch(t){return Ht(t),{marketing:!1,necessary:!1,preferences:!1,statistics:!1}}}(e.get(Bt)?Bt:"CookieConsent")}function Yt(t){var e=zt();return t.every((function(t){return!0===(null==e?void 0:e[t])}))}r(5746),r(8408);function $t(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Vt(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Vt(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,s=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){s=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw i}}}}function Vt(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r0&&void 0!==arguments[0])||arguments[0],e={};try{var r,n=$t(new URLSearchParams(window.location.search));try{for(n.s();!(r=n.n()).done;){var o,i,a,s,c=r.value,u=null==c||null===(o=c[0])||void 0===o||null===(i=o.toLowerCase)||void 0===i?void 0:i.call(o),l=null==c||null===(a=c[1])||void 0===a||null===(s=a.toLowerCase)||void 0===s?void 0:s.call(a);u&&l&&0===u.indexOf("utm_")&&(e[t?u.replace("utm_",""):u]=l)}}catch(t){n.e(t)}finally{n.f()}}catch(t){Ht(t)}return e}r(744);function Jt(t){return Jt="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},Jt(t)}function Kt(){Kt=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(t,e,r,n){return Object.defineProperty(t,e,{value:r,enumerable:!n,configurable:!n,writable:!n})}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(e,r,n,o){var i=r&&r.prototype instanceof h?r:h,a=Object.create(i.prototype);return c(a,"_invoke",function(e,r,n){var o=1;return function(i,a){if(3===o)throw Error("Generator is already running");if(4===o){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var s=n.delegate;if(s){var c=x(s,n);if(c){if(c===f)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(1===o)throw o=4,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=3;var u=l(e,r,n);if("normal"===u.type){if(o=n.done?4:2,u.arg===f)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=4,n.method="throw",n.arg=u.arg)}}}(e,n,new E(o||[])),!0),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=u;var f={};function h(){}function d(){}function p(){}var v={};c(v,i,(function(){return this}));var g=Object.getPrototypeOf,y=g&&g(g(k([])));y&&y!==r&&n.call(y,i)&&(v=y);var m=p.prototype=h.prototype=Object.create(v);function b(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function r(o,i,a,s){var c=l(t[o],t,i);if("throw"!==c.type){var u=c.arg,f=u.value;return f&&"object"==Jt(f)&&n.call(f,"__await")?e.resolve(f.__await).then((function(t){r("next",t,a,s)}),(function(t){r("throw",t,a,s)})):e.resolve(f).then((function(t){u.value=t,a(u)}),(function(t){return r("throw",t,a,s)}))}s(c.arg)}var o;c(this,"_invoke",(function(t,n){function i(){return new e((function(e,o){r(t,n,e,o)}))}return o=o?o.then(i,i):i()}),!0)}function x(e,r){var n=r.method,o=e.i[n];if(o===t)return r.delegate=null,"throw"===n&&e.i.return&&(r.method="return",r.arg=t,x(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),f;var i=l(o,e.i,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,f;var a=i.arg;return a?a.done?(r[e.r]=a.value,r.next=e.n,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,f):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,f)}function _(t){this.tryEntries.push(t)}function S(e){var r=e[4]||{};r.type="normal",r.arg=t,e[4]=r}function E(t){this.tryEntries=[[-1]],t.forEach(_,this),this.reset(!0)}function k(e){if(null!=e){var r=e[i];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,a=function r(){for(;++o=0;--o){var i=this.tryEntries[o],a=i[4],s=this.prev,c=i[1],u=i[2];if(-1===i[0])return n("end"),!1;if(!c&&!u)throw Error("try statement without catch or finally");if(null!=i[0]&&i[0]<=s){if(s=0;--r){var n=this.tryEntries[r];if(n[0]>-1&&n[0]<=this.prev&&this.prev=0;--e){var r=this.tryEntries[e];if(r[2]===t)return this.complete(r[4],r[3]),S(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r[0]===t){var n=r[4];if("throw"===n.type){var o=n.arg;S(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={i:k(e),r,n},"next"===this.method&&(this.arg=t),f}},e}function Xt(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,s=[],c=!0,u=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(s.push(n.value),s.length!==e);c=!0);}catch(t){u=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return s}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Zt(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Zt(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Zt(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r1&&void 0!==arguments[1]?arguments[1]:0,r=(fe[t[e+0]]+fe[t[e+1]]+fe[t[e+2]]+fe[t[e+3]]+"-"+fe[t[e+4]]+fe[t[e+5]]+"-"+fe[t[e+6]]+fe[t[e+7]]+"-"+fe[t[e+8]]+fe[t[e+9]]+"-"+fe[t[e+10]]+fe[t[e+11]]+fe[t[e+12]]+fe[t[e+13]]+fe[t[e+14]]+fe[t[e+15]]).toLowerCase();if(!le(r))throw TypeError("Stringified UUID is invalid");return r};const pe=function(t,e,r){var n=(t=t||{}).random||(t.rng||ce)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,e){r=r||0;for(var o=0;o<16;++o)e[r+o]=n[o];return e}return de(n)};function ve(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:365,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,o=e.get(t);return o||(o=pe(),e.set(t,o,{expires:r,domain:n}),o)}r(739);function ge(t){return ge="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},ge(t)}function ye(){ye=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(t,e,r,n){return Object.defineProperty(t,e,{value:r,enumerable:!n,configurable:!n,writable:!n})}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(e,r,n,o){var i=r&&r.prototype instanceof h?r:h,a=Object.create(i.prototype);return c(a,"_invoke",function(e,r,n){var o=1;return function(i,a){if(3===o)throw Error("Generator is already running");if(4===o){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var s=n.delegate;if(s){var c=x(s,n);if(c){if(c===f)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(1===o)throw o=4,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=3;var u=l(e,r,n);if("normal"===u.type){if(o=n.done?4:2,u.arg===f)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=4,n.method="throw",n.arg=u.arg)}}}(e,n,new E(o||[])),!0),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=u;var f={};function h(){}function d(){}function p(){}var v={};c(v,i,(function(){return this}));var g=Object.getPrototypeOf,y=g&&g(g(k([])));y&&y!==r&&n.call(y,i)&&(v=y);var m=p.prototype=h.prototype=Object.create(v);function b(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function r(o,i,a,s){var c=l(t[o],t,i);if("throw"!==c.type){var u=c.arg,f=u.value;return f&&"object"==ge(f)&&n.call(f,"__await")?e.resolve(f.__await).then((function(t){r("next",t,a,s)}),(function(t){r("throw",t,a,s)})):e.resolve(f).then((function(t){u.value=t,a(u)}),(function(t){return r("throw",t,a,s)}))}s(c.arg)}var o;c(this,"_invoke",(function(t,n){function i(){return new e((function(e,o){r(t,n,e,o)}))}return o=o?o.then(i,i):i()}),!0)}function x(e,r){var n=r.method,o=e.i[n];if(o===t)return r.delegate=null,"throw"===n&&e.i.return&&(r.method="return",r.arg=t,x(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),f;var i=l(o,e.i,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,f;var a=i.arg;return a?a.done?(r[e.r]=a.value,r.next=e.n,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,f):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,f)}function _(t){this.tryEntries.push(t)}function S(e){var r=e[4]||{};r.type="normal",r.arg=t,e[4]=r}function E(t){this.tryEntries=[[-1]],t.forEach(_,this),this.reset(!0)}function k(e){if(null!=e){var r=e[i];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,a=function r(){for(;++o=0;--o){var i=this.tryEntries[o],a=i[4],s=this.prev,c=i[1],u=i[2];if(-1===i[0])return n("end"),!1;if(!c&&!u)throw Error("try statement without catch or finally");if(null!=i[0]&&i[0]<=s){if(s=0;--r){var n=this.tryEntries[r];if(n[0]>-1&&n[0]<=this.prev&&this.prev=0;--e){var r=this.tryEntries[e];if(r[2]===t)return this.complete(r[4],r[3]),S(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r[0]===t){var n=r[4];if("throw"===n.type){var o=n.arg;S(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={i:k(e),r,n},"next"===this.method&&(this.arg=t),f}},e}function me(t,e,r,n,o,i,a){try{var s=t[i](a),c=s.value}catch(t){return void r(t)}s.done?e(c):Promise.resolve(c).then(n,o)}function be(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){me(i,n,o,a,s,"next",t)}function s(t){me(i,n,o,a,s,"throw",t)}a(void 0)}))}}var we="prod"===webEnv?"https://api.owhealth.com/v1/web-analytics":"https://api.staging.owhealth.com/v1/web-analytics";function xe(t){return _e.apply(this,arguments)}function _e(){return _e=be(ye().mark((function t(e){var r,n,o;return ye().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r={events:e},t.prev=1,n=fetch(we,{method:"POST",headers:{"Content-Type":"application/json",Accept:"*/*"},body:JSON.stringify(r)}),o=new Promise((function(t,e){setTimeout(be(ye().mark((function e(){return ye().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t();case 1:case"end":return e.stop()}}),e)}))),1500)})),t.next=6,Promise.race([n,o]);case 6:t.next=11;break;case 8:t.prev=8,t.t0=t.catch(1),"dev"!==webEnv&&Ht(t.t0);case 11:case"end":return t.stop()}}),t,null,[[1,8]])}))),_e.apply(this,arguments)}function Se(t){return Se="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},Se(t)}function Ee(){Ee=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(t,e,r,n){return Object.defineProperty(t,e,{value:r,enumerable:!n,configurable:!n,writable:!n})}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(e,r,n,o){var i=r&&r.prototype instanceof h?r:h,a=Object.create(i.prototype);return c(a,"_invoke",function(e,r,n){var o=1;return function(i,a){if(3===o)throw Error("Generator is already running");if(4===o){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var s=n.delegate;if(s){var c=x(s,n);if(c){if(c===f)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(1===o)throw o=4,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=3;var u=l(e,r,n);if("normal"===u.type){if(o=n.done?4:2,u.arg===f)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=4,n.method="throw",n.arg=u.arg)}}}(e,n,new E(o||[])),!0),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=u;var f={};function h(){}function d(){}function p(){}var v={};c(v,i,(function(){return this}));var g=Object.getPrototypeOf,y=g&&g(g(k([])));y&&y!==r&&n.call(y,i)&&(v=y);var m=p.prototype=h.prototype=Object.create(v);function b(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function r(o,i,a,s){var c=l(t[o],t,i);if("throw"!==c.type){var u=c.arg,f=u.value;return f&&"object"==Se(f)&&n.call(f,"__await")?e.resolve(f.__await).then((function(t){r("next",t,a,s)}),(function(t){r("throw",t,a,s)})):e.resolve(f).then((function(t){u.value=t,a(u)}),(function(t){return r("throw",t,a,s)}))}s(c.arg)}var o;c(this,"_invoke",(function(t,n){function i(){return new e((function(e,o){r(t,n,e,o)}))}return o=o?o.then(i,i):i()}),!0)}function x(e,r){var n=r.method,o=e.i[n];if(o===t)return r.delegate=null,"throw"===n&&e.i.return&&(r.method="return",r.arg=t,x(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),f;var i=l(o,e.i,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,f;var a=i.arg;return a?a.done?(r[e.r]=a.value,r.next=e.n,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,f):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,f)}function _(t){this.tryEntries.push(t)}function S(e){var r=e[4]||{};r.type="normal",r.arg=t,e[4]=r}function E(t){this.tryEntries=[[-1]],t.forEach(_,this),this.reset(!0)}function k(e){if(null!=e){var r=e[i];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,a=function r(){for(;++o=0;--o){var i=this.tryEntries[o],a=i[4],s=this.prev,c=i[1],u=i[2];if(-1===i[0])return n("end"),!1;if(!c&&!u)throw Error("try statement without catch or finally");if(null!=i[0]&&i[0]<=s){if(s=0;--r){var n=this.tryEntries[r];if(n[0]>-1&&n[0]<=this.prev&&this.prev=0;--e){var r=this.tryEntries[e];if(r[2]===t)return this.complete(r[4],r[3]),S(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r[0]===t){var n=r[4];if("throw"===n.type){var o=n.arg;S(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={i:k(e),r,n},"next"===this.method&&(this.arg=t),f}},e}function ke(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function Oe(t){for(var e=1;e1&&void 0!==g[1]?g[1]:{},y=void 0,u=Yt(["marketing","necessary","statistics"])?{sessionId:ve("session_id"),visitorId:ve("visitor_id",365,(y=window.location.hostname.split(".").reverse(),y.length<=1||!y[1]||!y[0]?window.location.hostname:".".concat(y[1],".").concat(y[0])))}:{sessionId:void 0,visitorId:void 0},l=u.sessionId,f=u.visitorId,h=null===(r=document.querySelector("html").getAttribute("lang"))||void 0===r?void 0:r.toUpperCase(),d=Wt(),t.next=6,oe();case 6:return p=t.sent,v=new P.UAParser(navigator.userAgent),t.abrupt("return",{date:(new Date).toISOString(),event_type:e,page_path:window.location.pathname,referal:document.referrer,screen_name:window.location.pathname,session:{session_id:l,source:null==d?void 0:d.source,ad_campaign:null==d?void 0:d.campaign,ad_id:null==d?void 0:d.id,ad_set:null==d?void 0:d.set},visitor:{additional_attributes:{},br:null==v||null===(n=v.getBrowser())||void 0===n?void 0:n.name,br_ver:null==v||null===(o=v.getBrowser())||void 0===o?void 0:o.version,co:p,os:null==v?void 0:v.getOS().name,os_version:null==v?void 0:v.getOS().version,user_agent:null==v||null===(i=v.getResult())||void 0===i?void 0:i.ua,visitor_id:f,lang:null===(a=navigator)||void 0===a||null===(a=a.language)||void 0===a||null===(s=a.slice)||void 0===s||null===(s=s.call(a,0,2))||void 0===s?void 0:s.toUpperCase()},web_user:{additional_attributes:{}},additional_fields:Oe({authentication_type:"",utm_medium:null==d?void 0:d.medium,service:"content_site",lang_page:h,page_url:window.location.href,page_referrer:document.referrer,utm:d},c)});case 9:case"end":return t.stop()}var y}),t)}))),Pe.apply(this,arguments)}var Ie=[],Ce=null;function Ne(){return Ne=Ae(Ee().mark((function t(e){var r,n=arguments;return Ee().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=n.length>1&&void 0!==n[1]?n[1]:{},t.t0=Ie,t.next=4,Le(e,r);case 4:return t.t1=t.sent,t.t0.push.call(t.t0,t.t1),t.abrupt("return",new Promise((function(t,e){Ce&&clearTimeout(Ce),Ce=setTimeout((function(){var e=[].concat(Ie);Ie.length=0,xe(e).catch(Ht).finally((function(){t()}))}),1)})));case 7:case"end":return t.stop()}}),t)}))),Ne.apply(this,arguments)}function Re(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new Promise((function(r,n){Yt(["marketing","statistics"])?function(t){return Ne.apply(this,arguments)}(t,e).catch(Ht).catch(n).then(r):r()}))}function De(t){return De="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},De(t)}function qe(){qe=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(t,e,r,n){return Object.defineProperty(t,e,{value:r,enumerable:!n,configurable:!n,writable:!n})}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(e,r,n,o){var i=r&&r.prototype instanceof h?r:h,a=Object.create(i.prototype);return c(a,"_invoke",function(e,r,n){var o=1;return function(i,a){if(3===o)throw Error("Generator is already running");if(4===o){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var s=n.delegate;if(s){var c=x(s,n);if(c){if(c===f)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(1===o)throw o=4,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=3;var u=l(e,r,n);if("normal"===u.type){if(o=n.done?4:2,u.arg===f)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=4,n.method="throw",n.arg=u.arg)}}}(e,n,new E(o||[])),!0),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=u;var f={};function h(){}function d(){}function p(){}var v={};c(v,i,(function(){return this}));var g=Object.getPrototypeOf,y=g&&g(g(k([])));y&&y!==r&&n.call(y,i)&&(v=y);var m=p.prototype=h.prototype=Object.create(v);function b(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function r(o,i,a,s){var c=l(t[o],t,i);if("throw"!==c.type){var u=c.arg,f=u.value;return f&&"object"==De(f)&&n.call(f,"__await")?e.resolve(f.__await).then((function(t){r("next",t,a,s)}),(function(t){r("throw",t,a,s)})):e.resolve(f).then((function(t){u.value=t,a(u)}),(function(t){return r("throw",t,a,s)}))}s(c.arg)}var o;c(this,"_invoke",(function(t,n){function i(){return new e((function(e,o){r(t,n,e,o)}))}return o=o?o.then(i,i):i()}),!0)}function x(e,r){var n=r.method,o=e.i[n];if(o===t)return r.delegate=null,"throw"===n&&e.i.return&&(r.method="return",r.arg=t,x(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),f;var i=l(o,e.i,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,f;var a=i.arg;return a?a.done?(r[e.r]=a.value,r.next=e.n,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,f):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,f)}function _(t){this.tryEntries.push(t)}function S(e){var r=e[4]||{};r.type="normal",r.arg=t,e[4]=r}function E(t){this.tryEntries=[[-1]],t.forEach(_,this),this.reset(!0)}function k(e){if(null!=e){var r=e[i];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,a=function r(){for(;++o=0;--o){var i=this.tryEntries[o],a=i[4],s=this.prev,c=i[1],u=i[2];if(-1===i[0])return n("end"),!1;if(!c&&!u)throw Error("try statement without catch or finally");if(null!=i[0]&&i[0]<=s){if(s=0;--r){var n=this.tryEntries[r];if(n[0]>-1&&n[0]<=this.prev&&this.prev=0;--e){var r=this.tryEntries[e];if(r[2]===t)return this.complete(r[4],r[3]),S(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r[0]===t){var n=r[4];if("throw"===n.type){var o=n.arg;S(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={i:k(e),r,n},"next"===this.method&&(this.arg=t),f}},e}function Ue(t,e,r,n,o,i,a){try{var s=t[i](a),c=s.value}catch(t){return void r(t)}s.done?e(c):Promise.resolve(c).then(n,o)}function Me(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){Ue(i,n,o,a,s,"next",t)}function s(t){Ue(i,n,o,a,s,"throw",t)}a(void 0)}))}}function Fe(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Ge(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ge(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,s=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){s=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw i}}}}function Ge(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r\n \n ';t.forEach((function(t){var r=document.createElement("div");r.className="table-scroll-controls";var n=document.createElement("button");n.className="table-scroll-control table-scroll-left",n.innerHTML=e,n.setAttribute("aria-label","Scroll table left");var o=document.createElement("button");o.className="table-scroll-control table-scroll-right",o.innerHTML=e,o.setAttribute("aria-label","Scroll table right"),r.appendChild(n),r.appendChild(o),t.insertAdjacentElement("afterend",r);var i=function(){var e=t.scrollWidth>t.clientWidth,i=t.scrollLeft,a=t.scrollWidth-t.clientWidth;r.classList.toggle("hidden",!e),e&&(n.classList.toggle("disabled",0===i),o.classList.toggle("disabled",i>=a))};i(),n.addEventListener("click",(function(){var e=Math.max(0,t.scrollLeft-t.clientWidth/2);t.scrollTo({left:e,behavior:"smooth"})})),o.addEventListener("click",(function(){var e=t.scrollWidth-t.clientWidth,r=Math.min(e,t.scrollLeft+t.clientWidth/2);t.scrollTo({left:r,behavior:"smooth"})})),t.addEventListener("scroll",i),window.addEventListener("resize",i)}))}};document.addEventListener("DOMContentLoaded",(function(){document.querySelector(".floating-button")?R.init():A.init(),$.init(),o.init(),a.init(),d.init(),E.init(),L.init(),D.init(),U.init(),M.init(),F.init(),V.init(),He.init(),Be.init()}))})()})();
    Fertility Tests for Women: A Comprehensive Overview (2025)
    Top Articles
    Latest Posts
    Recommended Articles
    Article information

    Author: Rev. Porsche Oberbrunner

    Last Updated:

    Views: 6840

    Rating: 4.2 / 5 (53 voted)

    Reviews: 92% of readers found this page helpful

    Author information

    Name: Rev. Porsche Oberbrunner

    Birthday: 1994-06-25

    Address: Suite 153 582 Lubowitz Walks, Port Alfredoborough, IN 72879-2838

    Phone: +128413562823324

    Job: IT Strategist

    Hobby: Video gaming, Basketball, Web surfing, Book restoration, Jogging, Shooting, Fishing

    Introduction: My name is Rev. Porsche Oberbrunner, I am a zany, graceful, talented, witty, determined, shiny, enchanting person who loves writing and wants to share my knowledge and understanding with you.