diff --git a/system/V3fanfarm-ubuntu-local/V3fanfarm-backend/fanfarm-db b/system/V3fanfarm-ubuntu-local/V3fanfarm-backend/fanfarm-db
index 80273c7..603e8f3 100644
--- a/system/V3fanfarm-ubuntu-local/V3fanfarm-backend/fanfarm-db
+++ b/system/V3fanfarm-ubuntu-local/V3fanfarm-backend/fanfarm-db
Binary files differ
diff --git a/system/V3fanfarm-ubuntu-local/V3fanfarm-backend/fanfarm.rb b/system/V3fanfarm-ubuntu-local/V3fanfarm-backend/fanfarm.rb
index dfea38b..f46ce7b 100755
--- a/system/V3fanfarm-ubuntu-local/V3fanfarm-backend/fanfarm.rb
+++ b/system/V3fanfarm-ubuntu-local/V3fanfarm-backend/fanfarm.rb
@@ -1132,7 +1132,6 @@
count = 0
if user['user_type'] == 'farmer'
- # 農家: 自分の求人への応募に対するメッセージ(最終既読以降)
result = db.execute(
"SELECT COUNT(*) as count FROM messages m
JOIN applications a ON m.application_id = a.id
@@ -1143,7 +1142,6 @@
).first
count = result['count'] || 0
else
- # 応募者: 自分の応募への返信メッセージ(最終既読以降)
result = db.execute(
"SELECT COUNT(*) as count FROM messages m
JOIN applications a ON m.application_id = a.id
@@ -1182,6 +1180,242 @@
end
end
+#################################################
+# 求人ごとの未読管理エンドポイント
+#################################################
+
+# 求人ごとの未読メッセージ数を取得
+get '/job_postings/:id/unread_count' do
+ job_id = params['id']
+ user_id = params['user_id']
+
+ if user_id.nil?
+ status 400
+ return { error: 'user_id is required' }.to_json
+ end
+
+ begin
+ # 既読状態を取得
+ read_status = db.execute(
+ 'SELECT last_individual_read_at, last_group_read_at FROM job_message_read_status WHERE user_id = ? AND job_posting_id = ?',
+ [user_id, job_id]
+ ).first
+
+ # 未設定の場合は24時間前を基準に
+ default_time = (Time.now - 86400).strftime("%Y-%m-%d %H:%M:%S")
+ last_individual_read = read_status ? (read_status['last_individual_read_at'] || default_time) : default_time
+ last_group_read = read_status ? (read_status['last_group_read_at'] || default_time) : default_time
+
+ # 個別メッセージの未読数(自分以外が送信したもの)
+ individual_result = db.execute(
+ "SELECT COUNT(*) as count FROM messages m
+ JOIN applications a ON m.application_id = a.id
+ WHERE a.job_posting_id = ? AND m.sender_id != ? AND m.created_at > ?",
+ [job_id, user_id, last_individual_read]
+ ).first
+ individual_count = individual_result['count'] || 0
+
+ # グループチャットの未読数(自分以外が送信したもの)
+ group_result = db.execute(
+ "SELECT COUNT(*) as count FROM group_chat_messages gcm
+ JOIN group_chat_members mem ON gcm.job_posting_id = mem.job_posting_id AND gcm.sender_id = mem.user_id
+ WHERE gcm.job_posting_id = ? AND gcm.sender_id != ? AND gcm.created_at > ?",
+ [job_id, user_id, last_group_read]
+ ).first
+ group_count = group_result['count'] || 0
+
+ total_count = individual_count + group_count
+
+ {
+ job_posting_id: job_id.to_i,
+ individual_unread: individual_count,
+ group_unread: group_count,
+ total_unread: total_count
+ }.to_json
+ rescue SQLite3::Exception => e
+ puts "❌ 未読数取得エラー: #{e.message}"
+ status 500
+ { error: e.message }.to_json
+ end
+end
+
+# 求人ごとにメッセージを既読にする
+post '/job_postings/:id/mark_read' do
+ job_id = params['id']
+ data = JSON.parse(request.body.read)
+ user_id = data['user_id']
+ read_type = data['type'] || 'all' # 'individual', 'group', 'all'
+
+ if user_id.nil?
+ status 400
+ return { error: 'user_id is required' }.to_json
+ end
+
+ begin
+ current_time = Time.now.localtime("+09:00").strftime("%Y-%m-%d %H:%M:%S")
+
+ # 既存レコードがあるか確認
+ existing = db.execute(
+ 'SELECT id FROM job_message_read_status WHERE user_id = ? AND job_posting_id = ?',
+ [user_id, job_id]
+ ).first
+
+ if existing
+ # 更新
+ case read_type
+ when 'individual'
+ db.execute(
+ 'UPDATE job_message_read_status SET last_individual_read_at = ? WHERE user_id = ? AND job_posting_id = ?',
+ [current_time, user_id, job_id]
+ )
+ when 'group'
+ db.execute(
+ 'UPDATE job_message_read_status SET last_group_read_at = ? WHERE user_id = ? AND job_posting_id = ?',
+ [current_time, user_id, job_id]
+ )
+ else # 'all'
+ db.execute(
+ 'UPDATE job_message_read_status SET last_individual_read_at = ?, last_group_read_at = ? WHERE user_id = ? AND job_posting_id = ?',
+ [current_time, current_time, user_id, job_id]
+ )
+ end
+ else
+ # 新規作成
+ individual_time = (read_type == 'individual' || read_type == 'all') ? current_time : nil
+ group_time = (read_type == 'group' || read_type == 'all') ? current_time : nil
+
+ db.execute(
+ 'INSERT INTO job_message_read_status (user_id, job_posting_id, last_individual_read_at, last_group_read_at) VALUES (?, ?, ?, ?)',
+ [user_id, job_id, individual_time, group_time]
+ )
+ end
+
+ puts "✅ 求人#{job_id}の既読マーク (type: #{read_type}): ユーザーID #{user_id}"
+
+ { success: true, job_posting_id: job_id.to_i, type: read_type, read_at: current_time }.to_json
+ rescue SQLite3::Exception => e
+ puts "❌ 既読マークエラー: #{e.message}"
+ status 500
+ { error: e.message }.to_json
+ end
+end
+
+# ユーザーの全求人の未読数を一括取得
+get '/users/:id/job_unread_counts' do
+ user_id = params['id']
+
+ begin
+ user = db.execute('SELECT user_type FROM users WHERE id = ?', [user_id]).first
+
+ if user.nil?
+ status 404
+ return { error: 'ユーザーが見つかりません' }.to_json
+ end
+
+ default_time = (Time.now - 86400).strftime("%Y-%m-%d %H:%M:%S")
+ results = []
+
+ if user['user_type'] == 'farmer'
+ # 農家: 自分の求人一覧を取得
+ jobs = db.execute('SELECT id FROM job_postings WHERE user_id = ? AND is_active = 1', [user_id])
+
+ jobs.each do |job|
+ job_id = job['id']
+
+ # 既読状態を取得
+ read_status = db.execute(
+ 'SELECT last_individual_read_at, last_group_read_at FROM job_message_read_status WHERE user_id = ? AND job_posting_id = ?',
+ [user_id, job_id]
+ ).first
+
+ last_individual_read = read_status ? (read_status['last_individual_read_at'] || default_time) : default_time
+ last_group_read = read_status ? (read_status['last_group_read_at'] || default_time) : default_time
+
+ # 個別メッセージの未読数
+ individual_result = db.execute(
+ "SELECT COUNT(*) as count FROM messages m
+ JOIN applications a ON m.application_id = a.id
+ WHERE a.job_posting_id = ? AND m.sender_id != ? AND m.created_at > ?",
+ [job_id, user_id, last_individual_read]
+ ).first
+ individual_count = individual_result['count'] || 0
+
+ # グループチャットの未読数
+ group_result = db.execute(
+ "SELECT COUNT(*) as count FROM group_chat_messages
+ WHERE job_posting_id = ? AND sender_id != ? AND created_at > ?",
+ [job_id, user_id, last_group_read]
+ ).first
+ group_count = group_result['count'] || 0
+
+ total = individual_count + group_count
+
+ if total > 0
+ results << {
+ job_posting_id: job_id,
+ individual_unread: individual_count,
+ group_unread: group_count,
+ total_unread: total
+ }
+ end
+ end
+ else
+ # 応募者: 自分が応募した求人一覧を取得
+ applications = db.execute(
+ "SELECT DISTINCT job_posting_id FROM applications WHERE applicant_id = ? AND status != 'cancelled'",
+ [user_id]
+ )
+
+ applications.each do |app|
+ job_id = app['job_posting_id']
+
+ # 既読状態を取得
+ read_status = db.execute(
+ 'SELECT last_individual_read_at, last_group_read_at FROM job_message_read_status WHERE user_id = ? AND job_posting_id = ?',
+ [user_id, job_id]
+ ).first
+
+ last_individual_read = read_status ? (read_status['last_individual_read_at'] || default_time) : default_time
+ last_group_read = read_status ? (read_status['last_group_read_at'] || default_time) : default_time
+
+ # 個別メッセージの未読数(自分の応募に対する返信)
+ individual_result = db.execute(
+ "SELECT COUNT(*) as count FROM messages m
+ JOIN applications a ON m.application_id = a.id
+ WHERE a.job_posting_id = ? AND a.applicant_id = ? AND m.sender_id != ? AND m.created_at > ?",
+ [job_id, user_id, user_id, last_individual_read]
+ ).first
+ individual_count = individual_result['count'] || 0
+
+ # グループチャットの未読数
+ group_result = db.execute(
+ "SELECT COUNT(*) as count FROM group_chat_messages
+ WHERE job_posting_id = ? AND sender_id != ? AND created_at > ?",
+ [job_id, user_id, last_group_read]
+ ).first
+ group_count = group_result['count'] || 0
+
+ total = individual_count + group_count
+
+ if total > 0
+ results << {
+ job_posting_id: job_id,
+ individual_unread: individual_count,
+ group_unread: group_count,
+ total_unread: total
+ }
+ end
+ end
+ end
+
+ { unread_counts: results }.to_json
+ rescue SQLite3::Exception => e
+ puts "❌ 未読数一括取得エラー: #{e.message}"
+ status 500
+ { error: e.message }.to_json
+ end
+end
+
# 応募ステータス更新
put '/applications/:id/status' do
application_id = params['id']
diff --git a/system/V3fanfarm-ubuntu-local/V3fanfarm-frontend/build/asset-manifest.json b/system/V3fanfarm-ubuntu-local/V3fanfarm-frontend/build/asset-manifest.json
index ee433a4..9958a9e 100644
--- a/system/V3fanfarm-ubuntu-local/V3fanfarm-frontend/build/asset-manifest.json
+++ b/system/V3fanfarm-ubuntu-local/V3fanfarm-frontend/build/asset-manifest.json
@@ -1,10 +1,10 @@
{
"files": {
- "main.js": "/nikko/fanfarm/static/js/main.af441d7a.js",
+ "main.js": "/nikko/fanfarm/static/js/main.1f9a5d93.js",
"index.html": "/nikko/fanfarm/index.html",
- "main.af441d7a.js.map": "/nikko/fanfarm/static/js/main.af441d7a.js.map"
+ "main.1f9a5d93.js.map": "/nikko/fanfarm/static/js/main.1f9a5d93.js.map"
},
"entrypoints": [
- "static/js/main.af441d7a.js"
+ "static/js/main.1f9a5d93.js"
]
}
\ No newline at end of file
diff --git a/system/V3fanfarm-ubuntu-local/V3fanfarm-frontend/build/index.html b/system/V3fanfarm-ubuntu-local/V3fanfarm-frontend/build/index.html
index ca19d57..763ec30 100644
--- a/system/V3fanfarm-ubuntu-local/V3fanfarm-frontend/build/index.html
+++ b/system/V3fanfarm-ubuntu-local/V3fanfarm-frontend/build/index.html
@@ -1 +1 @@
-
ファンファーム - 農業アルバイトマッチング
\ No newline at end of file
+ファンファーム - 農業アルバイトマッチング
\ No newline at end of file
diff --git a/system/V3fanfarm-ubuntu-local/V3fanfarm-frontend/build/static/js/main.1f9a5d93.js b/system/V3fanfarm-ubuntu-local/V3fanfarm-frontend/build/static/js/main.1f9a5d93.js
new file mode 100644
index 0000000..68e5909
--- /dev/null
+++ b/system/V3fanfarm-ubuntu-local/V3fanfarm-frontend/build/static/js/main.1f9a5d93.js
@@ -0,0 +1,3 @@
+/*! For license information please see main.1f9a5d93.js.LICENSE.txt */
+(()=>{var e={4:(e,t,n)=>{"use strict";var r=n(853),o=n(43),i=n(950);function a(e){var t="https://react.dev/errors/"+e;if(1D||(e.current=I[D],I[D]=null,D--)}function U(e,t){D++,I[D]=e.current,e.current=t}var W=F(null),Z=F(null),H=F(null),$=F(null);function V(e,t){switch(U(H,t),U(Z,e),U(W,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?od(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)e=id(t=od(t),e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(W),U(W,e)}function q(){B(W),B(Z),B(H)}function K(e){null!==e.memoizedState&&U($,e);var t=W.current,n=id(t,e.type);t!==n&&(U(Z,e),U(W,n))}function G(e){Z.current===e&&(B(W),B(Z)),$.current===e&&(B($),Kd._currentValue=M)}var Y=Object.prototype.hasOwnProperty,J=r.unstable_scheduleCallback,Q=r.unstable_cancelCallback,X=r.unstable_shouldYield,ee=r.unstable_requestPaint,te=r.unstable_now,ne=r.unstable_getCurrentPriorityLevel,re=r.unstable_ImmediatePriority,oe=r.unstable_UserBlockingPriority,ie=r.unstable_NormalPriority,ae=r.unstable_LowPriority,se=r.unstable_IdlePriority,le=r.log,ce=r.unstable_setDisableYieldValue,ue=null,de=null;function he(e){if("function"===typeof le&&ce(e),de&&"function"===typeof de.setStrictMode)try{de.setStrictMode(ue,e)}catch(t){}}var pe=Math.clz32?Math.clz32:function(e){return 0===(e>>>=0)?32:31-(fe(e)/me|0)|0},fe=Math.log,me=Math.LN2;var ge=256,ve=4194304;function ye(e){var t=42&e;if(0!==t)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194048&e;case 4194304:case 8388608:case 16777216:case 33554432:return 62914560&e;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function _e(e,t,n){var r=e.pendingLanes;if(0===r)return 0;var o=0,i=e.suspendedLanes,a=e.pingedLanes;e=e.warmLanes;var s=134217727&r;return 0!==s?0!==(r=s&~i)?o=ye(r):0!==(a&=s)?o=ye(a):n||0!==(n=s&~e)&&(o=ye(n)):0!==(s=r&~i)?o=ye(s):0!==a?o=ye(a):n||0!==(n=r&~e)&&(o=ye(n)),0===o?0:0!==t&&t!==o&&0===(t&i)&&((i=o&-o)>=(n=t&-t)||32===i&&0!==(4194048&n))?t:o}function xe(e,t){return 0===(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)}function be(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function we(){var e=ge;return 0===(4194048&(ge<<=1))&&(ge=256),e}function ke(){var e=ve;return 0===(62914560&(ve<<=1))&&(ve=4194304),e}function Se(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function je(e,t){e.pendingLanes|=t,268435456!==t&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Pe(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-pe(t);e.entangledLanes|=t,e.entanglements[r]=1073741824|e.entanglements[r]|4194090&n}function Ee(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-pe(n),o=1<)":-1--o||l[r]!==c[o]){var u="\n"+l[r].replace(" at new "," at ");return e.displayName&&u.includes("")&&(u=u.replace("",e.displayName)),u}}while(1<=r&&0<=o);break}}}finally{it=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?ot(n):""}function st(e){switch(e.tag){case 26:case 27:case 5:return ot(e.type);case 16:return ot("Lazy");case 13:return ot("Suspense");case 19:return ot("SuspenseList");case 0:case 15:return at(e.type,!1);case 11:return at(e.type.render,!1);case 1:return at(e.type,!0);case 31:return ot("Activity");default:return""}}function lt(e){try{var t="";do{t+=st(e),e=e.return}while(e);return t}catch(n){return"\nError generating stack: "+n.message+"\n"+n.stack}}function ct(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function ut(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function dt(e){e._valueTracker||(e._valueTracker=function(e){var t=ut(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&"undefined"!==typeof n&&"function"===typeof n.get&&"function"===typeof n.set){var o=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(e){r=""+e,i.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function ht(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=ut(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function pt(e){if("undefined"===typeof(e=e||("undefined"!==typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}var ft=/[\n"\\]/g;function mt(e){return e.replace(ft,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gt(e,t,n,r,o,i,a,s){e.name="",null!=a&&"function"!==typeof a&&"symbol"!==typeof a&&"boolean"!==typeof a?e.type=a:e.removeAttribute("type"),null!=t?"number"===a?(0===t&&""===e.value||e.value!=t)&&(e.value=""+ct(t)):e.value!==""+ct(t)&&(e.value=""+ct(t)):"submit"!==a&&"reset"!==a||e.removeAttribute("value"),null!=t?yt(e,a,ct(t)):null!=n?yt(e,a,ct(n)):null!=r&&e.removeAttribute("value"),null==o&&null!=i&&(e.defaultChecked=!!i),null!=o&&(e.checked=o&&"function"!==typeof o&&"symbol"!==typeof o),null!=s&&"function"!==typeof s&&"symbol"!==typeof s&&"boolean"!==typeof s?e.name=""+ct(s):e.removeAttribute("name")}function vt(e,t,n,r,o,i,a,s){if(null!=i&&"function"!==typeof i&&"symbol"!==typeof i&&"boolean"!==typeof i&&(e.type=i),null!=t||null!=n){if(!("submit"!==i&&"reset"!==i||void 0!==t&&null!==t))return;n=null!=n?""+ct(n):"",t=null!=t?""+ct(t):n,s||t===e.value||(e.value=t),e.defaultValue=t}r="function"!==typeof(r=null!=r?r:o)&&"symbol"!==typeof r&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,null!=a&&"function"!==typeof a&&"symbol"!==typeof a&&"boolean"!==typeof a&&(e.name=a)}function yt(e,t,n){"number"===t&&pt(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function _t(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o=kn),Pn=String.fromCharCode(32),En=!1;function Cn(e,t){switch(e){case"keyup":return-1!==bn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Tn(e){return"object"===typeof(e=e.detail)&&"data"in e?e.data:null}var Ln=!1;var zn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function On(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!zn[e.type]:"textarea"===t}function Rn(e,t,n,r){Ot?Rt?Rt.push(r):Rt=[r]:Ot=r,0<(t=Hu(t,"onChange")).length&&(n=new Xt("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var An=null,Nn=null;function Mn(e){Mu(e,0)}function In(e){if(ht(Ze(e)))return e}function Dn(e,t){if("change"===e)return t}var Fn=!1;if(Dt){var Bn;if(Dt){var Un="oninput"in document;if(!Un){var Wn=document.createElement("div");Wn.setAttribute("oninput","return;"),Un="function"===typeof Wn.oninput}Bn=Un}else Bn=!1;Fn=Bn&&(!document.documentMode||9=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=Jn(r)}}function Xn(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?Xn(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function er(e){for(var t=pt((e=null!=e&&null!=e.ownerDocument&&null!=e.ownerDocument.defaultView?e.ownerDocument.defaultView:window).document);t instanceof e.HTMLIFrameElement;){try{var n="string"===typeof t.contentWindow.location.href}catch(r){n=!1}if(!n)break;t=pt((e=t.contentWindow).document)}return t}function tr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}var nr=Dt&&"documentMode"in document&&11>=document.documentMode,rr=null,or=null,ir=null,ar=!1;function sr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;ar||null==rr||rr!==pt(r)||("selectionStart"in(r=rr)&&tr(r)?r={start:r.selectionStart,end:r.selectionEnd}:r={anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},ir&&Yn(ir,r)||(ir=r,0<(r=Hu(or,"onSelect")).length&&(t=new Xt("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=rr)))}function lr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var cr={animationend:lr("Animation","AnimationEnd"),animationiteration:lr("Animation","AnimationIteration"),animationstart:lr("Animation","AnimationStart"),transitionrun:lr("Transition","TransitionRun"),transitionstart:lr("Transition","TransitionStart"),transitioncancel:lr("Transition","TransitionCancel"),transitionend:lr("Transition","TransitionEnd")},ur={},dr={};function hr(e){if(ur[e])return ur[e];if(!cr[e])return e;var t,n=cr[e];for(t in n)if(n.hasOwnProperty(t)&&t in dr)return ur[e]=n[t];return e}Dt&&(dr=document.createElement("div").style,"AnimationEvent"in window||(delete cr.animationend.animation,delete cr.animationiteration.animation,delete cr.animationstart.animation),"TransitionEvent"in window||delete cr.transitionend.transition);var pr=hr("animationend"),fr=hr("animationiteration"),mr=hr("animationstart"),gr=hr("transitionrun"),vr=hr("transitionstart"),yr=hr("transitioncancel"),_r=hr("transitionend"),xr=new Map,br="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function wr(e,t){xr.set(e,t),Ke(t,[e])}br.push("scrollEnd");var kr=new WeakMap;function Sr(e,t){if("object"===typeof e&&null!==e){var n=kr.get(e);return void 0!==n?n:(t={value:e,source:t,stack:lt(t)},kr.set(e,t),t)}return{value:e,source:t,stack:lt(t)}}var jr=[],Pr=0,Er=0;function Cr(){for(var e=Pr,t=Er=Pr=0;t>=a,o-=a,Jr=1<<32-pe(t)+o|n<i?i:8;var a=A.T,s={};A.T=s,Ua(e,!1,t,n);try{var l=o(),c=A.S;if(null!==c&&c(s,l),null!==l&&"object"===typeof l&&"function"===typeof l.then)Ba(e,t,function(e,t){var n=[],r={status:"pending",value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status="fulfilled",r.value=t;for(var e=0;ef?(m=d,d=null):m=d.sibling;var g=p(o,d,s[f],l);if(null===g){null===d&&(d=m);break}e&&d&&null===g.alternate&&t(o,d),a=i(g,a,f),null===u?c=g:u.sibling=g,u=g,d=m}if(f===s.length)return n(o,d),io&&Xr(o,f),c;if(null===d){for(;fm?(g=f,f=null):g=f.sibling;var _=p(o,f,y.value,c);if(null===_){null===f&&(f=g);break}e&&f&&null===_.alternate&&t(o,f),s=i(_,s,m),null===d?u=_:d.sibling=_,d=_,f=g}if(y.done)return n(o,f),io&&Xr(o,m),u;if(null===f){for(;!y.done;m++,y=l.next())null!==(y=h(o,y.value,c))&&(s=i(y,s,m),null===d?u=y:d.sibling=y,d=y);return io&&Xr(o,m),u}for(f=r(f);!y.done;m++,y=l.next())null!==(y=v(f,o,m,y.value,c))&&(e&&null!==y.alternate&&f.delete(null===y.key?m:y.key),s=i(y,s,m),null===d?u=y:d.sibling=y,d=y);return e&&f.forEach(function(e){return t(o,e)}),io&&Xr(o,m),u}(l,c,u=_.call(u),d)}if("function"===typeof u.then)return y(l,c,Ja(u),d);if(u.$$typeof===b)return y(l,c,Co(l,u),d);Xa(l,u)}return"string"===typeof u&&""!==u||"number"===typeof u||"bigint"===typeof u?(u=""+u,null!==c&&6===c.tag?(n(l,c.sibling),(d=o(c,u)).return=l,l=d):(n(l,c),(d=Wr(u,l.mode,d)).return=l,l=d),s(l)):n(l,c)}return function(e,t,n,r){try{Ya=0;var o=y(e,t,n,r);return Ga=null,o}catch(a){if(a===Vo||a===Ko)throw a;var i=Mr(29,a,null,e.mode);return i.lanes=r,i.return=e,i}}}var ns=ts(!0),rs=ts(!1),os=F(null),is=null;function as(e){var t=e.alternate;U(us,1&us.current),U(os,e),null===is&&(null===t||null!==fi.current||null!==t.memoizedState)&&(is=e)}function ss(e){if(22===e.tag){if(U(us,us.current),U(os,e),null===is){var t=e.alternate;null!==t&&null!==t.memoizedState&&(is=e)}}else ls()}function ls(){U(us,us.current),U(os,os.current)}function cs(e){B(os),is===e&&(is=null),B(us)}var us=F(0);function ds(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||gd(n)))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!==(128&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}function hs(e,t,n,r){n=null===(n=n(r,t=e.memoizedState))||void 0===n?t:h({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var ps={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Ac(),o=ii(r);o.payload=t,void 0!==n&&null!==n&&(o.callback=n),null!==(t=ai(e,o,r))&&(Mc(t,e,r),si(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Ac(),o=ii(r);o.tag=1,o.payload=t,void 0!==n&&null!==n&&(o.callback=n),null!==(t=ai(e,o,r))&&(Mc(t,e,r),si(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Ac(),r=ii(n);r.tag=2,void 0!==t&&null!==t&&(r.callback=t),null!==(t=ai(e,r,n))&&(Mc(t,e,n),si(t,e,n))}};function fs(e,t,n,r,o,i,a){return"function"===typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,i,a):!t.prototype||!t.prototype.isPureReactComponent||(!Yn(n,r)||!Yn(o,i))}function ms(e,t,n,r){e=t.state,"function"===typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,r),"function"===typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&ps.enqueueReplaceState(t,t.state,null)}function gs(e,t){var n=t;if("ref"in t)for(var r in n={},t)"ref"!==r&&(n[r]=t[r]);if(e=e.defaultProps)for(var o in n===t&&(n=h({},n)),e)void 0===n[o]&&(n[o]=e[o]);return n}var vs="function"===typeof reportError?reportError:function(e){if("object"===typeof window&&"function"===typeof window.ErrorEvent){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"===typeof e&&null!==e&&"string"===typeof e.message?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if("object"===typeof process&&"function"===typeof process.emit)return void process.emit("uncaughtException",e);console.error(e)};function ys(e){vs(e)}function _s(e){console.error(e)}function xs(e){vs(e)}function bs(e,t){try{(0,e.onUncaughtError)(t.value,{componentStack:t.stack})}catch(n){setTimeout(function(){throw n})}}function ws(e,t,n){try{(0,e.onCaughtError)(n.value,{componentStack:n.stack,errorBoundary:1===t.tag?t.stateNode:null})}catch(r){setTimeout(function(){throw r})}}function ks(e,t,n){return(n=ii(n)).tag=3,n.payload={element:null},n.callback=function(){bs(e,t)},n}function Ss(e){return(e=ii(e)).tag=3,e}function js(e,t,n,r){var o=n.type.getDerivedStateFromError;if("function"===typeof o){var i=r.value;e.payload=function(){return o(i)},e.callback=function(){ws(t,n,r)}}var a=n.stateNode;null!==a&&"function"===typeof a.componentDidCatch&&(e.callback=function(){ws(t,n,r),"function"!==typeof o&&(null===Sc?Sc=new Set([this]):Sc.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:null!==e?e:""})})}var Ps=Error(a(461)),Es=!1;function Cs(e,t,n,r){t.child=null===e?rs(t,null,n,r):ns(t,e.child,n,r)}function Ts(e,t,n,r,o){n=n.render;var i=t.ref;if("ref"in r){var a={};for(var s in r)"ref"!==s&&(a[s]=r[s])}else a=r;return Po(t),r=Oi(e,t,n,a,i,o),s=Mi(),null===e||Es?(io&&s&&to(t),t.flags|=1,Cs(e,t,r,o),t.child):(Ii(e,t,o),Gs(e,t,o))}function Ls(e,t,n,r,o){if(null===e){var i=n.type;return"function"!==typeof i||Ir(i)||void 0!==i.defaultProps||null!==n.compare?((e=Br(n.type,null,r,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=i,zs(e,t,i,r,o))}if(i=e.child,!Ys(e,o)){var a=i.memoizedProps;if((n=null!==(n=n.compare)?n:Yn)(a,r)&&e.ref===t.ref)return Gs(e,t,o)}return t.flags|=1,(e=Dr(i,r)).ref=t.ref,e.return=t,t.child=e}function zs(e,t,n,r,o){if(null!==e){var i=e.memoizedProps;if(Yn(i,r)&&e.ref===t.ref){if(Es=!1,t.pendingProps=r=i,!Ys(e,o))return t.lanes=e.lanes,Gs(e,t,o);0!==(131072&e.flags)&&(Es=!0)}}return Ns(e,t,n,r,o)}function Os(e,t,n){var r=t.pendingProps,o=r.children,i=null!==e?e.memoizedState:null;if("hidden"===r.mode){if(0!==(128&t.flags)){if(r=null!==i?i.baseLanes|n:n,null!==e){for(o=t.child=e.child,i=0;null!==o;)i=i|o.lanes|o.childLanes,o=o.sibling;t.childLanes=i&~r}else t.childLanes=0,t.child=null;return Rs(e,t,r,n)}if(0===(536870912&n))return t.lanes=t.childLanes=536870912,Rs(e,t,null!==i?i.baseLanes|n:n,n);t.memoizedState={baseLanes:0,cachePool:null},null!==e&&Ho(0,null!==i?i.cachePool:null),null!==i?gi(t,i):vi(),ss(t)}else null!==i?(Ho(0,i.cachePool),gi(t,i),ls(),t.memoizedState=null):(null!==e&&Ho(0,null),vi(),ls());return Cs(e,t,o,n),t.child}function Rs(e,t,n,r){var o=Zo();return o=null===o?null:{parent:Ro._currentValue,pool:o},t.memoizedState={baseLanes:n,cachePool:o},null!==e&&Ho(0,null),vi(),ss(t),null!==e&&So(e,t,r,!0),null}function As(e,t){var n=t.ref;if(null===n)null!==e&&null!==e.ref&&(t.flags|=4194816);else{if("function"!==typeof n&&"object"!==typeof n)throw Error(a(284));null!==e&&e.ref===n||(t.flags|=4194816)}}function Ns(e,t,n,r,o){return Po(t),n=Oi(e,t,n,r,void 0,o),r=Mi(),null===e||Es?(io&&r&&to(t),t.flags|=1,Cs(e,t,n,o),t.child):(Ii(e,t,o),Gs(e,t,o))}function Ms(e,t,n,r,o,i){return Po(t),t.updateQueue=null,n=Ai(t,r,n,o),Ri(e),r=Mi(),null===e||Es?(io&&r&&to(t),t.flags|=1,Cs(e,t,n,i),t.child):(Ii(e,t,i),Gs(e,t,i))}function Is(e,t,n,r,o){if(Po(t),null===t.stateNode){var i=Ar,a=n.contextType;"object"===typeof a&&null!==a&&(i=Eo(a)),i=new n(r,i),t.memoizedState=null!==i.state&&void 0!==i.state?i.state:null,i.updater=ps,t.stateNode=i,i._reactInternals=t,(i=t.stateNode).props=r,i.state=t.memoizedState,i.refs={},ri(t),a=n.contextType,i.context="object"===typeof a&&null!==a?Eo(a):Ar,i.state=t.memoizedState,"function"===typeof(a=n.getDerivedStateFromProps)&&(hs(t,n,a,r),i.state=t.memoizedState),"function"===typeof n.getDerivedStateFromProps||"function"===typeof i.getSnapshotBeforeUpdate||"function"!==typeof i.UNSAFE_componentWillMount&&"function"!==typeof i.componentWillMount||(a=i.state,"function"===typeof i.componentWillMount&&i.componentWillMount(),"function"===typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount(),a!==i.state&&ps.enqueueReplaceState(i,i.state,null),di(t,r,i,o),ui(),i.state=t.memoizedState),"function"===typeof i.componentDidMount&&(t.flags|=4194308),r=!0}else if(null===e){i=t.stateNode;var s=t.memoizedProps,l=gs(n,s);i.props=l;var c=i.context,u=n.contextType;a=Ar,"object"===typeof u&&null!==u&&(a=Eo(u));var d=n.getDerivedStateFromProps;u="function"===typeof d||"function"===typeof i.getSnapshotBeforeUpdate,s=t.pendingProps!==s,u||"function"!==typeof i.UNSAFE_componentWillReceiveProps&&"function"!==typeof i.componentWillReceiveProps||(s||c!==a)&&ms(t,i,r,a),ni=!1;var h=t.memoizedState;i.state=h,di(t,r,i,o),ui(),c=t.memoizedState,s||h!==c||ni?("function"===typeof d&&(hs(t,n,d,r),c=t.memoizedState),(l=ni||fs(t,n,l,r,h,c,a))?(u||"function"!==typeof i.UNSAFE_componentWillMount&&"function"!==typeof i.componentWillMount||("function"===typeof i.componentWillMount&&i.componentWillMount(),"function"===typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount()),"function"===typeof i.componentDidMount&&(t.flags|=4194308)):("function"===typeof i.componentDidMount&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=c),i.props=r,i.state=c,i.context=a,r=l):("function"===typeof i.componentDidMount&&(t.flags|=4194308),r=!1)}else{i=t.stateNode,oi(e,t),u=gs(n,a=t.memoizedProps),i.props=u,d=t.pendingProps,h=i.context,c=n.contextType,l=Ar,"object"===typeof c&&null!==c&&(l=Eo(c)),(c="function"===typeof(s=n.getDerivedStateFromProps)||"function"===typeof i.getSnapshotBeforeUpdate)||"function"!==typeof i.UNSAFE_componentWillReceiveProps&&"function"!==typeof i.componentWillReceiveProps||(a!==d||h!==l)&&ms(t,i,r,l),ni=!1,h=t.memoizedState,i.state=h,di(t,r,i,o),ui();var p=t.memoizedState;a!==d||h!==p||ni||null!==e&&null!==e.dependencies&&jo(e.dependencies)?("function"===typeof s&&(hs(t,n,s,r),p=t.memoizedState),(u=ni||fs(t,n,u,r,h,p,l)||null!==e&&null!==e.dependencies&&jo(e.dependencies))?(c||"function"!==typeof i.UNSAFE_componentWillUpdate&&"function"!==typeof i.componentWillUpdate||("function"===typeof i.componentWillUpdate&&i.componentWillUpdate(r,p,l),"function"===typeof i.UNSAFE_componentWillUpdate&&i.UNSAFE_componentWillUpdate(r,p,l)),"function"===typeof i.componentDidUpdate&&(t.flags|=4),"function"===typeof i.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!==typeof i.componentDidUpdate||a===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof i.getSnapshotBeforeUpdate||a===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),i.props=r,i.state=p,i.context=l,r=u):("function"!==typeof i.componentDidUpdate||a===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof i.getSnapshotBeforeUpdate||a===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),r=!1)}return i=r,As(e,t),r=0!==(128&t.flags),i||r?(i=t.stateNode,n=r&&"function"!==typeof n.getDerivedStateFromError?null:i.render(),t.flags|=1,null!==e&&r?(t.child=ns(t,e.child,null,o),t.child=ns(t,null,n,o)):Cs(e,t,n,o),t.memoizedState=i.state,e=t.child):e=Gs(e,t,o),e}function Ds(e,t,n,r){return fo(),t.flags|=256,Cs(e,t,n,r),t.child}var Fs={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Bs(e){return{baseLanes:e,cachePool:$o()}}function Us(e,t,n){return e=null!==e?e.childLanes&~n:0,t&&(e|=gc),e}function Ws(e,t,n){var r,o=t.pendingProps,i=!1,s=0!==(128&t.flags);if((r=s)||(r=(null===e||null!==e.memoizedState)&&0!==(2&us.current)),r&&(i=!0,t.flags&=-129),r=0!==(32&t.flags),t.flags&=-33,null===e){if(io){if(i?as(t):ls(),io){var l,c=oo;if(l=c){e:{for(l=c,c=so;8!==l.nodeType;){if(!c){c=null;break e}if(null===(l=vd(l.nextSibling))){c=null;break e}}c=l}null!==c?(t.memoizedState={dehydrated:c,treeContext:null!==Yr?{id:Jr,overflow:Qr}:null,retryLane:536870912,hydrationErrors:null},(l=Mr(18,null,null,0)).stateNode=c,l.return=t,t.child=l,ro=t,oo=null,l=!0):l=!1}l||co(t)}if(null!==(c=t.memoizedState)&&null!==(c=c.dehydrated))return gd(c)?t.lanes=32:t.lanes=536870912,null;cs(t)}return c=o.children,o=o.fallback,i?(ls(),c=Hs({mode:"hidden",children:c},i=t.mode),o=Ur(o,i,n,null),c.return=t,o.return=t,c.sibling=o,t.child=c,(i=t.child).memoizedState=Bs(n),i.childLanes=Us(e,r,n),t.memoizedState=Fs,o):(as(t),Zs(t,c))}if(null!==(l=e.memoizedState)&&null!==(c=l.dehydrated)){if(s)256&t.flags?(as(t),t.flags&=-257,t=$s(e,t,n)):null!==t.memoizedState?(ls(),t.child=e.child,t.flags|=128,t=null):(ls(),i=o.fallback,c=t.mode,o=Hs({mode:"visible",children:o.children},c),(i=Ur(i,c,n,null)).flags|=2,o.return=t,i.return=t,o.sibling=i,t.child=o,ns(t,e.child,null,n),(o=t.child).memoizedState=Bs(n),o.childLanes=Us(e,r,n),t.memoizedState=Fs,t=i);else if(as(t),gd(c)){if(r=c.nextSibling&&c.nextSibling.dataset)var u=r.dgst;r=u,(o=Error(a(419))).stack="",o.digest=r,go({value:o,source:null,stack:null}),t=$s(e,t,n)}else if(Es||So(e,t,n,!1),r=0!==(n&e.childLanes),Es||r){if(null!==(r=rc)&&(0!==(o=0!==((o=0!==(42&(o=n&-n))?1:Ce(o))&(r.suspendedLanes|n))?0:o)&&o!==l.retryLane))throw l.retryLane=o,zr(e,o),Mc(r,e,o),Ps;"$?"===c.data||qc(),t=$s(e,t,n)}else"$?"===c.data?(t.flags|=192,t.child=e.child,t=null):(e=l.treeContext,oo=vd(c.nextSibling),ro=t,io=!0,ao=null,so=!1,null!==e&&(Kr[Gr++]=Jr,Kr[Gr++]=Qr,Kr[Gr++]=Yr,Jr=e.id,Qr=e.overflow,Yr=t),(t=Zs(t,o.children)).flags|=4096);return t}return i?(ls(),i=o.fallback,c=t.mode,u=(l=e.child).sibling,(o=Dr(l,{mode:"hidden",children:o.children})).subtreeFlags=65011712&l.subtreeFlags,null!==u?i=Dr(u,i):(i=Ur(i,c,n,null)).flags|=2,i.return=t,o.return=t,o.sibling=i,t.child=o,o=i,i=t.child,null===(c=e.child.memoizedState)?c=Bs(n):(null!==(l=c.cachePool)?(u=Ro._currentValue,l=l.parent!==u?{parent:u,pool:u}:l):l=$o(),c={baseLanes:c.baseLanes|n,cachePool:l}),i.memoizedState=c,i.childLanes=Us(e,r,n),t.memoizedState=Fs,o):(as(t),e=(n=e.child).sibling,(n=Dr(n,{mode:"visible",children:o.children})).return=t,n.sibling=null,null!==e&&(null===(r=t.deletions)?(t.deletions=[e],t.flags|=16):r.push(e)),t.child=n,t.memoizedState=null,n)}function Zs(e,t){return(t=Hs({mode:"visible",children:t},e.mode)).return=e,e.child=t}function Hs(e,t){return(e=Mr(22,e,null,t)).lanes=0,e.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null},e}function $s(e,t,n){return ns(t,e.child,null,n),(e=Zs(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Vs(e,t,n){e.lanes|=t;var r=e.alternate;null!==r&&(r.lanes|=t),wo(e.return,t,n)}function qs(e,t,n,r,o){var i=e.memoizedState;null===i?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:o}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=o)}function Ks(e,t,n){var r=t.pendingProps,o=r.revealOrder,i=r.tail;if(Cs(e,t,r.children,n),0!==(2&(r=us.current)))r=1&r|2,t.flags|=128;else{if(null!==e&&0!==(128&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Vs(e,n,t);else if(19===e.tag)Vs(e,n,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}switch(U(us,r),o){case"forwards":for(n=t.child,o=null;null!==n;)null!==(e=n.alternate)&&null===ds(e)&&(o=n),n=n.sibling;null===(n=o)?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),qs(t,!1,o,n,i);break;case"backwards":for(n=null,o=t.child,t.child=null;null!==o;){if(null!==(e=o.alternate)&&null===ds(e)){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}qs(t,!0,n,null,i);break;case"together":qs(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Gs(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),pc|=t.lanes,0===(n&t.childLanes)){if(null===e)return null;if(So(e,t,n,!1),0===(n&t.childLanes))return null}if(null!==e&&t.child!==e.child)throw Error(a(153));if(null!==t.child){for(n=Dr(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Dr(e,e.pendingProps)).return=t;n.sibling=null}return t.child}function Ys(e,t){return 0!==(e.lanes&t)||!(null===(e=e.dependencies)||!jo(e))}function Js(e,t,n){if(null!==e)if(e.memoizedProps!==t.pendingProps)Es=!0;else{if(!Ys(e,n)&&0===(128&t.flags))return Es=!1,function(e,t,n){switch(t.tag){case 3:V(t,t.stateNode.containerInfo),xo(0,Ro,e.memoizedState.cache),fo();break;case 27:case 5:K(t);break;case 4:V(t,t.stateNode.containerInfo);break;case 10:xo(0,t.type,t.memoizedProps.value);break;case 13:var r=t.memoizedState;if(null!==r)return null!==r.dehydrated?(as(t),t.flags|=128,null):0!==(n&t.child.childLanes)?Ws(e,t,n):(as(t),null!==(e=Gs(e,t,n))?e.sibling:null);as(t);break;case 19:var o=0!==(128&e.flags);if((r=0!==(n&t.childLanes))||(So(e,t,n,!1),r=0!==(n&t.childLanes)),o){if(r)return Ks(e,t,n);t.flags|=128}if(null!==(o=t.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),U(us,us.current),r)break;return null;case 22:case 23:return t.lanes=0,Os(e,t,n);case 24:xo(0,Ro,e.memoizedState.cache)}return Gs(e,t,n)}(e,t,n);Es=0!==(131072&e.flags)}else Es=!1,io&&0!==(1048576&t.flags)&&eo(t,qr,t.index);switch(t.lanes=0,t.tag){case 16:e:{e=t.pendingProps;var r=t.elementType,o=r._init;if(r=o(r._payload),t.type=r,"function"!==typeof r){if(void 0!==r&&null!==r){if((o=r.$$typeof)===w){t.tag=11,t=Ts(null,t,r,e,n);break e}if(o===j){t.tag=14,t=Ls(null,t,r,e,n);break e}}throw t=O(r)||r,Error(a(306,t,""))}Ir(r)?(e=gs(r,e),t.tag=1,t=Is(null,t,r,e,n)):(t.tag=0,t=Ns(null,t,r,e,n))}return t;case 0:return Ns(e,t,t.type,t.pendingProps,n);case 1:return Is(e,t,r=t.type,o=gs(r,t.pendingProps),n);case 3:e:{if(V(t,t.stateNode.containerInfo),null===e)throw Error(a(387));r=t.pendingProps;var i=t.memoizedState;o=i.element,oi(e,t),di(t,r,null,n);var s=t.memoizedState;if(r=s.cache,xo(0,Ro,r),r!==i.cache&&ko(t,[Ro],n,!0),ui(),r=s.element,i.isDehydrated){if(i={element:r,isDehydrated:!1,cache:s.cache},t.updateQueue.baseState=i,t.memoizedState=i,256&t.flags){t=Ds(e,t,r,n);break e}if(r!==o){go(o=Sr(Error(a(424)),t)),t=Ds(e,t,r,n);break e}if(9===(e=t.stateNode.containerInfo).nodeType)e=e.body;else e="HTML"===e.nodeName?e.ownerDocument.body:e;for(oo=vd(e.firstChild),ro=t,io=!0,ao=null,so=!0,n=rs(t,null,r,n),t.child=n;n;)n.flags=-3&n.flags|4096,n=n.sibling}else{if(fo(),r===o){t=Gs(e,t,n);break e}Cs(e,t,r,n)}t=t.child}return t;case 26:return As(e,t),null===e?(n=Cd(t.type,null,t.pendingProps,null))?t.memoizedState=n:io||(n=t.type,e=t.pendingProps,(r=rd(H.current).createElement(n))[Oe]=t,r[Re]=e,ed(r,n,e),$e(r),t.stateNode=r):t.memoizedState=Cd(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return K(t),null===e&&io&&(r=t.stateNode=xd(t.type,t.pendingProps,H.current),ro=t,so=!0,o=oo,pd(t.type)?(yd=o,oo=vd(r.firstChild)):oo=o),Cs(e,t,t.pendingProps.children,n),As(e,t),null===e&&(t.flags|=4194304),t.child;case 5:return null===e&&io&&((o=r=oo)&&(null!==(r=function(e,t,n,r){for(;1===e.nodeType;){var o=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&("INPUT"!==e.nodeName||"hidden"!==e.type))break}else if(r){if(!e[Fe])switch(t){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if("stylesheet"===(i=e.getAttribute("rel"))&&e.hasAttribute("data-precedence"))break;if(i!==o.rel||e.getAttribute("href")!==(null==o.href||""===o.href?null:o.href)||e.getAttribute("crossorigin")!==(null==o.crossOrigin?null:o.crossOrigin)||e.getAttribute("title")!==(null==o.title?null:o.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(((i=e.getAttribute("src"))!==(null==o.src?null:o.src)||e.getAttribute("type")!==(null==o.type?null:o.type)||e.getAttribute("crossorigin")!==(null==o.crossOrigin?null:o.crossOrigin))&&i&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else{if("input"!==t||"hidden"!==e.type)return e;var i=null==o.name?null:""+o.name;if("hidden"===o.type&&e.getAttribute("name")===i)return e}if(null===(e=vd(e.nextSibling)))break}return null}(r,t.type,t.pendingProps,so))?(t.stateNode=r,ro=t,oo=vd(r.firstChild),so=!1,o=!0):o=!1),o||co(t)),K(t),o=t.type,i=t.pendingProps,s=null!==e?e.memoizedProps:null,r=i.children,ad(o,i)?r=null:null!==s&&ad(o,s)&&(t.flags|=32),null!==t.memoizedState&&(o=Oi(e,t,Ni,null,null,n),Kd._currentValue=o),As(e,t),Cs(e,t,r,n),t.child;case 6:return null===e&&io&&((e=n=oo)&&(null!==(n=function(e,t,n){if(""===t)return null;for(;3!==e.nodeType;){if((1!==e.nodeType||"INPUT"!==e.nodeName||"hidden"!==e.type)&&!n)return null;if(null===(e=vd(e.nextSibling)))return null}return e}(n,t.pendingProps,so))?(t.stateNode=n,ro=t,oo=null,e=!0):e=!1),e||co(t)),null;case 13:return Ws(e,t,n);case 4:return V(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=ns(t,null,r,n):Cs(e,t,r,n),t.child;case 11:return Ts(e,t,t.type,t.pendingProps,n);case 7:return Cs(e,t,t.pendingProps,n),t.child;case 8:case 12:return Cs(e,t,t.pendingProps.children,n),t.child;case 10:return r=t.pendingProps,xo(0,t.type,r.value),Cs(e,t,r.children,n),t.child;case 9:return o=t.type._context,r=t.pendingProps.children,Po(t),r=r(o=Eo(o)),t.flags|=1,Cs(e,t,r,n),t.child;case 14:return Ls(e,t,t.type,t.pendingProps,n);case 15:return zs(e,t,t.type,t.pendingProps,n);case 19:return Ks(e,t,n);case 31:return r=t.pendingProps,n=t.mode,r={mode:r.mode,children:r.children},null===e?((n=Hs(r,n)).ref=t.ref,t.child=n,n.return=t,t=n):((n=Dr(e.child,r)).ref=t.ref,t.child=n,n.return=t,t=n),t;case 22:return Os(e,t,n);case 24:return Po(t),r=Eo(Ro),null===e?(null===(o=Zo())&&(o=rc,i=Ao(),o.pooledCache=i,i.refCount++,null!==i&&(o.pooledCacheLanes|=n),o=i),t.memoizedState={parent:r,cache:o},ri(t),xo(0,Ro,o)):(0!==(e.lanes&n)&&(oi(e,t),di(t,null,null,n),ui()),o=e.memoizedState,i=t.memoizedState,o.parent!==r?(o={parent:r,cache:r},t.memoizedState=o,0===t.lanes&&(t.memoizedState=t.updateQueue.baseState=o),xo(0,Ro,r)):(r=i.cache,xo(0,Ro,r),r!==o.cache&&ko(t,[Ro],n,!0))),Cs(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(a(156,t.tag))}function Qs(e){e.flags|=4}function Xs(e,t){if("stylesheet"!==t.type||0!==(4&t.state.loading))e.flags&=-16777217;else if(e.flags|=16777216,!Ud(t)){if(null!==(t=os.current)&&((4194048&ic)===ic?null!==is:(62914560&ic)!==ic&&0===(536870912&ic)||t!==is))throw Xo=Go,qo;e.flags|=8192}}function el(e,t){null!==t&&(e.flags|=4),16384&e.flags&&(t=22!==e.tag?ke():536870912,e.lanes|=t,vc|=t)}function tl(e,t){if(!io)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function nl(e){var t=null!==e.alternate&&e.alternate.child===e.child,n=0,r=0;if(t)for(var o=e.child;null!==o;)n|=o.lanes|o.childLanes,r|=65011712&o.subtreeFlags,r|=65011712&o.flags,o.return=e,o=o.sibling;else for(o=e.child;null!==o;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags,r|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function rl(e,t,n){var r=t.pendingProps;switch(no(t),t.tag){case 31:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:case 1:return nl(t),null;case 3:return n=t.stateNode,r=null,null!==e&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),bo(Ro),q(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),null!==e&&null!==e.child||(po(t)?Qs(t):null===e||e.memoizedState.isDehydrated&&0===(256&t.flags)||(t.flags|=1024,mo())),nl(t),null;case 26:return n=t.memoizedState,null===e?(Qs(t),null!==n?(nl(t),Xs(t,n)):(nl(t),t.flags&=-16777217)):n?n!==e.memoizedState?(Qs(t),nl(t),Xs(t,n)):(nl(t),t.flags&=-16777217):(e.memoizedProps!==r&&Qs(t),nl(t),t.flags&=-16777217),null;case 27:G(t),n=H.current;var o=t.type;if(null!==e&&null!=t.stateNode)e.memoizedProps!==r&&Qs(t);else{if(!r){if(null===t.stateNode)throw Error(a(166));return nl(t),null}e=W.current,po(t)?uo(t):(e=xd(o,r,n),t.stateNode=e,Qs(t))}return nl(t),null;case 5:if(G(t),n=t.type,null!==e&&null!=t.stateNode)e.memoizedProps!==r&&Qs(t);else{if(!r){if(null===t.stateNode)throw Error(a(166));return nl(t),null}if(e=W.current,po(t))uo(t);else{switch(o=rd(H.current),e){case 1:e=o.createElementNS("http://www.w3.org/2000/svg",n);break;case 2:e=o.createElementNS("http://www.w3.org/1998/Math/MathML",n);break;default:switch(n){case"svg":e=o.createElementNS("http://www.w3.org/2000/svg",n);break;case"math":e=o.createElementNS("http://www.w3.org/1998/Math/MathML",n);break;case"script":(e=o.createElement("div")).innerHTML="