[{"data":1,"prerenderedAt":2739},["ShallowReactive",2],{"docs-nav":3,"doc-\u002Fdocs\u002Foauth-oidc":79,"content-query-R4QrCYdZ97":1542},[4,10,15,19,23,28,34,38,43,47,52,57,61,66,70,74],{"_path":5,"title":6,"description":7,"order":8,"category":9},"\u002Fdocs\u002Fapi-reference","API Reference","Overview of the Vaultaris REST API — endpoints, authentication, response conventions, and rate limiting.",1,"Reference",{"_path":11,"title":12,"description":13,"order":14,"category":9},"\u002Fdocs\u002Farchitecture","Architecture","System design overview — components, request lifecycle, background workers, and data flow in Vaultaris.",4,{"_path":16,"title":17,"description":18,"order":8,"category":17},"\u002Fdocs\u002Fconcepts","Core Concepts","Understand the building blocks of Vaultaris — tenants, users, roles, groups, applications, sessions, and the security primitives that connect them.",{"_path":20,"title":21,"description":22,"order":8,"category":21},"\u002Fdocs\u002Fconfiguration","Configuration","Complete reference for all Vaultaris environment variables.",{"_path":24,"title":25,"description":26,"order":8,"category":27},"\u002Fdocs\u002Fdeployment","Deployment Guide","Deploy Vaultaris to production using Docker Compose, bare metal, or a managed container platform.","Deployment",{"_path":29,"title":30,"description":31,"order":32,"category":33},"\u002Fdocs\u002Finstallation","Installation","Install Vaultaris using Docker, a pre-built binary, or by compiling from source.",3,"Getting Started",{"_path":35,"title":36,"description":37,"order":8,"category":33},"\u002Fdocs\u002Fintroduction","Introduction","Vaultaris is an open-source, enterprise-grade Identity and Access Management platform written in Rust — a self-hostable alternative to Keycloak and Auth0.",{"_path":39,"title":40,"description":41,"order":42,"category":27},"\u002Fdocs\u002Fkubernetes","Kubernetes","Deploy Vaultaris on Kubernetes using the official Helm chart or plain manifests.",2,{"_path":44,"title":45,"description":46,"order":42,"category":17},"\u002Fdocs\u002Fmulti-tenancy","Multi-Tenancy","How Vaultaris isolates organizations, supports SaaS use cases, and manages license-driven resource freezing.",{"_path":48,"title":49,"description":50,"order":8,"category":51},"\u002Fdocs\u002Foauth-oidc","OAuth 2.0 & OpenID Connect","How to integrate Vaultaris as an authorization server — authorization code, client credentials, password flows, DPoP sender-constrained tokens, and hosted login.","Authentication & Authorization",{"_path":53,"title":54,"description":55,"order":8,"category":56},"\u002Fdocs\u002Fplugins","Plugin Development","Extend Vaultaris with type-safe native Rust plugins.","Plugins",{"_path":58,"title":59,"description":60,"order":42,"category":33},"\u002Fdocs\u002Fquickstart","Quickstart","Run Vaultaris locally in under five minutes using Docker Compose.",{"_path":62,"title":63,"description":64,"order":42,"category":65},"\u002Fdocs\u002Fsdk-nodejs","Node.js SDK","Use the vaultaris-sdk package to integrate Vaultaris into your Node.js or TypeScript applications. Includes transparent DPoP support.","SDKs",{"_path":67,"title":68,"description":69,"order":8,"category":65},"\u002Fdocs\u002Fsdk-rust","Rust SDK","Use the vaultaris-sdk crate to interact with Vaultaris from your Rust applications. Includes transparent DPoP support.",{"_path":71,"title":72,"description":73,"order":32,"category":9},"\u002Fdocs\u002Fsecurity","Security","Security architecture, cryptographic choices, and hardening recommendations for Vaultaris.",{"_path":75,"title":76,"description":77,"order":78,"category":51},"\u002Fdocs\u002Fwebauthn","WebAuthn \u002F Passkeys \u002F FIDO2","Complete guide to integrating WebAuthn passwordless authentication and passkeys with Vaultaris.",5,{"_path":48,"_dir":80,"_draft":81,"_partial":81,"_locale":82,"title":49,"description":50,"order":8,"category":51,"body":83,"_type":1536,"_id":1537,"_source":1538,"_file":1539,"_stem":1540,"_extension":1541},"docs",false,"",{"type":84,"children":85,"toc":1510},"root",[86,111,118,198,204,217,226,255,261,305,311,319,324,480,486,494,500,508,514,548,554,577,583,637,643,820,826,831,837,944,950,971,977,989,997,1023,1029,1042,1048,1066,1072,1103,1108,1116,1122,1142,1200,1205,1262,1274,1280,1484,1504],{"type":87,"tag":88,"props":89,"children":90},"element","p",{},[91,94,101,103,109],{"type":92,"value":93},"text","Vaultaris implements RFC 6749 (OAuth 2.0), OpenID Connect Core 1.0, and RFC 9449 (DPoP). OIDC discovery document at ",{"type":87,"tag":95,"props":96,"children":98},"code",{"className":97},[],[99],{"type":92,"value":100},"GET \u002F.well-known\u002Fopenid-configuration",{"type":92,"value":102},". JWK set at ",{"type":87,"tag":95,"props":104,"children":106},{"className":105},[],[107],{"type":92,"value":108},"GET \u002F.well-known\u002Fjwks.json",{"type":92,"value":110},".",{"type":87,"tag":112,"props":113,"children":115},"h2",{"id":114},"supported-grant-types",[116],{"type":92,"value":117},"Supported grant types",{"type":87,"tag":119,"props":120,"children":121},"table",{},[122,141],{"type":87,"tag":123,"props":124,"children":125},"thead",{},[126],{"type":87,"tag":127,"props":128,"children":129},"tr",{},[130,136],{"type":87,"tag":131,"props":132,"children":133},"th",{},[134],{"type":92,"value":135},"Grant",{"type":87,"tag":131,"props":137,"children":138},{},[139],{"type":92,"value":140},"Use case",{"type":87,"tag":142,"props":143,"children":144},"tbody",{},[145,159,172,185],{"type":87,"tag":127,"props":146,"children":147},{},[148,154],{"type":87,"tag":149,"props":150,"children":151},"td",{},[152],{"type":92,"value":153},"Authorization code + PKCE",{"type":87,"tag":149,"props":155,"children":156},{},[157],{"type":92,"value":158},"Web apps, mobile apps, SPAs (recommended)",{"type":87,"tag":127,"props":160,"children":161},{},[162,167],{"type":87,"tag":149,"props":163,"children":164},{},[165],{"type":92,"value":166},"Client credentials",{"type":87,"tag":149,"props":168,"children":169},{},[170],{"type":92,"value":171},"Server-to-server (machine auth)",{"type":87,"tag":127,"props":173,"children":174},{},[175,180],{"type":87,"tag":149,"props":176,"children":177},{},[178],{"type":92,"value":179},"Password (ROPC)",{"type":87,"tag":149,"props":181,"children":182},{},[183],{"type":92,"value":184},"Legacy integrations, CLIs, trusted first-party apps",{"type":87,"tag":127,"props":186,"children":187},{},[188,193],{"type":87,"tag":149,"props":189,"children":190},{},[191],{"type":92,"value":192},"Refresh token",{"type":87,"tag":149,"props":194,"children":195},{},[196],{"type":92,"value":197},"Obtaining new access tokens without re-authentication",{"type":87,"tag":112,"props":199,"children":201},{"id":200},"authorization-code-flow-recommended",[202],{"type":92,"value":203},"Authorization code flow (recommended)",{"type":87,"tag":205,"props":206,"children":208},"h3",{"id":207},"step-1-redirect-user-to-oauthauthorize",[209,211],{"type":92,"value":210},"Step 1 — Redirect user to ",{"type":87,"tag":95,"props":212,"children":214},{"className":213},[],[215],{"type":92,"value":216},"\u002Foauth\u002Fauthorize",{"type":87,"tag":218,"props":219,"children":221},"pre",{"code":220},"GET \u002Foauth\u002Fauthorize\n  ?response_type=code\n  &client_id={client_id}\n  &redirect_uri={uri}\n  &scope=openid profile email\n  &state={random_state}\n  &code_challenge={S256_challenge}\n  &code_challenge_method=S256\n",[222],{"type":87,"tag":95,"props":223,"children":224},{"__ignoreMap":82},[225],{"type":92,"value":220},{"type":87,"tag":88,"props":227,"children":228},{},[229,231,237,239,245,247,253],{"type":92,"value":230},"PKCE is mandatory for public clients (",{"type":87,"tag":95,"props":232,"children":234},{"className":233},[],[235],{"type":92,"value":236},"client_type=public",{"type":92,"value":238},"). Generate a 43–128 character random ",{"type":87,"tag":95,"props":240,"children":242},{"className":241},[],[243],{"type":92,"value":244},"code_verifier",{"type":92,"value":246},"; the ",{"type":87,"tag":95,"props":248,"children":250},{"className":249},[],[251],{"type":92,"value":252},"code_challenge",{"type":92,"value":254}," is its SHA-256 base64url encoding.",{"type":87,"tag":205,"props":256,"children":258},{"id":257},"step-2-consent",[259],{"type":92,"value":260},"Step 2 — Consent",{"type":87,"tag":88,"props":262,"children":263},{},[264,266,272,274,280,282,288,290,296,298,304],{"type":92,"value":265},"Vaultaris redirects the user to ",{"type":87,"tag":95,"props":267,"children":269},{"className":268},[],[270],{"type":92,"value":271},"{EXTERNAL_URL}\u002Fconsent\u002F{request_id}",{"type":92,"value":273},". Retrieve details: ",{"type":87,"tag":95,"props":275,"children":277},{"className":276},[],[278],{"type":92,"value":279},"GET \u002Foauth\u002Fconsent\u002F{request_id}",{"type":92,"value":281},". Approve: ",{"type":87,"tag":95,"props":283,"children":285},{"className":284},[],[286],{"type":92,"value":287},"POST \u002Foauth\u002Fconsent\u002F{request_id}\u002Fapprove",{"type":92,"value":289}," with ",{"type":87,"tag":95,"props":291,"children":293},{"className":292},[],[294],{"type":92,"value":295},"{ \"approved_scopes\": [\"openid\",\"profile\"] }",{"type":92,"value":297},". Deny: ",{"type":87,"tag":95,"props":299,"children":301},{"className":300},[],[302],{"type":92,"value":303},"POST \u002Foauth\u002Fconsent\u002F{request_id}\u002Fdeny",{"type":92,"value":110},{"type":87,"tag":205,"props":306,"children":308},{"id":307},"step-3-exchange-code-for-tokens",[309],{"type":92,"value":310},"Step 3 — Exchange code for tokens",{"type":87,"tag":218,"props":312,"children":314},{"code":313},"POST \u002Foauth\u002Ftoken\nContent-Type: application\u002Fx-www-form-urlencoded\n\ngrant_type=authorization_code\n&code={code}\n&redirect_uri={uri}\n&client_id={client_id}\n&client_secret={client_secret}   # confidential clients only\n&code_verifier={verifier}         # public clients\n",[315],{"type":87,"tag":95,"props":316,"children":317},{"__ignoreMap":82},[318],{"type":92,"value":313},{"type":87,"tag":88,"props":320,"children":321},{},[322],{"type":92,"value":323},"Response:",{"type":87,"tag":218,"props":325,"children":329},{"code":326,"language":327,"meta":82,"className":328,"style":82},"{\n  \"access_token\": \"eyJ...\",\n  \"token_type\": \"Bearer\",\n  \"expires_in\": 3600,\n  \"refresh_token\": \"eyJ...\",\n  \"id_token\": \"eyJ...\",\n  \"scope\": \"openid profile email\"\n}\n","json","language-json shiki shiki-themes github-dark-dimmed github-light",[330],{"type":87,"tag":95,"props":331,"children":332},{"__ignoreMap":82},[333,344,369,390,412,432,453,471],{"type":87,"tag":334,"props":335,"children":337},"span",{"class":336,"line":8},"line",[338],{"type":87,"tag":334,"props":339,"children":341},{"style":340},"--shiki-default:#ADBAC7;--shiki-light:#24292E",[342],{"type":92,"value":343},"{\n",{"type":87,"tag":334,"props":345,"children":346},{"class":336,"line":42},[347,353,358,364],{"type":87,"tag":334,"props":348,"children":350},{"style":349},"--shiki-default:#8DDB8C;--shiki-light:#005CC5",[351],{"type":92,"value":352},"  \"access_token\"",{"type":87,"tag":334,"props":354,"children":355},{"style":340},[356],{"type":92,"value":357},": ",{"type":87,"tag":334,"props":359,"children":361},{"style":360},"--shiki-default:#96D0FF;--shiki-light:#032F62",[362],{"type":92,"value":363},"\"eyJ...\"",{"type":87,"tag":334,"props":365,"children":366},{"style":340},[367],{"type":92,"value":368},",\n",{"type":87,"tag":334,"props":370,"children":371},{"class":336,"line":32},[372,377,381,386],{"type":87,"tag":334,"props":373,"children":374},{"style":349},[375],{"type":92,"value":376},"  \"token_type\"",{"type":87,"tag":334,"props":378,"children":379},{"style":340},[380],{"type":92,"value":357},{"type":87,"tag":334,"props":382,"children":383},{"style":360},[384],{"type":92,"value":385},"\"Bearer\"",{"type":87,"tag":334,"props":387,"children":388},{"style":340},[389],{"type":92,"value":368},{"type":87,"tag":334,"props":391,"children":392},{"class":336,"line":14},[393,398,402,408],{"type":87,"tag":334,"props":394,"children":395},{"style":349},[396],{"type":92,"value":397},"  \"expires_in\"",{"type":87,"tag":334,"props":399,"children":400},{"style":340},[401],{"type":92,"value":357},{"type":87,"tag":334,"props":403,"children":405},{"style":404},"--shiki-default:#6CB6FF;--shiki-light:#005CC5",[406],{"type":92,"value":407},"3600",{"type":87,"tag":334,"props":409,"children":410},{"style":340},[411],{"type":92,"value":368},{"type":87,"tag":334,"props":413,"children":414},{"class":336,"line":78},[415,420,424,428],{"type":87,"tag":334,"props":416,"children":417},{"style":349},[418],{"type":92,"value":419},"  \"refresh_token\"",{"type":87,"tag":334,"props":421,"children":422},{"style":340},[423],{"type":92,"value":357},{"type":87,"tag":334,"props":425,"children":426},{"style":360},[427],{"type":92,"value":363},{"type":87,"tag":334,"props":429,"children":430},{"style":340},[431],{"type":92,"value":368},{"type":87,"tag":334,"props":433,"children":435},{"class":336,"line":434},6,[436,441,445,449],{"type":87,"tag":334,"props":437,"children":438},{"style":349},[439],{"type":92,"value":440},"  \"id_token\"",{"type":87,"tag":334,"props":442,"children":443},{"style":340},[444],{"type":92,"value":357},{"type":87,"tag":334,"props":446,"children":447},{"style":360},[448],{"type":92,"value":363},{"type":87,"tag":334,"props":450,"children":451},{"style":340},[452],{"type":92,"value":368},{"type":87,"tag":334,"props":454,"children":456},{"class":336,"line":455},7,[457,462,466],{"type":87,"tag":334,"props":458,"children":459},{"style":349},[460],{"type":92,"value":461},"  \"scope\"",{"type":87,"tag":334,"props":463,"children":464},{"style":340},[465],{"type":92,"value":357},{"type":87,"tag":334,"props":467,"children":468},{"style":360},[469],{"type":92,"value":470},"\"openid profile email\"\n",{"type":87,"tag":334,"props":472,"children":474},{"class":336,"line":473},8,[475],{"type":87,"tag":334,"props":476,"children":477},{"style":340},[478],{"type":92,"value":479},"}\n",{"type":87,"tag":112,"props":481,"children":483},{"id":482},"client-credentials-flow",[484],{"type":92,"value":485},"Client credentials flow",{"type":87,"tag":218,"props":487,"children":489},{"code":488},"POST \u002Foauth\u002Ftoken\nContent-Type: application\u002Fx-www-form-urlencoded\n\ngrant_type=client_credentials\n&client_id={client_id}\n&client_secret={client_secret}\n&scope=api:read\n",[490],{"type":87,"tag":95,"props":491,"children":492},{"__ignoreMap":82},[493],{"type":92,"value":488},{"type":87,"tag":112,"props":495,"children":497},{"id":496},"refresh-token-flow",[498],{"type":92,"value":499},"Refresh token flow",{"type":87,"tag":218,"props":501,"children":503},{"code":502},"POST \u002Foauth\u002Ftoken\nContent-Type: application\u002Fx-www-form-urlencoded\n\ngrant_type=refresh_token\n&refresh_token={token}\n&client_id={client_id}\n&client_secret={client_secret}\n",[504],{"type":87,"tag":95,"props":505,"children":506},{"__ignoreMap":82},[507],{"type":92,"value":502},{"type":87,"tag":112,"props":509,"children":511},{"id":510},"token-introspection",[512],{"type":92,"value":513},"Token introspection",{"type":87,"tag":88,"props":515,"children":516},{},[517,523,525,531,533,539,541,547],{"type":87,"tag":95,"props":518,"children":520},{"className":519},[],[521],{"type":92,"value":522},"POST \u002Foauth\u002Fintrospect",{"type":92,"value":524}," (form-encoded ",{"type":87,"tag":95,"props":526,"children":528},{"className":527},[],[529],{"type":92,"value":530},"token",{"type":92,"value":532},", ",{"type":87,"tag":95,"props":534,"children":536},{"className":535},[],[537],{"type":92,"value":538},"token_type_hint",{"type":92,"value":540},", client credentials). Returns ",{"type":87,"tag":95,"props":542,"children":544},{"className":543},[],[545],{"type":92,"value":546},"{ active, sub, client_id, scope, exp, tenant_id }",{"type":92,"value":110},{"type":87,"tag":112,"props":549,"children":551},{"id":550},"token-revocation",[552],{"type":92,"value":553},"Token revocation",{"type":87,"tag":88,"props":555,"children":556},{},[557,563,564,569,570,575],{"type":87,"tag":95,"props":558,"children":560},{"className":559},[],[561],{"type":92,"value":562},"POST \u002Foauth\u002Frevoke",{"type":92,"value":524},{"type":87,"tag":95,"props":565,"children":567},{"className":566},[],[568],{"type":92,"value":530},{"type":92,"value":532},{"type":87,"tag":95,"props":571,"children":573},{"className":572},[],[574],{"type":92,"value":538},{"type":92,"value":576},", client credentials).",{"type":87,"tag":112,"props":578,"children":580},{"id":579},"userinfo-endpoint",[581],{"type":92,"value":582},"UserInfo endpoint",{"type":87,"tag":88,"props":584,"children":585},{},[586,592,593,599,601,607,608,614,615,621,622,628,629,635],{"type":87,"tag":95,"props":587,"children":589},{"className":588},[],[590],{"type":92,"value":591},"GET \u002Foauth\u002Fuserinfo",{"type":92,"value":289},{"type":87,"tag":95,"props":594,"children":596},{"className":595},[],[597],{"type":92,"value":598},"Authorization: Bearer {access_token}",{"type":92,"value":600},". Returns ",{"type":87,"tag":95,"props":602,"children":604},{"className":603},[],[605],{"type":92,"value":606},"sub",{"type":92,"value":532},{"type":87,"tag":95,"props":609,"children":611},{"className":610},[],[612],{"type":92,"value":613},"email",{"type":92,"value":532},{"type":87,"tag":95,"props":616,"children":618},{"className":617},[],[619],{"type":92,"value":620},"email_verified",{"type":92,"value":532},{"type":87,"tag":95,"props":623,"children":625},{"className":624},[],[626],{"type":92,"value":627},"name",{"type":92,"value":532},{"type":87,"tag":95,"props":630,"children":632},{"className":631},[],[633],{"type":92,"value":634},"preferred_username",{"type":92,"value":636},", and other claims based on granted scopes.",{"type":87,"tag":112,"props":638,"children":640},{"id":639},"scopes",[641],{"type":92,"value":642},"Scopes",{"type":87,"tag":119,"props":644,"children":645},{},[646,662],{"type":87,"tag":123,"props":647,"children":648},{},[649],{"type":87,"tag":127,"props":650,"children":651},{},[652,657],{"type":87,"tag":131,"props":653,"children":654},{},[655],{"type":92,"value":656},"Scope",{"type":87,"tag":131,"props":658,"children":659},{},[660],{"type":92,"value":661},"Claims included",{"type":87,"tag":142,"props":663,"children":664},{},[665,713,767,792],{"type":87,"tag":127,"props":666,"children":667},{},[668,677],{"type":87,"tag":149,"props":669,"children":670},{},[671],{"type":87,"tag":95,"props":672,"children":674},{"className":673},[],[675],{"type":92,"value":676},"openid",{"type":87,"tag":149,"props":678,"children":679},{},[680,685,686,692,693,699,700,706,707],{"type":87,"tag":95,"props":681,"children":683},{"className":682},[],[684],{"type":92,"value":606},{"type":92,"value":532},{"type":87,"tag":95,"props":687,"children":689},{"className":688},[],[690],{"type":92,"value":691},"iss",{"type":92,"value":532},{"type":87,"tag":95,"props":694,"children":696},{"className":695},[],[697],{"type":92,"value":698},"aud",{"type":92,"value":532},{"type":87,"tag":95,"props":701,"children":703},{"className":702},[],[704],{"type":92,"value":705},"exp",{"type":92,"value":532},{"type":87,"tag":95,"props":708,"children":710},{"className":709},[],[711],{"type":92,"value":712},"iat",{"type":87,"tag":127,"props":714,"children":715},{},[716,725],{"type":87,"tag":149,"props":717,"children":718},{},[719],{"type":87,"tag":95,"props":720,"children":722},{"className":721},[],[723],{"type":92,"value":724},"profile",{"type":87,"tag":149,"props":726,"children":727},{},[728,733,734,740,741,747,748,753,754,760,761],{"type":87,"tag":95,"props":729,"children":731},{"className":730},[],[732],{"type":92,"value":627},{"type":92,"value":532},{"type":87,"tag":95,"props":735,"children":737},{"className":736},[],[738],{"type":92,"value":739},"given_name",{"type":92,"value":532},{"type":87,"tag":95,"props":742,"children":744},{"className":743},[],[745],{"type":92,"value":746},"family_name",{"type":92,"value":532},{"type":87,"tag":95,"props":749,"children":751},{"className":750},[],[752],{"type":92,"value":634},{"type":92,"value":532},{"type":87,"tag":95,"props":755,"children":757},{"className":756},[],[758],{"type":92,"value":759},"locale",{"type":92,"value":532},{"type":87,"tag":95,"props":762,"children":764},{"className":763},[],[765],{"type":92,"value":766},"zoneinfo",{"type":87,"tag":127,"props":768,"children":769},{},[770,778],{"type":87,"tag":149,"props":771,"children":772},{},[773],{"type":87,"tag":95,"props":774,"children":776},{"className":775},[],[777],{"type":92,"value":613},{"type":87,"tag":149,"props":779,"children":780},{},[781,786,787],{"type":87,"tag":95,"props":782,"children":784},{"className":783},[],[785],{"type":92,"value":613},{"type":92,"value":532},{"type":87,"tag":95,"props":788,"children":790},{"className":789},[],[791],{"type":92,"value":620},{"type":87,"tag":127,"props":793,"children":794},{},[795,804],{"type":87,"tag":149,"props":796,"children":797},{},[798],{"type":87,"tag":95,"props":799,"children":801},{"className":800},[],[802],{"type":92,"value":803},"phone",{"type":87,"tag":149,"props":805,"children":806},{},[807,813,814],{"type":87,"tag":95,"props":808,"children":810},{"className":809},[],[811],{"type":92,"value":812},"phone_number",{"type":92,"value":532},{"type":87,"tag":95,"props":815,"children":817},{"className":816},[],[818],{"type":92,"value":819},"phone_number_verified",{"type":87,"tag":112,"props":821,"children":823},{"id":822},"dpop-sender-constrained-tokens-rfc-9449",[824],{"type":92,"value":825},"DPoP — Sender-Constrained Tokens (RFC 9449)",{"type":87,"tag":88,"props":827,"children":828},{},[829],{"type":92,"value":830},"DPoP binds an access token to a specific client key pair, making stolen tokens useless without the private key.",{"type":87,"tag":205,"props":832,"children":834},{"id":833},"how-it-works",[835],{"type":92,"value":836},"How it works",{"type":87,"tag":838,"props":839,"children":840},"ol",{},[841,847,919,932],{"type":87,"tag":842,"props":843,"children":844},"li",{},[845],{"type":92,"value":846},"The client generates an asymmetric key pair (ed25519 or P-256) at startup and retains the private key.",{"type":87,"tag":842,"props":848,"children":849},{},[850,852,858,860,866,868],{"type":92,"value":851},"On every token request, the client sends a ",{"type":87,"tag":95,"props":853,"children":855},{"className":854},[],[856],{"type":92,"value":857},"DPoP",{"type":92,"value":859}," header containing a signed JWT (",{"type":87,"tag":95,"props":861,"children":863},{"className":862},[],[864],{"type":92,"value":865},"dpop_proof",{"type":92,"value":867},") that includes:\n",{"type":87,"tag":869,"props":870,"children":871},"ul",{},[872,883,902],{"type":87,"tag":842,"props":873,"children":874},{},[875,881],{"type":87,"tag":95,"props":876,"children":878},{"className":877},[],[879],{"type":92,"value":880},"jwk",{"type":92,"value":882}," — the public key",{"type":87,"tag":842,"props":884,"children":885},{},[886,892,894,900],{"type":87,"tag":95,"props":887,"children":889},{"className":888},[],[890],{"type":92,"value":891},"htm",{"type":92,"value":893}," \u002F ",{"type":87,"tag":95,"props":895,"children":897},{"className":896},[],[898],{"type":92,"value":899},"htu",{"type":92,"value":901}," — HTTP method and URL",{"type":87,"tag":842,"props":903,"children":904},{},[905,910,911,917],{"type":87,"tag":95,"props":906,"children":908},{"className":907},[],[909],{"type":92,"value":712},{"type":92,"value":893},{"type":87,"tag":95,"props":912,"children":914},{"className":913},[],[915],{"type":92,"value":916},"jti",{"type":92,"value":918}," — timestamp and unique nonce",{"type":87,"tag":842,"props":920,"children":921},{},[922,924,930],{"type":92,"value":923},"Vaultaris binds the issued token to the public key's thumbprint (",{"type":87,"tag":95,"props":925,"children":927},{"className":926},[],[928],{"type":92,"value":929},"cnf.jkt",{"type":92,"value":931}," claim).",{"type":87,"tag":842,"props":933,"children":934},{},[935,937,942],{"type":92,"value":936},"On every resource request, the client presents both the access token and a fresh ",{"type":87,"tag":95,"props":938,"children":940},{"className":939},[],[941],{"type":92,"value":857},{"type":92,"value":943}," proof. Vaultaris verifies the proof signature and rejects requests where the key doesn't match.",{"type":87,"tag":205,"props":945,"children":947},{"id":946},"sdk-support",[948],{"type":92,"value":949},"SDK support",{"type":87,"tag":88,"props":951,"children":952},{},[953,955,961,963,969],{"type":92,"value":954},"The Vaultaris Rust and Node.js SDKs include transparent DPoP support — pass a ",{"type":87,"tag":95,"props":956,"children":958},{"className":957},[],[959],{"type":92,"value":960},"DpopSigner",{"type":92,"value":962}," when constructing the client and the SDK handles proof generation automatically. Browser apps can use the ",{"type":87,"tag":95,"props":964,"children":966},{"className":965},[],[967],{"type":92,"value":968},"sdk-web",{"type":92,"value":970}," package which implements DPoP via the Web Crypto API.",{"type":87,"tag":205,"props":972,"children":974},{"id":973},"manual-integration",[975],{"type":92,"value":976},"Manual integration",{"type":87,"tag":88,"props":978,"children":979},{},[980,982,987],{"type":92,"value":981},"Add the ",{"type":87,"tag":95,"props":983,"children":985},{"className":984},[],[986],{"type":92,"value":857},{"type":92,"value":988}," header to the token endpoint request:",{"type":87,"tag":218,"props":990,"children":992},{"code":991},"POST \u002Foauth\u002Ftoken\nDPoP: eyJhbGciOiJFZERTQSIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IkVkMjU1MTkiLCJ4IjoiLi4uIn19.eyJqdGkiOiJ1bmlxdWUiLCJodG0iOiJQT1NUIiwiaHR1IjoiaHR0cHM6Ly9hdXRoLmV4YW1wbGUuY29tL29hdXRoL3Rva2VuIiwiaWF0IjoxNzE2MDAwMDAwfQ.{signature}\n",[993],{"type":87,"tag":95,"props":994,"children":995},{"__ignoreMap":82},[996],{"type":92,"value":991},{"type":87,"tag":88,"props":998,"children":999},{},[1000,1002,1007,1009,1014,1016,1021],{"type":92,"value":1001},"Subsequent API calls require a fresh ",{"type":87,"tag":95,"props":1003,"children":1005},{"className":1004},[],[1006],{"type":92,"value":857},{"type":92,"value":1008}," proof for each request (different ",{"type":87,"tag":95,"props":1010,"children":1012},{"className":1011},[],[1013],{"type":92,"value":916},{"type":92,"value":1015}," and ",{"type":87,"tag":95,"props":1017,"children":1019},{"className":1018},[],[1020],{"type":92,"value":712},{"type":92,"value":1022},").",{"type":87,"tag":112,"props":1024,"children":1026},{"id":1025},"hosted-login",[1027],{"type":92,"value":1028},"Hosted Login",{"type":87,"tag":88,"props":1030,"children":1031},{},[1032,1034,1040],{"type":92,"value":1033},"Vaultaris provides a white-label login page for each tenant at ",{"type":87,"tag":95,"props":1035,"children":1037},{"className":1036},[],[1038],{"type":92,"value":1039},"\u002Fhosted\u002F{tenant_slug}\u002Flogin",{"type":92,"value":1041},". This page is configurable with tenant branding (logo, colors, custom CSS).",{"type":87,"tag":205,"props":1043,"children":1045},{"id":1044},"config-endpoint",[1046],{"type":92,"value":1047},"Config endpoint",{"type":87,"tag":88,"props":1049,"children":1050},{},[1051,1057,1059,1065],{"type":87,"tag":95,"props":1052,"children":1054},{"className":1053},[],[1055],{"type":92,"value":1056},"GET \u002Fapi\u002Fv1\u002Fhosted\u002F{tenant_slug}\u002Fconfig",{"type":92,"value":1058}," — returns tenant branding, enabled auth methods, IdP list, MFA settings, and ",{"type":87,"tag":95,"props":1060,"children":1062},{"className":1061},[],[1063],{"type":92,"value":1064},"default_client_id",{"type":92,"value":110},{"type":87,"tag":205,"props":1067,"children":1069},{"id":1068},"supported-methods-in-hosted-login",[1070],{"type":92,"value":1071},"Supported methods in hosted login",{"type":87,"tag":869,"props":1073,"children":1074},{},[1075,1080,1093,1098],{"type":87,"tag":842,"props":1076,"children":1077},{},[1078],{"type":92,"value":1079},"Username + password",{"type":87,"tag":842,"props":1081,"children":1082},{},[1083,1085,1091],{"type":92,"value":1084},"TOTP MFA (via ",{"type":87,"tag":95,"props":1086,"children":1088},{"className":1087},[],[1089],{"type":92,"value":1090},"\u002Fapi\u002Fv1\u002Fhosted\u002F{slug}\u002Fmfa\u002Fverify",{"type":92,"value":1092},")",{"type":87,"tag":842,"props":1094,"children":1095},{},[1096],{"type":92,"value":1097},"MFA backup codes",{"type":87,"tag":842,"props":1099,"children":1100},{},[1101],{"type":92,"value":1102},"Federated IdP buttons (OAuth\u002FOIDC providers)",{"type":87,"tag":88,"props":1104,"children":1105},{},[1106],{"type":92,"value":1107},"After successful auth, the token is delivered in the URL hash (never the query string — the hash is never sent to the server):",{"type":87,"tag":218,"props":1109,"children":1111},{"code":1110},"\u002Fhosted\u002F{slug}\u002Flogin#access_token={token}&token_type=Bearer&return_to={url}\n",[1112],{"type":87,"tag":95,"props":1113,"children":1114},{"__ignoreMap":82},[1115],{"type":92,"value":1110},{"type":87,"tag":112,"props":1117,"children":1119},{"id":1118},"cross-domain-sso-global-sessions",[1120],{"type":92,"value":1121},"Cross-domain SSO (Global Sessions)",{"type":87,"tag":88,"props":1123,"children":1124},{},[1125,1127,1133,1135,1141],{"type":92,"value":1126},"When a user belongs to a group with ",{"type":87,"tag":95,"props":1128,"children":1130},{"className":1129},[],[1131],{"type":92,"value":1132},"global_session_enabled = true",{"type":92,"value":1134},", the token response includes a ",{"type":87,"tag":95,"props":1136,"children":1138},{"className":1137},[],[1139],{"type":92,"value":1140},"global_session_token",{"type":92,"value":110},{"type":87,"tag":218,"props":1143,"children":1145},{"code":1144,"language":327,"meta":82,"className":328,"style":82},"{\n  \"access_token\": \"...\",\n  \"global_session_token\": \"gst_64randombytes...\"\n}\n",[1146],{"type":87,"tag":95,"props":1147,"children":1148},{"__ignoreMap":82},[1149,1156,1176,1193],{"type":87,"tag":334,"props":1150,"children":1151},{"class":336,"line":8},[1152],{"type":87,"tag":334,"props":1153,"children":1154},{"style":340},[1155],{"type":92,"value":343},{"type":87,"tag":334,"props":1157,"children":1158},{"class":336,"line":42},[1159,1163,1167,1172],{"type":87,"tag":334,"props":1160,"children":1161},{"style":349},[1162],{"type":92,"value":352},{"type":87,"tag":334,"props":1164,"children":1165},{"style":340},[1166],{"type":92,"value":357},{"type":87,"tag":334,"props":1168,"children":1169},{"style":360},[1170],{"type":92,"value":1171},"\"...\"",{"type":87,"tag":334,"props":1173,"children":1174},{"style":340},[1175],{"type":92,"value":368},{"type":87,"tag":334,"props":1177,"children":1178},{"class":336,"line":32},[1179,1184,1188],{"type":87,"tag":334,"props":1180,"children":1181},{"style":349},[1182],{"type":92,"value":1183},"  \"global_session_token\"",{"type":87,"tag":334,"props":1185,"children":1186},{"style":340},[1187],{"type":92,"value":357},{"type":87,"tag":334,"props":1189,"children":1190},{"style":360},[1191],{"type":92,"value":1192},"\"gst_64randombytes...\"\n",{"type":87,"tag":334,"props":1194,"children":1195},{"class":336,"line":14},[1196],{"type":87,"tag":334,"props":1197,"children":1198},{"style":340},[1199],{"type":92,"value":479},{"type":87,"tag":88,"props":1201,"children":1202},{},[1203],{"type":92,"value":1204},"To transfer the session to a different domain:",{"type":87,"tag":838,"props":1206,"children":1207},{},[1208,1234],{"type":87,"tag":842,"props":1209,"children":1210},{},[1211,1217,1218,1224,1226,1232],{"type":87,"tag":95,"props":1212,"children":1214},{"className":1213},[],[1215],{"type":92,"value":1216},"POST \u002Fapi\u002Fv1\u002Fsessions\u002Fglobal\u002F{token}\u002Ftransfer",{"type":92,"value":289},{"type":87,"tag":95,"props":1219,"children":1221},{"className":1220},[],[1222],{"type":92,"value":1223},"{ \"target_domain\": \"app2.example.com\" }",{"type":92,"value":1225}," → returns a one-time ",{"type":87,"tag":95,"props":1227,"children":1229},{"className":1228},[],[1230],{"type":92,"value":1231},"transfer_token",{"type":92,"value":1233}," (60-second lifetime).",{"type":87,"tag":842,"props":1235,"children":1236},{},[1237,1239,1245,1246,1252,1254,1260],{"type":92,"value":1238},"On the target domain: ",{"type":87,"tag":95,"props":1240,"children":1242},{"className":1241},[],[1243],{"type":92,"value":1244},"POST \u002Fapi\u002Fv1\u002Fsessions\u002Ftransfer\u002Fredeem",{"type":92,"value":289},{"type":87,"tag":95,"props":1247,"children":1249},{"className":1248},[],[1250],{"type":92,"value":1251},"{ \"token\": \"...\", \"domain\": \"app2.example.com\" }",{"type":92,"value":1253}," → returns the ",{"type":87,"tag":95,"props":1255,"children":1257},{"className":1256},[],[1258],{"type":92,"value":1259},"GlobalSession",{"type":92,"value":1261}," object.",{"type":87,"tag":88,"props":1263,"children":1264},{},[1265,1267,1273],{"type":92,"value":1266},"Validate an existing session: ",{"type":87,"tag":95,"props":1268,"children":1270},{"className":1269},[],[1271],{"type":92,"value":1272},"GET \u002Fapi\u002Fv1\u002Fsessions\u002Fglobal\u002F{token}?domain=app2.example.com&require_mfa=false",{"type":92,"value":110},{"type":87,"tag":112,"props":1275,"children":1277},{"id":1276},"registering-an-oauth-client",[1278],{"type":92,"value":1279},"Registering an OAuth client",{"type":87,"tag":218,"props":1281,"children":1285},{"code":1282,"language":1283,"meta":82,"className":1284,"style":82},"POST \u002Fapi\u002Fv1\u002Ftenants\u002F{tenant_id}\u002Fclients\n{\n  \"name\": \"My App\",\n  \"client_type\": \"public\",\n  \"redirect_uris\": [\"https:\u002F\u002Fapp.example.com\u002Fcallback\"],\n  \"grant_types\": [\"authorization_code\", \"refresh_token\"],\n  \"allowed_scopes\": [\"openid\", \"profile\", \"email\"],\n  \"pkce_required\": true,\n  \"consent_required\": false\n}\n","bash","language-bash shiki shiki-themes github-dark-dimmed github-light",[1286],{"type":87,"tag":95,"props":1287,"children":1288},{"__ignoreMap":82},[1289,1303,1310,1328,1345,1372,1402,1437,1458,1476],{"type":87,"tag":334,"props":1290,"children":1291},{"class":336,"line":8},[1292,1298],{"type":87,"tag":334,"props":1293,"children":1295},{"style":1294},"--shiki-default:#F69D50;--shiki-light:#6F42C1",[1296],{"type":92,"value":1297},"POST",{"type":87,"tag":334,"props":1299,"children":1300},{"style":360},[1301],{"type":92,"value":1302}," \u002Fapi\u002Fv1\u002Ftenants\u002F{tenant_id}\u002Fclients\n",{"type":87,"tag":334,"props":1304,"children":1305},{"class":336,"line":42},[1306],{"type":87,"tag":334,"props":1307,"children":1308},{"style":340},[1309],{"type":92,"value":343},{"type":87,"tag":334,"props":1311,"children":1312},{"class":336,"line":32},[1313,1318,1323],{"type":87,"tag":334,"props":1314,"children":1315},{"style":1294},[1316],{"type":92,"value":1317},"  \"name\"",{"type":87,"tag":334,"props":1319,"children":1320},{"style":404},[1321],{"type":92,"value":1322},":",{"type":87,"tag":334,"props":1324,"children":1325},{"style":360},[1326],{"type":92,"value":1327}," \"My App\",\n",{"type":87,"tag":334,"props":1329,"children":1330},{"class":336,"line":14},[1331,1336,1340],{"type":87,"tag":334,"props":1332,"children":1333},{"style":1294},[1334],{"type":92,"value":1335},"  \"client_type\"",{"type":87,"tag":334,"props":1337,"children":1338},{"style":404},[1339],{"type":92,"value":1322},{"type":87,"tag":334,"props":1341,"children":1342},{"style":360},[1343],{"type":92,"value":1344}," \"public\",\n",{"type":87,"tag":334,"props":1346,"children":1347},{"class":336,"line":78},[1348,1353,1357,1362,1367],{"type":87,"tag":334,"props":1349,"children":1350},{"style":1294},[1351],{"type":92,"value":1352},"  \"redirect_uris\"",{"type":87,"tag":334,"props":1354,"children":1355},{"style":404},[1356],{"type":92,"value":1322},{"type":87,"tag":334,"props":1358,"children":1359},{"style":340},[1360],{"type":92,"value":1361}," [",{"type":87,"tag":334,"props":1363,"children":1364},{"style":360},[1365],{"type":92,"value":1366},"\"https:\u002F\u002Fapp.example.com\u002Fcallback\"",{"type":87,"tag":334,"props":1368,"children":1369},{"style":340},[1370],{"type":92,"value":1371},"],\n",{"type":87,"tag":334,"props":1373,"children":1374},{"class":336,"line":434},[1375,1380,1384,1388,1393,1397],{"type":87,"tag":334,"props":1376,"children":1377},{"style":1294},[1378],{"type":92,"value":1379},"  \"grant_types\"",{"type":87,"tag":334,"props":1381,"children":1382},{"style":404},[1383],{"type":92,"value":1322},{"type":87,"tag":334,"props":1385,"children":1386},{"style":340},[1387],{"type":92,"value":1361},{"type":87,"tag":334,"props":1389,"children":1390},{"style":360},[1391],{"type":92,"value":1392},"\"authorization_code\"",{"type":87,"tag":334,"props":1394,"children":1395},{"style":340},[1396],{"type":92,"value":532},{"type":87,"tag":334,"props":1398,"children":1399},{"style":360},[1400],{"type":92,"value":1401},"\"refresh_token\"],\n",{"type":87,"tag":334,"props":1403,"children":1404},{"class":336,"line":455},[1405,1410,1414,1418,1423,1427,1432],{"type":87,"tag":334,"props":1406,"children":1407},{"style":1294},[1408],{"type":92,"value":1409},"  \"allowed_scopes\"",{"type":87,"tag":334,"props":1411,"children":1412},{"style":404},[1413],{"type":92,"value":1322},{"type":87,"tag":334,"props":1415,"children":1416},{"style":340},[1417],{"type":92,"value":1361},{"type":87,"tag":334,"props":1419,"children":1420},{"style":360},[1421],{"type":92,"value":1422},"\"openid\"",{"type":87,"tag":334,"props":1424,"children":1425},{"style":340},[1426],{"type":92,"value":532},{"type":87,"tag":334,"props":1428,"children":1429},{"style":360},[1430],{"type":92,"value":1431},"\"profile\",",{"type":87,"tag":334,"props":1433,"children":1434},{"style":360},[1435],{"type":92,"value":1436}," \"email\"],\n",{"type":87,"tag":334,"props":1438,"children":1439},{"class":336,"line":473},[1440,1445,1449,1454],{"type":87,"tag":334,"props":1441,"children":1442},{"style":1294},[1443],{"type":92,"value":1444},"  \"pkce_required\"",{"type":87,"tag":334,"props":1446,"children":1447},{"style":404},[1448],{"type":92,"value":1322},{"type":87,"tag":334,"props":1450,"children":1451},{"style":404},[1452],{"type":92,"value":1453}," true",{"type":87,"tag":334,"props":1455,"children":1456},{"style":360},[1457],{"type":92,"value":368},{"type":87,"tag":334,"props":1459,"children":1461},{"class":336,"line":1460},9,[1462,1467,1471],{"type":87,"tag":334,"props":1463,"children":1464},{"style":1294},[1465],{"type":92,"value":1466},"  \"consent_required\"",{"type":87,"tag":334,"props":1468,"children":1469},{"style":404},[1470],{"type":92,"value":1322},{"type":87,"tag":334,"props":1472,"children":1473},{"style":404},[1474],{"type":92,"value":1475}," false\n",{"type":87,"tag":334,"props":1477,"children":1479},{"class":336,"line":1478},10,[1480],{"type":87,"tag":334,"props":1481,"children":1482},{"style":340},[1483],{"type":92,"value":479},{"type":87,"tag":88,"props":1485,"children":1486},{},[1487,1489,1495,1496,1502],{"type":92,"value":1488},"The response includes ",{"type":87,"tag":95,"props":1490,"children":1492},{"className":1491},[],[1493],{"type":92,"value":1494},"client_id",{"type":92,"value":1015},{"type":87,"tag":95,"props":1497,"children":1499},{"className":1498},[],[1500],{"type":92,"value":1501},"client_secret",{"type":92,"value":1503}," (shown once only for confidential clients).",{"type":87,"tag":1505,"props":1506,"children":1507},"style",{},[1508],{"type":92,"value":1509},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}",{"title":82,"searchDepth":32,"depth":32,"links":1511},[1512,1513,1519,1520,1521,1522,1523,1524,1525,1530,1534,1535],{"id":114,"depth":42,"text":117},{"id":200,"depth":42,"text":203,"children":1514},[1515,1517,1518],{"id":207,"depth":32,"text":1516},"Step 1 — Redirect user to \u002Foauth\u002Fauthorize",{"id":257,"depth":32,"text":260},{"id":307,"depth":32,"text":310},{"id":482,"depth":42,"text":485},{"id":496,"depth":42,"text":499},{"id":510,"depth":42,"text":513},{"id":550,"depth":42,"text":553},{"id":579,"depth":42,"text":582},{"id":639,"depth":42,"text":642},{"id":822,"depth":42,"text":825,"children":1526},[1527,1528,1529],{"id":833,"depth":32,"text":836},{"id":946,"depth":32,"text":949},{"id":973,"depth":32,"text":976},{"id":1025,"depth":42,"text":1028,"children":1531},[1532,1533],{"id":1044,"depth":32,"text":1047},{"id":1068,"depth":32,"text":1071},{"id":1118,"depth":42,"text":1121},{"id":1276,"depth":42,"text":1279},"markdown","content:docs:oauth-oidc.md","content","docs\u002Foauth-oidc.md","docs\u002Foauth-oidc","md",{"_path":48,"_dir":80,"_draft":81,"_partial":81,"_locale":82,"title":49,"description":50,"order":8,"category":51,"body":1543,"_type":1536,"_id":1537,"_source":1538,"_file":1539,"_stem":1540,"_extension":1541},{"type":84,"children":1544,"toc":2714},[1545,1561,1565,1629,1633,1642,1649,1671,1675,1709,1713,1720,1724,1854,1858,1865,1869,1876,1880,1907,1911,1932,1936,1981,1985,2147,2151,2155,2159,2244,2248,2264,2268,2278,2285,2307,2311,2321,2325,2340,2344,2369,2373,2380,2384,2400,2454,2458,2504,2514,2518,2694,2710],{"type":87,"tag":88,"props":1546,"children":1547},{},[1548,1549,1554,1555,1560],{"type":92,"value":93},{"type":87,"tag":95,"props":1550,"children":1552},{"className":1551},[],[1553],{"type":92,"value":100},{"type":92,"value":102},{"type":87,"tag":95,"props":1556,"children":1558},{"className":1557},[],[1559],{"type":92,"value":108},{"type":92,"value":110},{"type":87,"tag":112,"props":1562,"children":1563},{"id":114},[1564],{"type":92,"value":117},{"type":87,"tag":119,"props":1566,"children":1567},{},[1568,1582],{"type":87,"tag":123,"props":1569,"children":1570},{},[1571],{"type":87,"tag":127,"props":1572,"children":1573},{},[1574,1578],{"type":87,"tag":131,"props":1575,"children":1576},{},[1577],{"type":92,"value":135},{"type":87,"tag":131,"props":1579,"children":1580},{},[1581],{"type":92,"value":140},{"type":87,"tag":142,"props":1583,"children":1584},{},[1585,1596,1607,1618],{"type":87,"tag":127,"props":1586,"children":1587},{},[1588,1592],{"type":87,"tag":149,"props":1589,"children":1590},{},[1591],{"type":92,"value":153},{"type":87,"tag":149,"props":1593,"children":1594},{},[1595],{"type":92,"value":158},{"type":87,"tag":127,"props":1597,"children":1598},{},[1599,1603],{"type":87,"tag":149,"props":1600,"children":1601},{},[1602],{"type":92,"value":166},{"type":87,"tag":149,"props":1604,"children":1605},{},[1606],{"type":92,"value":171},{"type":87,"tag":127,"props":1608,"children":1609},{},[1610,1614],{"type":87,"tag":149,"props":1611,"children":1612},{},[1613],{"type":92,"value":179},{"type":87,"tag":149,"props":1615,"children":1616},{},[1617],{"type":92,"value":184},{"type":87,"tag":127,"props":1619,"children":1620},{},[1621,1625],{"type":87,"tag":149,"props":1622,"children":1623},{},[1624],{"type":92,"value":192},{"type":87,"tag":149,"props":1626,"children":1627},{},[1628],{"type":92,"value":197},{"type":87,"tag":112,"props":1630,"children":1631},{"id":200},[1632],{"type":92,"value":203},{"type":87,"tag":205,"props":1634,"children":1635},{"id":207},[1636,1637],{"type":92,"value":210},{"type":87,"tag":95,"props":1638,"children":1640},{"className":1639},[],[1641],{"type":92,"value":216},{"type":87,"tag":218,"props":1643,"children":1644},{"code":220},[1645],{"type":87,"tag":95,"props":1646,"children":1647},{"__ignoreMap":82},[1648],{"type":92,"value":220},{"type":87,"tag":88,"props":1650,"children":1651},{},[1652,1653,1658,1659,1664,1665,1670],{"type":92,"value":230},{"type":87,"tag":95,"props":1654,"children":1656},{"className":1655},[],[1657],{"type":92,"value":236},{"type":92,"value":238},{"type":87,"tag":95,"props":1660,"children":1662},{"className":1661},[],[1663],{"type":92,"value":244},{"type":92,"value":246},{"type":87,"tag":95,"props":1666,"children":1668},{"className":1667},[],[1669],{"type":92,"value":252},{"type":92,"value":254},{"type":87,"tag":205,"props":1672,"children":1673},{"id":257},[1674],{"type":92,"value":260},{"type":87,"tag":88,"props":1676,"children":1677},{},[1678,1679,1684,1685,1690,1691,1696,1697,1702,1703,1708],{"type":92,"value":265},{"type":87,"tag":95,"props":1680,"children":1682},{"className":1681},[],[1683],{"type":92,"value":271},{"type":92,"value":273},{"type":87,"tag":95,"props":1686,"children":1688},{"className":1687},[],[1689],{"type":92,"value":279},{"type":92,"value":281},{"type":87,"tag":95,"props":1692,"children":1694},{"className":1693},[],[1695],{"type":92,"value":287},{"type":92,"value":289},{"type":87,"tag":95,"props":1698,"children":1700},{"className":1699},[],[1701],{"type":92,"value":295},{"type":92,"value":297},{"type":87,"tag":95,"props":1704,"children":1706},{"className":1705},[],[1707],{"type":92,"value":303},{"type":92,"value":110},{"type":87,"tag":205,"props":1710,"children":1711},{"id":307},[1712],{"type":92,"value":310},{"type":87,"tag":218,"props":1714,"children":1715},{"code":313},[1716],{"type":87,"tag":95,"props":1717,"children":1718},{"__ignoreMap":82},[1719],{"type":92,"value":313},{"type":87,"tag":88,"props":1721,"children":1722},{},[1723],{"type":92,"value":323},{"type":87,"tag":218,"props":1725,"children":1726},{"code":326,"language":327,"meta":82,"className":328,"style":82},[1727],{"type":87,"tag":95,"props":1728,"children":1729},{"__ignoreMap":82},[1730,1737,1756,1775,1794,1813,1832,1847],{"type":87,"tag":334,"props":1731,"children":1732},{"class":336,"line":8},[1733],{"type":87,"tag":334,"props":1734,"children":1735},{"style":340},[1736],{"type":92,"value":343},{"type":87,"tag":334,"props":1738,"children":1739},{"class":336,"line":42},[1740,1744,1748,1752],{"type":87,"tag":334,"props":1741,"children":1742},{"style":349},[1743],{"type":92,"value":352},{"type":87,"tag":334,"props":1745,"children":1746},{"style":340},[1747],{"type":92,"value":357},{"type":87,"tag":334,"props":1749,"children":1750},{"style":360},[1751],{"type":92,"value":363},{"type":87,"tag":334,"props":1753,"children":1754},{"style":340},[1755],{"type":92,"value":368},{"type":87,"tag":334,"props":1757,"children":1758},{"class":336,"line":32},[1759,1763,1767,1771],{"type":87,"tag":334,"props":1760,"children":1761},{"style":349},[1762],{"type":92,"value":376},{"type":87,"tag":334,"props":1764,"children":1765},{"style":340},[1766],{"type":92,"value":357},{"type":87,"tag":334,"props":1768,"children":1769},{"style":360},[1770],{"type":92,"value":385},{"type":87,"tag":334,"props":1772,"children":1773},{"style":340},[1774],{"type":92,"value":368},{"type":87,"tag":334,"props":1776,"children":1777},{"class":336,"line":14},[1778,1782,1786,1790],{"type":87,"tag":334,"props":1779,"children":1780},{"style":349},[1781],{"type":92,"value":397},{"type":87,"tag":334,"props":1783,"children":1784},{"style":340},[1785],{"type":92,"value":357},{"type":87,"tag":334,"props":1787,"children":1788},{"style":404},[1789],{"type":92,"value":407},{"type":87,"tag":334,"props":1791,"children":1792},{"style":340},[1793],{"type":92,"value":368},{"type":87,"tag":334,"props":1795,"children":1796},{"class":336,"line":78},[1797,1801,1805,1809],{"type":87,"tag":334,"props":1798,"children":1799},{"style":349},[1800],{"type":92,"value":419},{"type":87,"tag":334,"props":1802,"children":1803},{"style":340},[1804],{"type":92,"value":357},{"type":87,"tag":334,"props":1806,"children":1807},{"style":360},[1808],{"type":92,"value":363},{"type":87,"tag":334,"props":1810,"children":1811},{"style":340},[1812],{"type":92,"value":368},{"type":87,"tag":334,"props":1814,"children":1815},{"class":336,"line":434},[1816,1820,1824,1828],{"type":87,"tag":334,"props":1817,"children":1818},{"style":349},[1819],{"type":92,"value":440},{"type":87,"tag":334,"props":1821,"children":1822},{"style":340},[1823],{"type":92,"value":357},{"type":87,"tag":334,"props":1825,"children":1826},{"style":360},[1827],{"type":92,"value":363},{"type":87,"tag":334,"props":1829,"children":1830},{"style":340},[1831],{"type":92,"value":368},{"type":87,"tag":334,"props":1833,"children":1834},{"class":336,"line":455},[1835,1839,1843],{"type":87,"tag":334,"props":1836,"children":1837},{"style":349},[1838],{"type":92,"value":461},{"type":87,"tag":334,"props":1840,"children":1841},{"style":340},[1842],{"type":92,"value":357},{"type":87,"tag":334,"props":1844,"children":1845},{"style":360},[1846],{"type":92,"value":470},{"type":87,"tag":334,"props":1848,"children":1849},{"class":336,"line":473},[1850],{"type":87,"tag":334,"props":1851,"children":1852},{"style":340},[1853],{"type":92,"value":479},{"type":87,"tag":112,"props":1855,"children":1856},{"id":482},[1857],{"type":92,"value":485},{"type":87,"tag":218,"props":1859,"children":1860},{"code":488},[1861],{"type":87,"tag":95,"props":1862,"children":1863},{"__ignoreMap":82},[1864],{"type":92,"value":488},{"type":87,"tag":112,"props":1866,"children":1867},{"id":496},[1868],{"type":92,"value":499},{"type":87,"tag":218,"props":1870,"children":1871},{"code":502},[1872],{"type":87,"tag":95,"props":1873,"children":1874},{"__ignoreMap":82},[1875],{"type":92,"value":502},{"type":87,"tag":112,"props":1877,"children":1878},{"id":510},[1879],{"type":92,"value":513},{"type":87,"tag":88,"props":1881,"children":1882},{},[1883,1888,1889,1894,1895,1900,1901,1906],{"type":87,"tag":95,"props":1884,"children":1886},{"className":1885},[],[1887],{"type":92,"value":522},{"type":92,"value":524},{"type":87,"tag":95,"props":1890,"children":1892},{"className":1891},[],[1893],{"type":92,"value":530},{"type":92,"value":532},{"type":87,"tag":95,"props":1896,"children":1898},{"className":1897},[],[1899],{"type":92,"value":538},{"type":92,"value":540},{"type":87,"tag":95,"props":1902,"children":1904},{"className":1903},[],[1905],{"type":92,"value":546},{"type":92,"value":110},{"type":87,"tag":112,"props":1908,"children":1909},{"id":550},[1910],{"type":92,"value":553},{"type":87,"tag":88,"props":1912,"children":1913},{},[1914,1919,1920,1925,1926,1931],{"type":87,"tag":95,"props":1915,"children":1917},{"className":1916},[],[1918],{"type":92,"value":562},{"type":92,"value":524},{"type":87,"tag":95,"props":1921,"children":1923},{"className":1922},[],[1924],{"type":92,"value":530},{"type":92,"value":532},{"type":87,"tag":95,"props":1927,"children":1929},{"className":1928},[],[1930],{"type":92,"value":538},{"type":92,"value":576},{"type":87,"tag":112,"props":1933,"children":1934},{"id":579},[1935],{"type":92,"value":582},{"type":87,"tag":88,"props":1937,"children":1938},{},[1939,1944,1945,1950,1951,1956,1957,1962,1963,1968,1969,1974,1975,1980],{"type":87,"tag":95,"props":1940,"children":1942},{"className":1941},[],[1943],{"type":92,"value":591},{"type":92,"value":289},{"type":87,"tag":95,"props":1946,"children":1948},{"className":1947},[],[1949],{"type":92,"value":598},{"type":92,"value":600},{"type":87,"tag":95,"props":1952,"children":1954},{"className":1953},[],[1955],{"type":92,"value":606},{"type":92,"value":532},{"type":87,"tag":95,"props":1958,"children":1960},{"className":1959},[],[1961],{"type":92,"value":613},{"type":92,"value":532},{"type":87,"tag":95,"props":1964,"children":1966},{"className":1965},[],[1967],{"type":92,"value":620},{"type":92,"value":532},{"type":87,"tag":95,"props":1970,"children":1972},{"className":1971},[],[1973],{"type":92,"value":627},{"type":92,"value":532},{"type":87,"tag":95,"props":1976,"children":1978},{"className":1977},[],[1979],{"type":92,"value":634},{"type":92,"value":636},{"type":87,"tag":112,"props":1982,"children":1983},{"id":639},[1984],{"type":92,"value":642},{"type":87,"tag":119,"props":1986,"children":1987},{},[1988,2002],{"type":87,"tag":123,"props":1989,"children":1990},{},[1991],{"type":87,"tag":127,"props":1992,"children":1993},{},[1994,1998],{"type":87,"tag":131,"props":1995,"children":1996},{},[1997],{"type":92,"value":656},{"type":87,"tag":131,"props":1999,"children":2000},{},[2001],{"type":92,"value":661},{"type":87,"tag":142,"props":2003,"children":2004},{},[2005,2048,2097,2122],{"type":87,"tag":127,"props":2006,"children":2007},{},[2008,2016],{"type":87,"tag":149,"props":2009,"children":2010},{},[2011],{"type":87,"tag":95,"props":2012,"children":2014},{"className":2013},[],[2015],{"type":92,"value":676},{"type":87,"tag":149,"props":2017,"children":2018},{},[2019,2024,2025,2030,2031,2036,2037,2042,2043],{"type":87,"tag":95,"props":2020,"children":2022},{"className":2021},[],[2023],{"type":92,"value":606},{"type":92,"value":532},{"type":87,"tag":95,"props":2026,"children":2028},{"className":2027},[],[2029],{"type":92,"value":691},{"type":92,"value":532},{"type":87,"tag":95,"props":2032,"children":2034},{"className":2033},[],[2035],{"type":92,"value":698},{"type":92,"value":532},{"type":87,"tag":95,"props":2038,"children":2040},{"className":2039},[],[2041],{"type":92,"value":705},{"type":92,"value":532},{"type":87,"tag":95,"props":2044,"children":2046},{"className":2045},[],[2047],{"type":92,"value":712},{"type":87,"tag":127,"props":2049,"children":2050},{},[2051,2059],{"type":87,"tag":149,"props":2052,"children":2053},{},[2054],{"type":87,"tag":95,"props":2055,"children":2057},{"className":2056},[],[2058],{"type":92,"value":724},{"type":87,"tag":149,"props":2060,"children":2061},{},[2062,2067,2068,2073,2074,2079,2080,2085,2086,2091,2092],{"type":87,"tag":95,"props":2063,"children":2065},{"className":2064},[],[2066],{"type":92,"value":627},{"type":92,"value":532},{"type":87,"tag":95,"props":2069,"children":2071},{"className":2070},[],[2072],{"type":92,"value":739},{"type":92,"value":532},{"type":87,"tag":95,"props":2075,"children":2077},{"className":2076},[],[2078],{"type":92,"value":746},{"type":92,"value":532},{"type":87,"tag":95,"props":2081,"children":2083},{"className":2082},[],[2084],{"type":92,"value":634},{"type":92,"value":532},{"type":87,"tag":95,"props":2087,"children":2089},{"className":2088},[],[2090],{"type":92,"value":759},{"type":92,"value":532},{"type":87,"tag":95,"props":2093,"children":2095},{"className":2094},[],[2096],{"type":92,"value":766},{"type":87,"tag":127,"props":2098,"children":2099},{},[2100,2108],{"type":87,"tag":149,"props":2101,"children":2102},{},[2103],{"type":87,"tag":95,"props":2104,"children":2106},{"className":2105},[],[2107],{"type":92,"value":613},{"type":87,"tag":149,"props":2109,"children":2110},{},[2111,2116,2117],{"type":87,"tag":95,"props":2112,"children":2114},{"className":2113},[],[2115],{"type":92,"value":613},{"type":92,"value":532},{"type":87,"tag":95,"props":2118,"children":2120},{"className":2119},[],[2121],{"type":92,"value":620},{"type":87,"tag":127,"props":2123,"children":2124},{},[2125,2133],{"type":87,"tag":149,"props":2126,"children":2127},{},[2128],{"type":87,"tag":95,"props":2129,"children":2131},{"className":2130},[],[2132],{"type":92,"value":803},{"type":87,"tag":149,"props":2134,"children":2135},{},[2136,2141,2142],{"type":87,"tag":95,"props":2137,"children":2139},{"className":2138},[],[2140],{"type":92,"value":812},{"type":92,"value":532},{"type":87,"tag":95,"props":2143,"children":2145},{"className":2144},[],[2146],{"type":92,"value":819},{"type":87,"tag":112,"props":2148,"children":2149},{"id":822},[2150],{"type":92,"value":825},{"type":87,"tag":88,"props":2152,"children":2153},{},[2154],{"type":92,"value":830},{"type":87,"tag":205,"props":2156,"children":2157},{"id":833},[2158],{"type":92,"value":836},{"type":87,"tag":838,"props":2160,"children":2161},{},[2162,2166,2224,2234],{"type":87,"tag":842,"props":2163,"children":2164},{},[2165],{"type":92,"value":846},{"type":87,"tag":842,"props":2167,"children":2168},{},[2169,2170,2175,2176,2181,2182],{"type":92,"value":851},{"type":87,"tag":95,"props":2171,"children":2173},{"className":2172},[],[2174],{"type":92,"value":857},{"type":92,"value":859},{"type":87,"tag":95,"props":2177,"children":2179},{"className":2178},[],[2180],{"type":92,"value":865},{"type":92,"value":867},{"type":87,"tag":869,"props":2183,"children":2184},{},[2185,2194,2209],{"type":87,"tag":842,"props":2186,"children":2187},{},[2188,2193],{"type":87,"tag":95,"props":2189,"children":2191},{"className":2190},[],[2192],{"type":92,"value":880},{"type":92,"value":882},{"type":87,"tag":842,"props":2195,"children":2196},{},[2197,2202,2203,2208],{"type":87,"tag":95,"props":2198,"children":2200},{"className":2199},[],[2201],{"type":92,"value":891},{"type":92,"value":893},{"type":87,"tag":95,"props":2204,"children":2206},{"className":2205},[],[2207],{"type":92,"value":899},{"type":92,"value":901},{"type":87,"tag":842,"props":2210,"children":2211},{},[2212,2217,2218,2223],{"type":87,"tag":95,"props":2213,"children":2215},{"className":2214},[],[2216],{"type":92,"value":712},{"type":92,"value":893},{"type":87,"tag":95,"props":2219,"children":2221},{"className":2220},[],[2222],{"type":92,"value":916},{"type":92,"value":918},{"type":87,"tag":842,"props":2225,"children":2226},{},[2227,2228,2233],{"type":92,"value":923},{"type":87,"tag":95,"props":2229,"children":2231},{"className":2230},[],[2232],{"type":92,"value":929},{"type":92,"value":931},{"type":87,"tag":842,"props":2235,"children":2236},{},[2237,2238,2243],{"type":92,"value":936},{"type":87,"tag":95,"props":2239,"children":2241},{"className":2240},[],[2242],{"type":92,"value":857},{"type":92,"value":943},{"type":87,"tag":205,"props":2245,"children":2246},{"id":946},[2247],{"type":92,"value":949},{"type":87,"tag":88,"props":2249,"children":2250},{},[2251,2252,2257,2258,2263],{"type":92,"value":954},{"type":87,"tag":95,"props":2253,"children":2255},{"className":2254},[],[2256],{"type":92,"value":960},{"type":92,"value":962},{"type":87,"tag":95,"props":2259,"children":2261},{"className":2260},[],[2262],{"type":92,"value":968},{"type":92,"value":970},{"type":87,"tag":205,"props":2265,"children":2266},{"id":973},[2267],{"type":92,"value":976},{"type":87,"tag":88,"props":2269,"children":2270},{},[2271,2272,2277],{"type":92,"value":981},{"type":87,"tag":95,"props":2273,"children":2275},{"className":2274},[],[2276],{"type":92,"value":857},{"type":92,"value":988},{"type":87,"tag":218,"props":2279,"children":2280},{"code":991},[2281],{"type":87,"tag":95,"props":2282,"children":2283},{"__ignoreMap":82},[2284],{"type":92,"value":991},{"type":87,"tag":88,"props":2286,"children":2287},{},[2288,2289,2294,2295,2300,2301,2306],{"type":92,"value":1001},{"type":87,"tag":95,"props":2290,"children":2292},{"className":2291},[],[2293],{"type":92,"value":857},{"type":92,"value":1008},{"type":87,"tag":95,"props":2296,"children":2298},{"className":2297},[],[2299],{"type":92,"value":916},{"type":92,"value":1015},{"type":87,"tag":95,"props":2302,"children":2304},{"className":2303},[],[2305],{"type":92,"value":712},{"type":92,"value":1022},{"type":87,"tag":112,"props":2308,"children":2309},{"id":1025},[2310],{"type":92,"value":1028},{"type":87,"tag":88,"props":2312,"children":2313},{},[2314,2315,2320],{"type":92,"value":1033},{"type":87,"tag":95,"props":2316,"children":2318},{"className":2317},[],[2319],{"type":92,"value":1039},{"type":92,"value":1041},{"type":87,"tag":205,"props":2322,"children":2323},{"id":1044},[2324],{"type":92,"value":1047},{"type":87,"tag":88,"props":2326,"children":2327},{},[2328,2333,2334,2339],{"type":87,"tag":95,"props":2329,"children":2331},{"className":2330},[],[2332],{"type":92,"value":1056},{"type":92,"value":1058},{"type":87,"tag":95,"props":2335,"children":2337},{"className":2336},[],[2338],{"type":92,"value":1064},{"type":92,"value":110},{"type":87,"tag":205,"props":2341,"children":2342},{"id":1068},[2343],{"type":92,"value":1071},{"type":87,"tag":869,"props":2345,"children":2346},{},[2347,2351,2361,2365],{"type":87,"tag":842,"props":2348,"children":2349},{},[2350],{"type":92,"value":1079},{"type":87,"tag":842,"props":2352,"children":2353},{},[2354,2355,2360],{"type":92,"value":1084},{"type":87,"tag":95,"props":2356,"children":2358},{"className":2357},[],[2359],{"type":92,"value":1090},{"type":92,"value":1092},{"type":87,"tag":842,"props":2362,"children":2363},{},[2364],{"type":92,"value":1097},{"type":87,"tag":842,"props":2366,"children":2367},{},[2368],{"type":92,"value":1102},{"type":87,"tag":88,"props":2370,"children":2371},{},[2372],{"type":92,"value":1107},{"type":87,"tag":218,"props":2374,"children":2375},{"code":1110},[2376],{"type":87,"tag":95,"props":2377,"children":2378},{"__ignoreMap":82},[2379],{"type":92,"value":1110},{"type":87,"tag":112,"props":2381,"children":2382},{"id":1118},[2383],{"type":92,"value":1121},{"type":87,"tag":88,"props":2385,"children":2386},{},[2387,2388,2393,2394,2399],{"type":92,"value":1126},{"type":87,"tag":95,"props":2389,"children":2391},{"className":2390},[],[2392],{"type":92,"value":1132},{"type":92,"value":1134},{"type":87,"tag":95,"props":2395,"children":2397},{"className":2396},[],[2398],{"type":92,"value":1140},{"type":92,"value":110},{"type":87,"tag":218,"props":2401,"children":2402},{"code":1144,"language":327,"meta":82,"className":328,"style":82},[2403],{"type":87,"tag":95,"props":2404,"children":2405},{"__ignoreMap":82},[2406,2413,2432,2447],{"type":87,"tag":334,"props":2407,"children":2408},{"class":336,"line":8},[2409],{"type":87,"tag":334,"props":2410,"children":2411},{"style":340},[2412],{"type":92,"value":343},{"type":87,"tag":334,"props":2414,"children":2415},{"class":336,"line":42},[2416,2420,2424,2428],{"type":87,"tag":334,"props":2417,"children":2418},{"style":349},[2419],{"type":92,"value":352},{"type":87,"tag":334,"props":2421,"children":2422},{"style":340},[2423],{"type":92,"value":357},{"type":87,"tag":334,"props":2425,"children":2426},{"style":360},[2427],{"type":92,"value":1171},{"type":87,"tag":334,"props":2429,"children":2430},{"style":340},[2431],{"type":92,"value":368},{"type":87,"tag":334,"props":2433,"children":2434},{"class":336,"line":32},[2435,2439,2443],{"type":87,"tag":334,"props":2436,"children":2437},{"style":349},[2438],{"type":92,"value":1183},{"type":87,"tag":334,"props":2440,"children":2441},{"style":340},[2442],{"type":92,"value":357},{"type":87,"tag":334,"props":2444,"children":2445},{"style":360},[2446],{"type":92,"value":1192},{"type":87,"tag":334,"props":2448,"children":2449},{"class":336,"line":14},[2450],{"type":87,"tag":334,"props":2451,"children":2452},{"style":340},[2453],{"type":92,"value":479},{"type":87,"tag":88,"props":2455,"children":2456},{},[2457],{"type":92,"value":1204},{"type":87,"tag":838,"props":2459,"children":2460},{},[2461,2482],{"type":87,"tag":842,"props":2462,"children":2463},{},[2464,2469,2470,2475,2476,2481],{"type":87,"tag":95,"props":2465,"children":2467},{"className":2466},[],[2468],{"type":92,"value":1216},{"type":92,"value":289},{"type":87,"tag":95,"props":2471,"children":2473},{"className":2472},[],[2474],{"type":92,"value":1223},{"type":92,"value":1225},{"type":87,"tag":95,"props":2477,"children":2479},{"className":2478},[],[2480],{"type":92,"value":1231},{"type":92,"value":1233},{"type":87,"tag":842,"props":2483,"children":2484},{},[2485,2486,2491,2492,2497,2498,2503],{"type":92,"value":1238},{"type":87,"tag":95,"props":2487,"children":2489},{"className":2488},[],[2490],{"type":92,"value":1244},{"type":92,"value":289},{"type":87,"tag":95,"props":2493,"children":2495},{"className":2494},[],[2496],{"type":92,"value":1251},{"type":92,"value":1253},{"type":87,"tag":95,"props":2499,"children":2501},{"className":2500},[],[2502],{"type":92,"value":1259},{"type":92,"value":1261},{"type":87,"tag":88,"props":2505,"children":2506},{},[2507,2508,2513],{"type":92,"value":1266},{"type":87,"tag":95,"props":2509,"children":2511},{"className":2510},[],[2512],{"type":92,"value":1272},{"type":92,"value":110},{"type":87,"tag":112,"props":2515,"children":2516},{"id":1276},[2517],{"type":92,"value":1279},{"type":87,"tag":218,"props":2519,"children":2520},{"code":1282,"language":1283,"meta":82,"className":1284,"style":82},[2521],{"type":87,"tag":95,"props":2522,"children":2523},{"__ignoreMap":82},[2524,2535,2542,2557,2572,2595,2622,2653,2672,2687],{"type":87,"tag":334,"props":2525,"children":2526},{"class":336,"line":8},[2527,2531],{"type":87,"tag":334,"props":2528,"children":2529},{"style":1294},[2530],{"type":92,"value":1297},{"type":87,"tag":334,"props":2532,"children":2533},{"style":360},[2534],{"type":92,"value":1302},{"type":87,"tag":334,"props":2536,"children":2537},{"class":336,"line":42},[2538],{"type":87,"tag":334,"props":2539,"children":2540},{"style":340},[2541],{"type":92,"value":343},{"type":87,"tag":334,"props":2543,"children":2544},{"class":336,"line":32},[2545,2549,2553],{"type":87,"tag":334,"props":2546,"children":2547},{"style":1294},[2548],{"type":92,"value":1317},{"type":87,"tag":334,"props":2550,"children":2551},{"style":404},[2552],{"type":92,"value":1322},{"type":87,"tag":334,"props":2554,"children":2555},{"style":360},[2556],{"type":92,"value":1327},{"type":87,"tag":334,"props":2558,"children":2559},{"class":336,"line":14},[2560,2564,2568],{"type":87,"tag":334,"props":2561,"children":2562},{"style":1294},[2563],{"type":92,"value":1335},{"type":87,"tag":334,"props":2565,"children":2566},{"style":404},[2567],{"type":92,"value":1322},{"type":87,"tag":334,"props":2569,"children":2570},{"style":360},[2571],{"type":92,"value":1344},{"type":87,"tag":334,"props":2573,"children":2574},{"class":336,"line":78},[2575,2579,2583,2587,2591],{"type":87,"tag":334,"props":2576,"children":2577},{"style":1294},[2578],{"type":92,"value":1352},{"type":87,"tag":334,"props":2580,"children":2581},{"style":404},[2582],{"type":92,"value":1322},{"type":87,"tag":334,"props":2584,"children":2585},{"style":340},[2586],{"type":92,"value":1361},{"type":87,"tag":334,"props":2588,"children":2589},{"style":360},[2590],{"type":92,"value":1366},{"type":87,"tag":334,"props":2592,"children":2593},{"style":340},[2594],{"type":92,"value":1371},{"type":87,"tag":334,"props":2596,"children":2597},{"class":336,"line":434},[2598,2602,2606,2610,2614,2618],{"type":87,"tag":334,"props":2599,"children":2600},{"style":1294},[2601],{"type":92,"value":1379},{"type":87,"tag":334,"props":2603,"children":2604},{"style":404},[2605],{"type":92,"value":1322},{"type":87,"tag":334,"props":2607,"children":2608},{"style":340},[2609],{"type":92,"value":1361},{"type":87,"tag":334,"props":2611,"children":2612},{"style":360},[2613],{"type":92,"value":1392},{"type":87,"tag":334,"props":2615,"children":2616},{"style":340},[2617],{"type":92,"value":532},{"type":87,"tag":334,"props":2619,"children":2620},{"style":360},[2621],{"type":92,"value":1401},{"type":87,"tag":334,"props":2623,"children":2624},{"class":336,"line":455},[2625,2629,2633,2637,2641,2645,2649],{"type":87,"tag":334,"props":2626,"children":2627},{"style":1294},[2628],{"type":92,"value":1409},{"type":87,"tag":334,"props":2630,"children":2631},{"style":404},[2632],{"type":92,"value":1322},{"type":87,"tag":334,"props":2634,"children":2635},{"style":340},[2636],{"type":92,"value":1361},{"type":87,"tag":334,"props":2638,"children":2639},{"style":360},[2640],{"type":92,"value":1422},{"type":87,"tag":334,"props":2642,"children":2643},{"style":340},[2644],{"type":92,"value":532},{"type":87,"tag":334,"props":2646,"children":2647},{"style":360},[2648],{"type":92,"value":1431},{"type":87,"tag":334,"props":2650,"children":2651},{"style":360},[2652],{"type":92,"value":1436},{"type":87,"tag":334,"props":2654,"children":2655},{"class":336,"line":473},[2656,2660,2664,2668],{"type":87,"tag":334,"props":2657,"children":2658},{"style":1294},[2659],{"type":92,"value":1444},{"type":87,"tag":334,"props":2661,"children":2662},{"style":404},[2663],{"type":92,"value":1322},{"type":87,"tag":334,"props":2665,"children":2666},{"style":404},[2667],{"type":92,"value":1453},{"type":87,"tag":334,"props":2669,"children":2670},{"style":360},[2671],{"type":92,"value":368},{"type":87,"tag":334,"props":2673,"children":2674},{"class":336,"line":1460},[2675,2679,2683],{"type":87,"tag":334,"props":2676,"children":2677},{"style":1294},[2678],{"type":92,"value":1466},{"type":87,"tag":334,"props":2680,"children":2681},{"style":404},[2682],{"type":92,"value":1322},{"type":87,"tag":334,"props":2684,"children":2685},{"style":404},[2686],{"type":92,"value":1475},{"type":87,"tag":334,"props":2688,"children":2689},{"class":336,"line":1478},[2690],{"type":87,"tag":334,"props":2691,"children":2692},{"style":340},[2693],{"type":92,"value":479},{"type":87,"tag":88,"props":2695,"children":2696},{},[2697,2698,2703,2704,2709],{"type":92,"value":1488},{"type":87,"tag":95,"props":2699,"children":2701},{"className":2700},[],[2702],{"type":92,"value":1494},{"type":92,"value":1015},{"type":87,"tag":95,"props":2705,"children":2707},{"className":2706},[],[2708],{"type":92,"value":1501},{"type":92,"value":1503},{"type":87,"tag":1505,"props":2711,"children":2712},{},[2713],{"type":92,"value":1509},{"title":82,"searchDepth":32,"depth":32,"links":2715},[2716,2717,2722,2723,2724,2725,2726,2727,2728,2733,2737,2738],{"id":114,"depth":42,"text":117},{"id":200,"depth":42,"text":203,"children":2718},[2719,2720,2721],{"id":207,"depth":32,"text":1516},{"id":257,"depth":32,"text":260},{"id":307,"depth":32,"text":310},{"id":482,"depth":42,"text":485},{"id":496,"depth":42,"text":499},{"id":510,"depth":42,"text":513},{"id":550,"depth":42,"text":553},{"id":579,"depth":42,"text":582},{"id":639,"depth":42,"text":642},{"id":822,"depth":42,"text":825,"children":2729},[2730,2731,2732],{"id":833,"depth":32,"text":836},{"id":946,"depth":32,"text":949},{"id":973,"depth":32,"text":976},{"id":1025,"depth":42,"text":1028,"children":2734},[2735,2736],{"id":1044,"depth":32,"text":1047},{"id":1068,"depth":32,"text":1071},{"id":1118,"depth":42,"text":1121},{"id":1276,"depth":42,"text":1279},1780603561416]