תבניות אפלות - כשר אבל מסריח

favorite favorite שמור במועדפים

בעלי עסקים ורשתות שיווק השקיעו ומשקיעים מאמצים שיווקיים רבים כדי להניע לקוחות לבצע פעולה שסופה רכישת מוצר/שירות. טרם התפתחותו של עולם הטכנולוגיה, התקשורת והמחשוב, התבססו בעלי העסקים על מגוון דרכים מסורתיות בעזרתן ניסו להשפיע על שיקול הדעת של הלקוח, כגון - חלוקת עלונים, פרסום בעיתונים, שלטי חוצות, רדיו וטלוויזיה, מכירות מבית לבית.

כיום, בעזרת בשורת הקדמה והחדשנות שהביא האינטרנט לעולם, בעלי העסקים הוסיפו לארסנל השיווק המסורתי את זה הדיגיטלי, כאשר אחד מהאמצעים הדיגיטליים הן תבניות אפלות.

מהי תבנית אפלה?

תבנית אפלה היא ממשק המשולב באתרי אינטרנט שונים, אשר מטרתו לבצע מניפולציה על המשתמשים והגולשים כדי לעודד אותם לבצע פעולה כלשהי או להשלים רכישה באתר, גם אם זו כלל לא הייתה כוונתם המקורית. במרבית מן המקרים, אנו נחשף לתבניות אפלות באתרי Ecommerce אשר מציבים בראש סדר עדיפיותיהם את נושא ההשפעה על שיקול הדעת של הגולשים והמשתמשים, זאת כדי להגדיל את זמן השהייה שלהם באתר ולעודד אותם לבצע רכישות, וגם כדי למנוע מהם לעבור לאחד ממיליוני אתרי Ecommerce אחרים אשר קיימים ברחבי המרשתת.

דוגמאות לתבניות אפלות

ישנן מגוון דרכים שונות ומקוריות בהן משתמשים בעלי האתרים כדי להשיג את מבוקשם ולהוביל אתכם לבצע פעולה או רכישה. קצרה היריעה מלתאר את כל התבניות האפלות אשר נעשה בהן שימוש, לכן נתמקד בארבע המרכזיות מביניהן אשר קיימות כיום במרבית האתרים.

  • פיתוי והחלפה

תבנית זו מתארת מצב בו הפרסום הראשוני מציג מוצר/שירות במחיר זול ביותר (על גבול הלא אמין), אך לאחר ההקלקה על אותו המוצר מתברר, כי לא כך הדבר, וכי המחיר המקורי גבוה בהרבה (לרוב בשל הוספתו של מחיר המשלוח שאינו מצויין בפרסום הראשי). במצב שכזה רוב הצרכנים אולי יוותרו על אותה רכישה ספציפית, אך הם עשויים להמשיך ולשוטט באתר ולרכוש מוצרים אחרים.


דוגמה לדוא"ל הנשלח על בסיס יומי ומודיע על מבצעים ומוצרים חדשים באתר. בדוא"ל הנ"ל מוצג בין היתר עכבר, אשר במודעה נטען כי מחירו הוא 16 ש"ח.


אולם כשאנחנו לוחצים על המודעה ונכנסים אל דף המוצר אנחנו מגלים כי מחירו הוא 30 ש"ח. בנוסף לכך, מואיל צוות האתר בטובו לציין, כי המחיר אינו כולל את מחיר המשלוח העומד על סך 16.5 ש"ח, כך שהמחיר הסופי של המוצר הוא 46.5 ש"ח.

  • ביוש 

בחלק מן האתרים אשר מציעים שירותי אקסטרה למיניהם (כגון - רישום לניוזלטר, קבלת תשורות והטבות), תוכן הטקסט בעת ביטול ההרשמה לשירות שכזה עשוי להיות מבייש, כזה שיגרום לכם לשבת בפינת החדר ולחשוב טוב טוב על המעשים שלכם, ולשקול האם לא כדאי לכם פשוט להישאר חלק מרשימת התפוצה של האתר ולוותר על הרעיון המופרך וההזוי שהגיתם. 

ניסוח התוכן והמלל של אותו כפתור ביטול לרוב מזכיר את שיטת הפאסיב אגרסיב, ונועד לעורר בכם חשש להישאר מאחור ולפספס הזדמנויות ומידע. אם נמשיך לרגע עם דוגמת ביטול ההרשמה לניוזלטר, המלל של אותו הכפתור עשוי להיות מנוסח כך: "אני לא רוצה לקבל עדכונים מעניינים ישירות לדוא"ל שלי".

  • מלכודת יציאה

התרגיל הוותיק והקלאסי של חלק מרשתות השיווק - קל להיכנס, קשה לצאת. אמרה זו רלוונטית כמעט עבור כל פעולה המצריכה הרשמה באתר, בין אם לניוזלטר שעסקנו בו בפסקה הקודמת, או לשירותים אחרים - מועדון לקוחות, שירות פרימיום - אותם מציעה החברה.

ישנן דרכים רבות ומגוונות להקשות את חייהם של אלו אשר רוצים לבטל את הרשמתם (סיטואציה שככל הנראה פגשה את רובנו המוחלט), בניהן הסתרת כפתור המחיקה, או מתן אפשרות לביטול ההרשמה רק על ידי שיחה טלפונית עם נציג שימור לקוחות.

  • סימון אוטומטי

כאשר אנו ממלאים טופס הרשמה, על מנת לקבל שירות או מוצר מסוים, מופיעים בסופו באופן קבע שני שדות אותם אנו צריכים לאשר:

  1. אנו מאשרים את תקנון האתר.
  2. אנו מאשרים קבלת מבצעים ועדכונים למספר הטלפון או הדוא"ל שסיפקנו.

מרבית הלקוחות מעדיפים שלא לקבל את את אותם העדכונים, משלל סיבות שונות (ואי אפשר להאשים אותם, מדובר באכילת ראש רצינית). אז איך החברות ורשתות השיווק גורמות לכם בכל מקרה להצטרף לניוזלטר על אף חוסר רצונכם לעשות כן? פשוט מאוד, הן מאשרות את אותו השדה בשמכם. אותן חברות פועלות על פי "שיטת מצליח" ובונות על כך שלא תשימו לב למתרחש, ובכך תצטרפו לניוזלטר ללא ידיעתכם ובעל כורחם. 


דוגמא למקרה בו השדה המאפשר לחברה לשלוח מבצעים ועדכונים מסומן מראש.

מי יעצור את התופעה?

נכון למועד כתיבת שורות אלו, השימוש בתבניות אפלות עודנו חוקי, אך שימוש מופרז או שאינו מוסרי בתבניות אפלות יכול ועשוי להוביל לפגיעה משפטית במקרים מסוימים. בארה"ב (באופן לא מפתיע) המודעות לבעייתיות החוקית של התופעה היא הגבוהה ביותר מבין מדינות העולם, כשלאחרונה וועדת הסחר הפדרלית החלה לחקור ולנקוט בצעדים משפטיים כנגד עסקים ואתרים אשר עושים שימוש שאינו הוגן בתבניות אפלות.

אחת המדינות ביבשת אשר פועלת באופן אקטיבי על מנת למגר את התופעה היא קליפורניה, שבה חלק מחוק פרטיות הצרכן אוסר על שימוש בתבניות אפלות המקשות על המשתמשים לבטל את הסכמתם למצב מסויים (מלכודת יציאה). בנוסף על כך, חוקים דומים עתידיים להכנס לתוקף במהלך השנה גם בקונטיקט וקולורדו.
יחד עם זאת שקיימים כיום גופים העוסקים בנושא מבחינה משפטית ופלילית, עדיין, עיקר ההרתעה כלפי אתרים אשר משתמשים באופן החורג מגבול הלגיטמיות בתבניות אפלות מתבצע בעיקרו בעזרת מנגנוני דיווח הקיימים ברחבי הרשת.


מעצר. האם זהו העתיד הצפוי לבעלי אתרים אשר משתמשים בתבניות אפלות?

במידה והינכם בעלי אתר אינטרנט בכלל ואתר Ecommerce בפרט, אנו ממליצים לשקול פעמיים את השימוש בתבניות אפלות. מעבר לסכנה המשפטית והחשיפה לתביעות אופציונליות, הדבר עשוי להוביל לפגיעה באמון ובביטחון של קהל לקוחותיכם, מה שיגרום להם להפסיק לגלוש באתר.

במידה ואין בבעלותכם אתר כלשהו והנכם צרכנים ולקוחות מן השורה, אנו ממליצים לכם להתייחס לנושא התבניות האפלות בכובד ראש, ולוודא מספר פעמים, כי אינכם מועדים אל תוך המניפולציות אשר חלק מבעלי האתרים מנסים לבצע באמצעות אותן תבניות.

*אם יש לכם הערה, טענה או מענה לגבי המאמר שקראתם כעת, אתם מוזמנים ליצור איתנו קשר

אולי יעניין אתכם גם

  • אהבתם את באג 2000? קבלו את באג 2038!

    בחצות הליל בתאריך 31/12/1999 נעתקה נשימתם של מרבית אזרחי העולם, כשמד הלחץ והחרדה ברחובות הלך וגאה, והחשש מבאג 2000 הגיע לשיאו. כיום, תחושות דומות לאלו שוררות לקראת אירוע העתיד להתרחש בעוד כחמש עשרה שנים, בשעה 03:14 בתאריך 19/01/2038.

    מה עתיד להתרחש באותו התאריך? ומה הקשר בינו לבן באג 2000? כל התשובות (ועוד) בהמשך המאמר.

    • תאריך 16/03/2023
    • זמן קריאה 7.5 דקות קריאה
  • מה קורה כשאנחנו מאשרים לאתר להשתמש בקבצי Cookies?

    על פי המחקר הפקטיבי של מכון "חקר-כלשהו", ישנם שני אנשים בלבד בכל רחבי העולם אשר קוראים את הצהרת Cookies לפני שהם מאשרים אותה.
    וברצינות, כיום קבצי Cookies נמצאים כמעט בכל אתר, ועדיין ישנו שיעור לא מבוטל של אלו החושבים שמדובר בפרסומת לקונדיטוריה. במיוחד בשביל אלו, במאמר הקרוב ננסה לפשט ולהבין בדיוק על מה מדובר. 

    • תאריך 14/02/2023
    • זמן קריאה 4.5 דקות קריאה
  • פסקול - הרבה יותר מהלחם בסיסים

    בשנים האחרונות אנו חוזים בתופעה שצוברת תאוצה - יותר ויותר סדרות וסרטים משתמשים במוזיקה כחלק מרכזי מקו העלילה. השימוש במוזיקת רקע תמיד היה קיים, אך לרוב בתור פתיח או סגיר, כאשר בקטעי הקישור היו משתמשים במנגינות ללא מילים.

    בשנים האחרונות, הפסקול תופס מקום רחב הרבה יותר בעולמות הקולנוע והטלוויזיה, ובשל כך יותר אנשים נחשפים לשירים שיתכן כי לא היו מאזינים להם ביום יום. עבור חלק מהשירים, השימוש בהם כפסקול גרם לכניסתם ללב המיינסטרים או שהפך אותם לשירי קאלט בין רגע.
    במאמר הקרוב, נסקור חמישה שירים שחוו הצלחה שכזו, הן שירים בעברית והן באנגלית.

    • תאריך 13/02/2023
    • זמן קריאה 9 דקות קריאה
  • השימוש במערכת החדשה לזיהוי עבירת הנבדל מתפשט בעולם הכדורגל

    זיהוי עבירת נבדל היא אחת מן המשימות הקשות ביותר עבור קווני ושופטי המשחק, ומצריכה ריכוז רב ומיומנות גבוהה. בעבר הלא רחוק, ברגע שהשופט/הקוון פספסו עבירת נבדל אשר התרחשה במהלך המשחק, לא ניתן היה להשיב את הגלגל לאחור והמהלך היה נחשב לחוקי גם במידה ותצלומי הטלוויזיה הציגו אחרת.

    הרצון לדיוק בזיהוי עבירת הנבדל, היה אחד הזרזים, להגעת רוחות הקידמה הטכנולוגית למגרשי כדור הרגל בשנים האחרונות, עם כניסתה של מערכת VAR לעולם הכדורגל (שלא הייתה חפה מטעויות גם היא במשימת זיהוי עבירת הנבדל) לפני כארבע שנים. בחודשים האחרונים אותו שינוי עלה מדרגה, עם שילובה של טכנולוגיית הנבדל החצי אוטומטית (SAOT) אשר נועדה לסייע ולהקל על השופטים לקבל הכרעה מקרי נבדל גבוליים.

    • תאריך 21/05/2023
    • זמן קריאה 5 דקות קריאה
ניתן להשתמש בחצי המקלדת בכדי לנווט בין כפתורי הרכיב
",e=e.removeChild(e.firstChild)):"string"==typeof o.is?e=l.createElement(a,{is:o.is}):(e=l.createElement(a),"select"===a&&(l=e,o.multiple?l.multiple=!0:o.size&&(l.size=o.size))):e=l.createElementNS(e,a),e[Ni]=t,e[Pi]=o,Pl(e,t,!1,!1),t.stateNode=e,l=Ae(a,o),a){case"iframe":case"object":case"embed":Te("load",e),u=o;break;case"video":case"audio":for(u=0;u<$a.length;u++)Te($a[u],e);u=o;break;case"source":Te("error",e),u=o;break;case"img":case"image":case"link":Te("error",e),Te("load",e),u=o;break;case"form":Te("reset",e),Te("submit",e),u=o;break;case"details":Te("toggle",e),u=o;break;case"input":A(e,o),u=M(e,o),Te("invalid",e),Ie(n,"onChange");break;case"option":u=B(e,o);break;case"select":e._wrapperState={wasMultiple:!!o.multiple},u=Uo({},o,{value:void 0}),Te("invalid",e),Ie(n,"onChange");break;case"textarea":V(e,o),u=H(e,o),Te("invalid",e),Ie(n,"onChange");break;default:u=o}Me(a,u);var s=u;for(i in s)if(s.hasOwnProperty(i)){var c=s[i];"style"===i?ze(e,c):"dangerouslySetInnerHTML"===i?(c=c?c.__html:void 0,null!=c&&Aa(e,c)):"children"===i?"string"==typeof c?("textarea"!==a||""!==c)&&X(e,c):"number"==typeof c&&X(e,""+c):"suppressContentEditableWarning"!==i&&"suppressHydrationWarning"!==i&&"autoFocus"!==i&&(ea.hasOwnProperty(i)?null!=c&&Ie(n,i):null!=c&&x(e,i,c,l))}switch(a){case"input":L(e),j(e,o,!1);break;case"textarea":L(e),$(e);break;case"option":null!=o.value&&e.setAttribute("value",""+P(o.value));break;case"select":e.multiple=!!o.multiple,n=o.value,null!=n?q(e,!!o.multiple,n,!1):null!=o.defaultValue&&q(e,!!o.multiple,o.defaultValue,!0);break;default:"function"==typeof u.onClick&&(e.onclick=Fe)}Ve(a,o)&&(t.effectTag|=4)}null!==t.ref&&(t.effectTag|=128)}return null;case 6:if(e&&null!=t.stateNode)Ll(e,t,e.memoizedProps,o);else{if("string"!=typeof o&&null===t.stateNode)throw Error(r(166));n=yn(yu.current),yn(bu.current),Jn(t)?(n=t.stateNode,o=t.memoizedProps,n[Ni]=t,n.nodeValue!==o&&(t.effectTag|=4)):(n=(9===n.nodeType?n:n.ownerDocument).createTextNode(o),n[Ni]=t,t.stateNode=n)}return null;case 13:return zt(vu),o=t.memoizedState,0!==(64&t.effectTag)?(t.expirationTime=n,t):(n=null!==o,o=!1,null===e?void 0!==t.memoizedProps.fallback&&Jn(t):(a=e.memoizedState,o=null!==a,n||null===a||(a=e.child.sibling,null!==a&&(i=t.firstEffect,null!==i?(t.firstEffect=a,a.nextEffect=i):(t.firstEffect=t.lastEffect=a,a.nextEffect=null),a.effectTag=8))),n&&!o&&0!==(2&t.mode)&&(null===e&&!0!==t.memoizedProps.unstable_avoidThisFallback||0!==(1&vu.current)?rs===Qu&&(rs=Yu):(rs!==Qu&&rs!==Yu||(rs=Gu),0!==us&&null!==es&&(To(es,ns),Co(es,us)))),(n||o)&&(t.effectTag|=4),null);case 4:return wn(),Ol(t),null;case 10:return Zt(t),null;case 17:return It(t.type)&&Ft(),null;case 19:if(zt(vu),o=t.memoizedState,null===o)return null;if(a=0!==(64&t.effectTag),i=o.rendering,null===i){if(a)mr(o,!1);else if(rs!==Qu||null!==e&&0!==(64&e.effectTag))for(i=t.child;null!==i;){if(e=_n(i),null!==e){for(t.effectTag|=64,mr(o,!1),a=e.updateQueue,null!==a&&(t.updateQueue=a,t.effectTag|=4),null===o.lastEffect&&(t.firstEffect=null),t.lastEffect=o.lastEffect,o=t.child;null!==o;)a=o,i=n,a.effectTag&=2,a.nextEffect=null,a.firstEffect=null,a.lastEffect=null,e=a.alternate,null===e?(a.childExpirationTime=0,a.expirationTime=i,a.child=null,a.memoizedProps=null,a.memoizedState=null,a.updateQueue=null,a.dependencies=null):(a.childExpirationTime=e.childExpirationTime,a.expirationTime=e.expirationTime,a.child=e.child,a.memoizedProps=e.memoizedProps,a.memoizedState=e.memoizedState,a.updateQueue=e.updateQueue,i=e.dependencies,a.dependencies=null===i?null:{expirationTime:i.expirationTime,firstContext:i.firstContext,responders:i.responders}),o=o.sibling;return Mt(vu,1&vu.current|2),t.child}i=i.sibling}}else{if(!a)if(e=_n(i),null!==e){if(t.effectTag|=64,a=!0,n=e.updateQueue,null!==n&&(t.updateQueue=n,t.effectTag|=4),mr(o,!0),null===o.tail&&"hidden"===o.tailMode&&!i.alternate)return t=t.lastEffect=o.lastEffect,null!==t&&(t.nextEffect=null),null}else 2*ru()-o.renderingStartTime>o.tailExpiration&&1t)&&vs.set(e,t)))}}function Ur(e,t){e.expirationTimee?n:e,2>=e&&t!==e?0:e}function qr(e){if(0!==e.lastExpiredTime)e.callbackExpirationTime=1073741823,e.callbackPriority=99,e.callbackNode=$t(Vr.bind(null,e));else{var t=Br(e),n=e.callbackNode;if(0===t)null!==n&&(e.callbackNode=null,e.callbackExpirationTime=0,e.callbackPriority=90);else{var r=Fr();if(1073741823===t?r=99:1===t||2===t?r=95:(r=10*(1073741821-t)-10*(1073741821-r),r=0>=r?99:250>=r?98:5250>=r?97:95),null!==n){var o=e.callbackPriority;if(e.callbackExpirationTime===t&&o>=r)return;n!==Yl&&Bl(n)}e.callbackExpirationTime=t,e.callbackPriority=r,t=1073741823===t?$t(Vr.bind(null,e)):Wt(r,Hr.bind(null,e),{timeout:10*(1073741821-t)-ru()}),e.callbackNode=t}}}function Hr(e,t){if(ks=0,t)return t=Fr(),No(e,t),qr(e),null;var n=Br(e);if(0!==n){if(t=e.callbackNode,(Ju&(Wu|$u))!==Hu)throw Error(r(327));if(lo(),e===es&&n===ns||Kr(e,n),null!==ts){var o=Ju;Ju|=Wu;for(var a=Yr();;)try{eo();break}catch(t){Xr(e,t)}if(Gt(),Ju=o,Bu.current=a,rs===Ku)throw t=os,Kr(e,n),To(e,n),qr(e),t;if(null===ts)switch(a=e.finishedWork=e.current.alternate,e.finishedExpirationTime=n,o=rs,es=null,o){case Qu:case Ku:throw Error(r(345));case Xu:No(e,2=n){e.lastPingedTime=n,Kr(e,n);break}}if(i=Br(e),0!==i&&i!==n)break;if(0!==o&&o!==n){e.lastPingedTime=o;break}e.timeoutHandle=Si(oo.bind(null,e),a);break}oo(e);break;case Gu:if(To(e,n),o=e.lastSuspendedTime,n===o&&(e.nextKnownPendingLevel=ro(a)),ss&&(a=e.lastPingedTime,0===a||a>=n)){e.lastPingedTime=n,Kr(e,n);break}if(a=Br(e),0!==a&&a!==n)break;if(0!==o&&o!==n){e.lastPingedTime=o;break}if(1073741823!==is?o=10*(1073741821-is)-ru():1073741823===as?o=0:(o=10*(1073741821-as)-5e3,a=ru(),n=10*(1073741821-n)-a,o=a-o,0>o&&(o=0),o=(120>o?120:480>o?480:1080>o?1080:1920>o?1920:3e3>o?3e3:4320>o?4320:1960*Uu(o/1960))-o,n=o?o=0:(a=0|l.busyDelayMs,i=ru()-(10*(1073741821-i)-(0|l.timeoutMs||5e3)),o=i<=a?0:a+o-i),10 component higher in the tree to provide a loading indicator or placeholder to display."+N(i))}rs!==Zu&&(rs=Xu),l=yr(l,i),f=a;do{switch(f.tag){case 3:u=l,f.effectTag|=4096,f.expirationTime=t;var w=Ar(f,u,t);ln(f,w); break e;case 1:u=l;var E=f.type,k=f.stateNode;if(0===(64&f.effectTag)&&("function"==typeof E.getDerivedStateFromError||null!==k&&"function"==typeof k.componentDidCatch&&(null===ms||!ms.has(k)))){f.effectTag|=4096,f.expirationTime=t;var _=Ir(f,u,t);ln(f,_);break e}}f=f.return}while(null!==f)}ts=no(ts)}catch(e){t=e;continue}break}}function Yr(){var e=Bu.current;return Bu.current=Cu,null===e?Cu:e}function Gr(e,t){eus&&(us=e)}function Jr(){for(;null!==ts;)ts=to(ts)}function eo(){for(;null!==ts&&!Gl();)ts=to(ts)}function to(e){var t=Fu(e.alternate,e,ns);return e.memoizedProps=e.pendingProps,null===t&&(t=no(e)),qu.current=null,t}function no(e){ts=e;do{var t=ts.alternate;if(e=ts.return,0===(2048&ts.effectTag)){if(t=br(t,ts,ns),1===ns||1!==ts.childExpirationTime){for(var n=0,r=ts.child;null!==r;){var o=r.expirationTime,a=r.childExpirationTime;o>n&&(n=o),a>n&&(n=a),r=r.sibling}ts.childExpirationTime=n}if(null!==t)return t;null!==e&&0===(2048&e.effectTag)&&(null===e.firstEffect&&(e.firstEffect=ts.firstEffect),null!==ts.lastEffect&&(null!==e.lastEffect&&(e.lastEffect.nextEffect=ts.firstEffect),e.lastEffect=ts.lastEffect),1e?t:e}function oo(e){var t=qt();return Vt(99,ao.bind(null,e,t)),null}function ao(e,t){do lo();while(null!==gs);if((Ju&(Wu|$u))!==Hu)throw Error(r(327));var n=e.finishedWork,o=e.finishedExpirationTime;if(null===n)return null;if(e.finishedWork=null,e.finishedExpirationTime=0,n===e.current)throw Error(r(177));e.callbackNode=null,e.callbackExpirationTime=0,e.callbackPriority=90,e.nextKnownPendingLevel=0;var a=ro(n);if(e.firstPendingTime=a,o<=e.lastSuspendedTime?e.firstSuspendedTime=e.lastSuspendedTime=e.nextKnownPendingLevel=0:o<=e.firstSuspendedTime&&(e.firstSuspendedTime=o-1),o<=e.lastPingedTime&&(e.lastPingedTime=0),o<=e.lastExpiredTime&&(e.lastExpiredTime=0),e===es&&(ts=es=null,ns=0),1u&&(c=u,u=l,l=c),c=Ue(w,l),f=Ue(w,u),c&&f&&(1!==k.rangeCount||k.anchorNode!==c.node||k.anchorOffset!==c.offset||k.focusNode!==f.node||k.focusOffset!==f.offset)&&(E=E.createRange(),E.setStart(c.node,c.offset),k.removeAllRanges(),l>u?(k.addRange(E),k.extend(f.node,f.offset)):(E.setEnd(f.node,f.offset),k.addRange(E)))))),E=[];for(k=w;k=k.parentNode;)1===k.nodeType&&E.push({element:k,left:k.scrollLeft,top:k.scrollTop});for("function"==typeof w.focus&&w.focus(),w=0;w=t&&e<=t}function To(e,t){var n=e.firstSuspendedTime,r=e.lastSuspendedTime;nt||0===n)&&(e.lastSuspendedTime=t),t<=e.lastPingedTime&&(e.lastPingedTime=0),t<=e.lastExpiredTime&&(e.lastExpiredTime=0)}function Co(e,t){t>e.firstPendingTime&&(e.firstPendingTime=t);var n=e.firstSuspendedTime;0!==n&&(t>=n?e.firstSuspendedTime=e.lastSuspendedTime=e.nextKnownPendingLevel=0:t>=e.lastSuspendedTime&&(e.lastSuspendedTime=t+1),t>e.nextKnownPendingLevel&&(e.nextKnownPendingLevel=t))}function No(e,t){var n=e.lastExpiredTime;(0===n||n>t)&&(e.lastExpiredTime=t)}function Po(e,t,n,o){var a=t.current,i=Fr(),l=su.suspense;i=jr(i,a,l);e:if(n){n=n._reactInternalFiber;t:{if(J(n)!==n||1!==n.tag)throw Error(r(170));var u=n;do{switch(u.tag){case 3:u=u.stateNode.context;break t;case 1:if(It(u.type)){u=u.stateNode.__reactInternalMemoizedMergedChildContext;break t}}u=u.return}while(null!==u);throw Error(r(171))}if(1===n.tag){var s=n.type;if(It(s)){n=Dt(n,s,u);break e}}n=u}else n=Al;return null===t.context?t.context=n:t.pendingContext=n,t=on(i,l),t.payload={element:e},o=void 0===o?null:o,null!==o&&(t.callback=o),an(a,t),Dr(a,i),i}function Oo(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function Ro(e,t){e=e.memoizedState,null!==e&&null!==e.dehydrated&&e.retryTime