diff --git a/.vocs/search-index-4e8c166a.json b/.vocs/search-index-4e8c166a.json new file mode 100644 index 0000000..a247ee1 --- /dev/null +++ b/.vocs/search-index-4e8c166a.json @@ -0,0 +1 @@ +{"documentCount":32,"nextId":32,"documentIds":{"0":"docs/pages/blog/cutonestrand.mdx#how-data-analysis-can-help-to-fix-genetic-disorders","1":"docs/pages/blog/cutonestrand.mdx#introduction","2":"docs/pages/blog/cutonestrand.mdx#data-analysis-can-be-use-to-create-a-list-of-interesting-genomic-regions-for-gene-therapy","3":"docs/pages/blog/cutonestrand.mdx#generalization","4":"docs/pages/blog/cutonestrand.mdx#footnote-label","5":"docs/pages/blog/expdesign.mdx#experimental-design-in-the-context-of-next-generation-sequencing","6":"docs/pages/blog/expdesign.mdx#introduction","7":"docs/pages/blog/expdesign.mdx#next-generation-sequencing-specificities","8":"docs/pages/blog/expdesign.mdx#methodology","9":"docs/pages/blog/expdesign.mdx#conclusion","10":"docs/pages/blog/expdesign.mdx#to-go-further","11":"docs/pages/blog/gsea.mdx#a-quick-overview-of-gene-sets-enrichment-analysis","12":"docs/pages/blog/gsea.mdx#why-gsea-analysis-","13":"docs/pages/blog/gsea.mdx#principles","14":"docs/pages/blog/gsea.mdx#what-is-the-question-","15":"docs/pages/blog/gsea.mdx#the-method","16":"docs/pages/blog/gsea.mdx#to-go-further-with-theory","17":"docs/pages/blog/gsea.mdx#available-programs-for-practice","18":"docs/pages/blog/gsea.mdx#footnote-label","19":"docs/pages/blog/#blog","20":"docs/pages/projects/germlinevardb.mdx#germlinevardb","21":"docs/pages/projects/germlinevardb.mdx#why-this-app","22":"docs/pages/projects/germlinevardb.mdx#open-source","23":"docs/pages/projects/germlinevardb.mdx#can-i-use-it-for-clinical-purposes-","24":"docs/pages/projects/germlinevardb.mdx#footnote-label","25":"docs/pages/projects/#here-are-my-projects","26":"docs/pages/projects/#omicsverse","27":"docs/pages/projects/somavardb.mdx#somavardb","28":"docs/pages/projects/somavardb.mdx#why-this-app","29":"docs/pages/projects/somavardb.mdx#open-source","30":"docs/pages/projects/somavardb.mdx#can-i-use-it-for-clinical-purposes-","31":"docs/pages/projects/somavardb.mdx#footnote-label"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[9,1,1],"1":[1,9,134],"2":[16,9,186],"3":[1,9,40],"4":[1,9,109],"5":[9,1,1],"6":[1,9,67],"7":[4,9,61],"8":[1,1,110],"9":[1,1,36],"10":[3,1,1],"11":[8,1,1],"12":[4,8,90],"13":[1,8,1],"14":[5,9,65],"15":[2,9,204],"16":[5,9,25],"17":[4,8,22],"18":[1,8,70],"19":[1,1,1],"20":[1,1,11],"21":[3,1,195],"22":[2,1,5],"23":[8,1,57],"24":[1,1,40],"25":[4,1,1],"26":[1,4,56],"27":[1,1,11],"28":[3,1,195],"29":[2,1,5],"30":[8,1,57],"31":[1,1,40]},"averageFieldLength":[3.53125,4.21875,59.3125],"storedFields":{"0":{"href":"/blog/cutonestrand#how-data-analysis-can-help-to-fix-genetic-disorders","html":"\n","isPage":true,"text":"\n","title":"How data analysis can help to fix genetic disorders","titles":[]},"1":{"href":"/blog/cutonestrand#introduction","html":"\n

Gene therapy as seen a major breakthrough with the development of CRISPR-Cas9 technology.\nThis revolutionary tool allows scientists to precisely edit genes, offering new hope for\ntreating genetic disorders and diseases. With the potential to correct genetic mutations at\nthe source, CRISPR-Cas9 opens up a world of possibilities for personalized medicine and targeted therapies.\nThe future of gene therapy looks brighter than ever,\nwith the promise of improved treatments and even potential cures for a wide range of conditions.

\n

Autosomal-dominant disorders are among the diseases that could see gene treatments in the future.\nAs the name dominant implies, the presence of a single pathogenic mutated allele is sufficient for\nthe disease to appear, so some researchers are counting on crispr-cas9 technology to break the mutated allele.\nOnly the wild-type allele remains, and the disease is thus cured.\nAlthough the effectiveness of this approach looks promising 1 2 3, a number of issues still need\nto be addressed, two of which we will try to address in this article :

\n

How can the design of these personalized medicine treatments can be effective and quick for each patient ?

\nHow can we specifically target the mutated allele without breaking the functional allele or another part of\nthe genome ?

\n","isPage":false,"text":"\nGene therapy as seen a major breakthrough with the development of CRISPR-Cas9 technology.\nThis revolutionary tool allows scientists to precisely edit genes, offering new hope for\ntreating genetic disorders and diseases. With the potential to correct genetic mutations at\nthe source, CRISPR-Cas9 opens up a world of possibilities for personalized medicine and targeted therapies.\nThe future of gene therapy looks brighter than ever,\nwith the promise of improved treatments and even potential cures for a wide range of conditions.\nAutosomal-dominant disorders are among the diseases that could see gene treatments in the future.\nAs the name dominant implies, the presence of a single pathogenic mutated allele is sufficient for\nthe disease to appear, so some researchers are counting on crispr-cas9 technology to break the mutated allele.\nOnly the wild-type allele remains, and the disease is thus cured.\nAlthough the effectiveness of this approach looks promising 1 2 3, a number of issues still need\nto be addressed, two of which we will try to address in this article :\nHow can the design of these personalized medicine treatments can be effective and quick for each patient ? \nHow can we specifically target the mutated allele without breaking the functional allele or another part of\nthe genome ?\n","title":"Introduction","titles":["How data analysis can help to fix genetic disorders"]},"2":{"href":"/blog/cutonestrand#data-analysis-can-be-use-to-create-a-list-of-interesting-genomic-regions-for-gene-therapy","html":"\n

The targeted genome cleavage is achieved by targeting sequence-specific cleavage of S. pyogenes Cas9 (spCas9)\nendonuclease with a gRNA. In order for the gRNA to successfully direct Cas9 cleavage,\nthe corresponding target DNA sequence in the genome must be found next to a PAM site,\nalso known as a Protospacer Adjacent Motif. The canonical PAM is associated with the spCas9 nuclease is 5'-NGG-3'.\nWe are therefore going to try to draw up an exhaustive list of all the genomic regions that could be used for this\ngene therapy.

\n
    \n
  1. We start by selecting all the SNPs that are frequent in the population (> 5%), for which we can\nuse the gnomAD database 4. We want the list created to be usable to treat as many\npatients as possible, so we avoid SNPs that are too rare.
  2. \n
  3. Only SNPs that induce the disappearance or appearance of the 5‘-NGG-3’\nmotif will allow us to target only the mutated allele while preserving the WT. To do this, we wrote an in-house script in Python.
  4. \n
  5. We used the jvarkit tools suite to reconstitute the genomic context of these SNPs, i.e.\nto add the flanking sequences to the left and right of our SNPs of interest, according to the human reference genome.
  6. \n
  7. Finally, we used the FlashFry tool to calculate and predict efficiency and specificity\nscores for each of the positions we selected. We wanted to cut the diseased gene efficiently,\nwithout altering other regions of the genome.
  8. \n
\n

Using this method, we were able to draw up a list of genomic positions of interest in the treatment of Ryanodine receptor\ntype 1-related myopathies (RYR1-RM) of the ‘Autosomal-Dominant-Disorder’ type. 5\nThanks to next-generation sequencing, it is possible to obtain both genomic sequences of a patient\nat a reasonable cost. All the positions on our list for which the patient is heterozygous are therefore\ncandidates for gene therapy!

\n

Check out the analysis code here !

\n","isPage":false,"text":"\nThe targeted genome cleavage is achieved by targeting sequence-specific cleavage of S. pyogenes Cas9 (spCas9)\nendonuclease with a gRNA. In order for the gRNA to successfully direct Cas9 cleavage,\nthe corresponding target DNA sequence in the genome must be found next to a PAM site,\nalso known as a Protospacer Adjacent Motif. The canonical PAM is associated with the spCas9 nuclease is 5'-NGG-3'.\nWe are therefore going to try to draw up an exhaustive list of all the genomic regions that could be used for this\ngene therapy.\n\nWe start by selecting all the SNPs that are frequent in the population (> 5%), for which we can\nuse the gnomAD database 4. We want the list created to be usable to treat as many\npatients as possible, so we avoid SNPs that are too rare.\nOnly SNPs that induce the disappearance or appearance of the 5‘-NGG-3’\nmotif will allow us to target only the mutated allele while preserving the WT. To do this, we wrote an in-house script in Python.\nWe used the jvarkit tools suite to reconstitute the genomic context of these SNPs, i.e.\nto add the flanking sequences to the left and right of our SNPs of interest, according to the human reference genome.\nFinally, we used the FlashFry tool to calculate and predict efficiency and specificity\nscores for each of the positions we selected. We wanted to cut the diseased gene efficiently,\nwithout altering other regions of the genome.\n\nUsing this method, we were able to draw up a list of genomic positions of interest in the treatment of Ryanodine receptor\ntype 1-related myopathies (RYR1-RM) of the ‘Autosomal-Dominant-Disorder’ type. 5\nThanks to next-generation sequencing, it is possible to obtain both genomic sequences of a patient\nat a reasonable cost. All the positions on our list for which the patient is heterozygous are therefore\ncandidates for gene therapy!\nCheck out the analysis code here !\n","title":"Data analysis can be use to create a list of interesting genomic regions for gene therapy","titles":["How data analysis can help to fix genetic disorders"]},"3":{"href":"/blog/cutonestrand#generalization","html":"\n

Of course, the implementation of gene therapy has to deal with other obstacles and questions,\nbut this approach can be generalised to other Autosomal-Dominant-Disorders and enable carers to\nscreen the genome extensively in order to create a short list of regions\nof interest for this type of gene therapy !

\n
","isPage":false,"text":"\nOf course, the implementation of gene therapy has to deal with other obstacles and questions,\nbut this approach can be generalised to other Autosomal-Dominant-Disorders and enable carers to\nscreen the genome extensively in order to create a short list of regions\nof interest for this type of gene therapy !\n","title":"Generalization","titles":["How data analysis can help to fix genetic disorders"]},"4":{"href":"/blog/cutonestrand#footnote-label","html":"\n
    \n
  1. \n

    Anzalone A.V, Koblan L.W and Liu D.R . Genome editing with CRISPR–Cas nucleases, base editors, transposases and prime editors DOI

    \n
  2. \n
  3. \n

    F Chemello, A.C Chai, H Li, C Rodriguez-Caycedo, E Sanchez-Ortiz, A Atmanli, A.A Mireault, N Liu,\nR Bassel-Duby, E.N Olson. Precise correction of Duchenne muscular dystrophy exon\ndeletion mutations by base and prime editing DOI

    \n
  4. \n
  5. \n

    Kelly Godbout, Joël Rousseau, Jacques P Tremblay. Successful Correction by Prime Editing of a\nMutation in the RYR1 Gene Responsible for a Myopathy DOI

    \n
  6. \n
  7. \n

    The Genome Aggregation Database (gnomAD)

    \n
  8. \n
  9. \n

    Mathilde Beaufils, Margaux Melka, Julie Brocard, Clement Benoit, Nagi Debbah, Kamel Mamchaoui,\nNorma B. Romero, Anne Frédérique Dalmas-Laurent, Susana Quijano-Roy, Julien Fauré, John Rendu\nand Isabelle Marty. Functional benefit of CRISPR-Cas9-induced allele deletion for RYR1 dominant mutation

    \n
  10. \n
\n
","isPage":false,"text":"\n\n\nAnzalone A.V, Koblan L.W and Liu D.R . Genome editing with CRISPR–Cas nucleases, base editors, transposases and prime editors DOI ↩\n\n\nF Chemello, A.C Chai, H Li, C Rodriguez-Caycedo, E Sanchez-Ortiz, A Atmanli, A.A Mireault, N Liu,\nR Bassel-Duby, E.N Olson. Precise correction of Duchenne muscular dystrophy exon\ndeletion mutations by base and prime editing DOI ↩\n\n\nKelly Godbout, Joël Rousseau, Jacques P Tremblay. Successful Correction by Prime Editing of a\nMutation in the RYR1 Gene Responsible for a Myopathy DOI ↩\n\n\nThe Genome Aggregation Database (gnomAD) ↩\n\n\nMathilde Beaufils, Margaux Melka, Julie Brocard, Clement Benoit, Nagi Debbah, Kamel Mamchaoui,\nNorma B. Romero, Anne Frédérique Dalmas-Laurent, Susana Quijano-Roy, Julien Fauré, John Rendu\nand Isabelle Marty. Functional benefit of CRISPR-Cas9-induced allele deletion for RYR1 dominant mutation ↩\n\n\n","title":"Footnotes","titles":["How data analysis can help to fix genetic disorders"]},"5":{"href":"/blog/expdesign#experimental-design-in-the-context-of-next-generation-sequencing","html":"\n","isPage":true,"text":"\n","title":"Experimental design in the context of next generation sequencing","titles":[]},"6":{"href":"/blog/expdesign#introduction","html":"\n

Coming from a biotechnology background, I was sensitized to the problems of experimental design. I then spent a few years as a bioinformatician, leaving this task to my platform colleagues.

\n

As a bioinformatician, you focus on producing quality pipelines and algorithms for processing sequencer output.\nBut we sometimes forget that, without good experimental design, we run the risk of being unable to draw conclusions,\nor even of unwittingly producing false positives.

\n

Here's a brief overview of the main considerations for experience designers.

\n","isPage":false,"text":"\nComing from a biotechnology background, I was sensitized to the problems of experimental design. I then spent a few years as a bioinformatician, leaving this task to my platform colleagues.\nAs a bioinformatician, you focus on producing quality pipelines and algorithms for processing sequencer output.\nBut we sometimes forget that, without good experimental design, we run the risk of being unable to draw conclusions,\nor even of unwittingly producing false positives. \nHere's a brief overview of the main considerations for experience designers.\n","title":"Introduction","titles":["Experimental design in the context of next generation sequencing"]},"7":{"href":"/blog/expdesign#next-generation-sequencing-specificities","html":"\n

We need to bear in mind that everything starts with biological material, from which we want to extract informative biological sequences, to answer a precise question.\nThe difficulty lies in extracting useful information without confusing it with other factors: background noise, bias...

\n

The sample is first taken from its environment, by which it will have been impacted.\nThe interaction of the biological material with its environment,\nas well as the sampling carried out, already constitute a first source of variance.

\n
","isPage":false,"text":"\nWe need to bear in mind that everything starts with biological material, from which we want to extract informative biological sequences, to answer a precise question.\nThe difficulty lies in extracting useful information without confusing it with other factors: background noise, bias...\nThe sample is first taken from its environment, by which it will have been impacted.\nThe interaction of the biological material with its environment,\nas well as the sampling carried out, already constitute a first source of variance.\n","title":"Next generation sequencing specificities","titles":["Experimental design in the context of next generation sequencing"]},"8":{"href":"/blog/expdesign#methodology","html":"
\n
    \n
  1. Clearly define the question posed and the technology chosen to answer it.
    \nMany confounding factors will depend on the technology chosen. They will have a greater or lesser impact depending on the question asked.
  2. \n
  3. Control the experimental variables
    \nVariables to control can include sample preparation techniques, sequencing parameters and environmental conditions. Ensure that the impact of this factors\non your data is minimized and controled to isolate the impact of the specific variables of interest, enhancing ythe reliability of the results.
  4. \n
  5. Randomization techniques
    \nApplying randomization techniques will prevent your experiment to capture systemic bias in your data.
  6. \n
  7. Replication Strategies
    \nReplicating the experiment with different samples or under different conditions enhances the robustness of the results.\nIt allows for the identification of consistent patterns and aids in generalizing findings to a broader context.
  8. \n
  9. Factorial design
    \nFactorial design is a statistical experimental method that explores the effects of multiple independent variables simultaneously.\nIt allows researchers to assess the individual effects of each factor and any potential interactions between them, providing a more comprehensive understanding\nof experimental outcomes.
  10. \n
\n
","isPage":false,"text":"\n\nClearly define the question posed and the technology chosen to answer it. \nMany confounding factors will depend on the technology chosen. They will have a greater or lesser impact depending on the question asked.\nControl the experimental variables \nVariables to control can include sample preparation techniques, sequencing parameters and environmental conditions. Ensure that the impact of this factors\non your data is minimized and controled to isolate the impact of the specific variables of interest, enhancing ythe reliability of the results.\nRandomization techniques \nApplying randomization techniques will prevent your experiment to capture systemic bias in your data.\nReplication Strategies\nReplicating the experiment with different samples or under different conditions enhances the robustness of the results.\nIt allows for the identification of consistent patterns and aids in generalizing findings to a broader context.\nFactorial design\nFactorial design is a statistical experimental method that explores the effects of multiple independent variables simultaneously.\nIt allows researchers to assess the individual effects of each factor and any potential interactions between them, providing a more comprehensive understanding\nof experimental outcomes.\n\n","title":"Methodology","titles":[]},"9":{"href":"/blog/expdesign#conclusion","html":"
\n

Experimental design is not so complicated in terms of methodology, and is essential to get the most out of sequencing your biological samples.\nHowever, a thorough knowledge of the different technologies available and of experimental design techniques and strategies is required to apply it effectively...

\n
","isPage":false,"text":"\nExperimental design is not so complicated in terms of methodology, and is essential to get the most out of sequencing your biological samples.\nHowever, a thorough knowledge of the different technologies available and of experimental design techniques and strategies is required to apply it effectively...\n","title":"Conclusion","titles":[]},"10":{"href":"/blog/expdesign#to-go-further","html":"
\n\n","isPage":false,"text":"\n\n","title":"To go further","titles":[]},"11":{"href":"/blog/gsea#a-quick-overview-of-gene-sets-enrichment-analysis","html":"\n","isPage":true,"text":"\n","title":"A quick overview of Gene sets enrichment analysis","titles":[]},"12":{"href":"/blog/gsea#why-gsea-analysis-","html":"\n

Genome wide expression analysis has become become a mainstay of genomics research. However, there is still a wide range of tools for interpreting these gene expression profiles.\nThey all have pros, cons, and are still evolving. This, coupled with the fact that these studies rely on the testing of a large number of hypotheses and relatively small sample sizes, lead that whole-genome expression studies in particular, to be often not reproducible.\nThis is why reproducibility is one of the major challenges facing studies involving whole-genome expression data. 1, 2, 3

\n

Finally, interpreting lists of thousands of differentially expressed genes is a tedious exercise for the biologist.

\n

The GSEA, by dezooming from the scale of the gene to that of the pathway. Improves the reproducibility of studies,\nwhile facilitating their interpetation.

\n","isPage":false,"text":"\nGenome wide expression analysis has become become a mainstay of genomics research. However, there is still a wide range of tools for interpreting these gene expression profiles.\nThey all have pros, cons, and are still evolving. This, coupled with the fact that these studies rely on the testing of a large number of hypotheses and relatively small sample sizes, lead that whole-genome expression studies in particular, to be often not reproducible.\nThis is why reproducibility is one of the major challenges facing studies involving whole-genome expression data. 1, 2, 3\nFinally, interpreting lists of thousands of differentially expressed genes is a tedious exercise for the biologist.\nThe GSEA, by dezooming from the scale of the gene to that of the pathway. Improves the reproducibility of studies,\nwhile facilitating their interpetation.\n","title":"Why GSEA Analysis ?","titles":["A quick overview of Gene sets enrichment analysis"]},"13":{"href":"/blog/gsea#principles","html":"\n","isPage":false,"text":"\n","title":"Principles","titles":["A quick overview of Gene sets enrichment analysis"]},"14":{"href":"/blog/gsea#what-is-the-question-","html":"\n

Let's says you have ranked a gene list L according to your favourite metric. The GSEA tries to answer the following question :

\n

Given a gene set S : Does the genes belonging to S tends to occur toward the top (or the bottom) of the list L,\nin which case the gene set is correlated with the phenotypic class distinction.

\n

Of course we will do as many independant tests as we have genes sets to try.\nA multiple testing correction should then be considered.

\n","isPage":false,"text":"\nLet's says you have ranked a gene list L according to your favourite metric. The GSEA tries to answer the following question : \nGiven a gene set S : Does the genes belonging to S tends to occur toward the top (or the bottom) of the list L,\nin which case the gene set is correlated with the phenotypic class distinction.\nOf course we will do as many independant tests as we have genes sets to try.\nA multiple testing correction should then be considered.\n","title":"What is the question ?","titles":["A quick overview of Gene sets enrichment analysis","Principles"]},"15":{"href":"/blog/gsea#the-method","html":"\n

Step 1 : Compute an enrichment score (ES)
\nThis score reflects the degree to which the set S is overrepresented at the extremes top (ES > 0) or bottom (ES < 0) of the ranked list R. It is calculated by walking down the list L,\nincreasing the running sum when we encounter a gene in S and decreasing it when we encounter genes not in S. Finally the maximum deviation from zero encountered during the random walk is kept as ES.

\nStep 2 : Estimation of significance level of ES
\nThe nominal P-Value is estimates the statistical significance of the ES by using an empirical phenotype-based permutation test that\npreserves the correlation structure of the gene expression data. Phenotype labels are permuted and the ES recomputed to generate a null distribution for the ES. The empirical nominal P Value of the observed ES is then calculated relative to\nthis null distribution. Permutation of class labels preserves gene-gene correlations and thus, provide a more biologically reasonable assessment of significance than would be obtained by permuting genes.

\nStep 3 : Adjustment of Multiple Hypothesis Testing.
\nThe enrichment scores for each set are normalized and a false discovery rate is calculated

\n

It is usefull to keep in mind that

\n","isPage":false,"text":"\nStep 1 : Compute an enrichment score (ES)\nThis score reflects the degree to which the set S is overrepresented at the extremes top (ES > 0) or bottom (ES < 0) of the ranked list R. It is calculated by walking down the list L,\nincreasing the running sum when we encounter a gene in S and decreasing it when we encounter genes not in S. Finally the maximum deviation from zero encountered during the random walk is kept as ES. \nStep 2 : Estimation of significance level of ES\nThe nominal P-Value is estimates the statistical significance of the ES by using an empirical phenotype-based permutation test that\npreserves the correlation structure of the gene expression data. Phenotype labels are permuted and the ES recomputed to generate a null distribution for the ES. The empirical nominal P Value of the observed ES is then calculated relative to\nthis null distribution. Permutation of class labels preserves gene-gene correlations and thus, provide a more biologically reasonable assessment of significance than would be obtained by permuting genes.\nStep 3 : Adjustment of Multiple Hypothesis Testing.\nThe enrichment scores for each set are normalized and a false discovery rate is calculated\nIt is usefull to keep in mind that\nThat the GSEA official software will not complain if you provide them with raw gene expression data. However your results will get totally incorrect results.\nYou can perform a pre ranked GSEA, which can be very helpful for performing gene set enrichment analysis on data that do not conform to the typical GSEA scenario. For example, it can be used when the ranking metric choices provided by GSEA are not appropriate for the data, or when a ranked list of genomic features deviates from traditional gene expression data (e.g., GWAS results, ChIP seq, etc.). Also if you lack computing power and have access to pre-ranked list, this solution can be your best option.\nClearly define the question your are trying to address and choose the appropriate ranking metrics.\nGenes sets curation could be useful as a pre-processing step. Indeed you do not need to perform test on genes set you are not interested in. It will increase your need for computing resources and create supplementary noise for the Adjustment of Multiple Hypothesis Testing procedure.\n\n","title":"The Method","titles":["A quick overview of Gene sets enrichment analysis","Principles"]},"16":{"href":"/blog/gsea#to-go-further-with-theory","html":"\n

There exists a variant of GSEA called FGSEA for Fast Gene Set Enrichment Analysis.

\n

Another common approach to perform pathways analysis is the Gene Ontology Enrichment analysis.

\n","isPage":false,"text":"\nThere exists a variant of GSEA called FGSEA for Fast Gene Set Enrichment Analysis.\nAnother common approach to perform pathways analysis is the Gene Ontology Enrichment analysis.\n","title":"To go further with theory","titles":["A quick overview of Gene sets enrichment analysis","Principles"]},"17":{"href":"/blog/gsea#available-programs-for-practice","html":"\n\n\n
","isPage":false,"text":"\n\nOfficial Broad institute tools\nWEB-based GEne SeT AnaLysis Toolkit\nGUI\nR package\nFast Gene Set Enrichment Analysis (Pre-ranked only)\n\n\n","title":"Available programs for practice","titles":["A quick overview of Gene sets enrichment analysis"]},"18":{"href":"/blog/gsea#footnote-label","html":"\n
    \n
  1. \n

    Timothy E. Sweeney , Winston A. Haynes , Francesco Vallania , John P. Ioannidis\nand Purvesh Khatri. (2017). Methods to increase reproducibility in differential gene expression via meta-analysis. Nucleic Acids Research, Volume 45(Issue 1), Page Range. DOI

    \n
  2. \n
  3. \n

    Steven N Goodman , Daniele Fanelli , John P A Ioannidis. (2016). *What does research reproducibility mean? *. Sci Transl Med, 8(341),12. DOI

    \n
  4. \n
  5. \n

    Lianbo Yu. (2020). RNA-Seq Reproducibility Assessment of the Sequencing Quality Control Project. Cancer Inform, Volume 19 DOI

    \n
  6. \n
\n
","isPage":false,"text":"\n\n\nTimothy E. Sweeney , Winston A. Haynes , Francesco Vallania , John P. Ioannidis\nand Purvesh Khatri. (2017). Methods to increase reproducibility in differential gene expression via meta-analysis. Nucleic Acids Research, Volume 45(Issue 1), Page Range. DOI ↩\n\n\nSteven N Goodman , Daniele Fanelli , John P A Ioannidis. (2016). *What does research reproducibility mean? *. Sci Transl Med, 8(341),12. DOI ↩\n\n\nLianbo Yu. (2020). RNA-Seq Reproducibility Assessment of the Sequencing Quality Control Project. Cancer Inform, Volume 19 DOI ↩\n\n\n","title":"Footnotes","titles":["A quick overview of Gene sets enrichment analysis"]},"19":{"href":"/blog#blog","html":"\n
","isPage":true,"text":"\n","title":"Blog","titles":[]},"20":{"href":"/projects/germlinevardb#germlinevardb","html":"\n

A graphical interface to explore your germline genomic variation database.


\n\"\"/

\n","isPage":true,"text":"\n A graphical interface to explore your germline genomic variation database.\n\n","title":"GermlineVarDB","titles":[]},"21":{"href":"/projects/germlinevardb#why-this-app","html":"\n

Few hospitals do not outsource their bioinformatics analysis to private partners (at least in France). There are many reasons for this:

\n\n

Turning to an external service provider is therefore a short-term solution. In the long term, however, outsourcing poses two major problems:

\n\n

With this in mind, I turned my attention to the question of re-internalising this activity at CHUGA.\nThe analytical part will be the subject of another article, but briefly,\nthe nf-core community is, in my opinion, the best candidate on which to base this objective.

\n

However, there is another blocking point. Bioinformatics providers provide, along with a pipeline.\nGraphical interfaces enabling biologists to efficiently process genomic variation data for diagnostic rendering. This being the case, even if you internalize an accredited clinical-quality pipeline, it will be difficult to convince them to go back to a much less attractive Excel spreadsheet. This will be perceived as a step backwards.

\n

SomaVarDB therefore aims to plug into the output of a nf-core pipeline, clinically accredited if possible.\nIt's a package that contains both the tools for building the local database from nf-core output,\nand the interface for interacting with this database.

\n","isPage":false,"text":"\nFew hospitals do not outsource their bioinformatics analysis to private partners (at least in France). There are many reasons for this:\n\nLack of resources and investment capacity to anticipate rapid technological change.\nThe data professions, which are still in their infancy, have not yet fully penetrated these structures.\nCumbersome legal and administrative constraints on the accreditation of IT solutions for clinical use.\n\nTurning to an external service provider is therefore a short-term solution. In the long term, however, outsourcing poses two major problems:\n\nThe cost of the outsourced service is ultimately much higher than in-house.\nUsers (clinical biologists) work free of charge to sort the databases built by these external service providers from the raw data sent to them by the hospitals to which these clinicians belong.\nThe hospital will therefore once again pay for access to the Ias that have been trained thanks to its work.\n\nWith this in mind, I turned my attention to the question of re-internalising this activity at CHUGA.\nThe analytical part will be the subject of another article, but briefly,\nthe nf-core community is, in my opinion, the best candidate on which to base this objective.\nHowever, there is another blocking point. Bioinformatics providers provide, along with a pipeline.\nGraphical interfaces enabling biologists to efficiently process genomic variation data for diagnostic rendering. This being the case, even if you internalize an accredited clinical-quality pipeline, it will be difficult to convince them to go back to a much less attractive Excel spreadsheet. This will be perceived as a step backwards.\nSomaVarDB therefore aims to plug into the output of a nf-core pipeline, clinically accredited if possible.\nIt's a package that contains both the tools for building the local database from nf-core output,\nand the interface for interacting with this database.\n","title":"Why this app","titles":["GermlineVarDB"]},"22":{"href":"/projects/germlinevardb#open-source","html":"\n\n","isPage":false,"text":"\n\nLive demo\nSource code\n\n","title":"Open-source","titles":["GermlineVarDB"]},"23":{"href":"/projects/germlinevardb#can-i-use-it-for-clinical-purposes-","html":"\n

Unfortunately the answer is no at the moment. To do so it would first need to meet the compliance and\nRegulations in healthcare Software Development1,2,3.\nAs you can imagine, this is an unattainable goal for just one person in their spare time.

\nSo if you feel like contributing to the project. Don't hesitate to contact me :\nbenoitclement.data@gmail.com.

\n
","isPage":false,"text":"\nUnfortunately the answer is no at the moment. To do so it would first need to meet the compliance and\nRegulations in healthcare Software Development1,2,3.\nAs you can imagine, this is an unattainable goal for just one person in their spare time. \nSo if you feel like contributing to the project. Don't hesitate to contact me :\nbenoitclement.data@gmail.com.\n","title":"Can I use it for clinical purposes ?","titles":["GermlineVarDB"]},"24":{"href":"/projects/germlinevardb#footnote-label","html":"\n
    \n
  1. \n

    Tuomas Granlund; Tommi Mikkonen; Vlad Stirbu (2020). On Medical Device Software CE Compliance and Conformity Assessment. IEEE, DOI

    \n
  2. \n
  3. \n

    Cyrille Michaud (2020). How to qualify, classify and CE mark software. MD101, URL

    \n
  4. \n
  5. \n

    Małgorzata Kruszynska (2021). CE marking for Medical Device Software: a step-by-step guide. Spyrosoft, URL

    \n
  6. \n
\n
","isPage":false,"text":"\n\n\nTuomas Granlund; Tommi Mikkonen; Vlad Stirbu (2020). On Medical Device Software CE Compliance and Conformity Assessment. IEEE, DOI ↩\n\n\nCyrille Michaud (2020). How to qualify, classify and CE mark software. MD101, URL ↩\n\n\nMałgorzata Kruszynska (2021). CE marking for Medical Device Software: a step-by-step guide. Spyrosoft, URL ↩\n\n\n","title":"Footnotes","titles":["GermlineVarDB"]},"25":{"href":"/projects#here-are-my-projects","html":"\n","isPage":true,"text":"\n","title":"Here are my projects","titles":[]},"26":{"href":"/projects#omicsverse","html":"\n

The initial aim of the OmicsVerse portal is to host demo versions of the various data applications I create.

\n

Application source code and documentation for administrators can be found on my github.

\n

The following sections & pages will host detailed documentation of users.

\n

If you have a genomics-oriented data application to host, don't hesitate to contact me. provided there are resources available.

\n","isPage":false,"text":"\nThe initial aim of the OmicsVerse portal is to host demo versions of the various data applications I create.\nApplication source code and documentation for administrators can be found on my github.\nThe following sections & pages will host detailed documentation of users.\nIf you have a genomics-oriented data application to host, don't hesitate to contact me. provided there are resources available.\n","title":"OmicsVerse","titles":["Here are my projects"]},"27":{"href":"/projects/somavardb#somavardb","html":"\n

A graphical interface to explore your somatic genomic variation database.

\n\"\"/

\n","isPage":true,"text":"\n A graphical interface to explore your somatic genomic variation database.\n\n","title":"SomaVarDB","titles":[]},"28":{"href":"/projects/somavardb#why-this-app","html":"\n

Few hospitals do not outsource their bioinformatics analysis to private partners (at least in France). There are many reasons for this:

\n\n

Turning to an external service provider is therefore a short-term solution. In the long term, however, outsourcing poses two major problems:

\n\n

With this in mind, I turned my attention to the question of re-internalising this activity at CHUGA.\nThe analytical part will be the subject of another article, but briefly,\nthe nf-core community is, in my opinion, the best candidate on which to base this objective.

\n

However, there is another blocking point. Bioinformatics providers provide, along with a pipeline.\nGraphical interfaces enabling biologists to efficiently process genomic variation data for diagnostic rendering. This being the case, even if you internalize an accredited clinical-quality pipeline, it will be difficult to convince them to go back to a much less attractive Excel spreadsheet. This will be perceived as a step backwards.

\n

SomaVarDB therefore aims to plug into the output of a nf-core pipeline, clinically accredited if possible.\nIt's a package that contains both the tools for building the local database from nf-core output,\nand the interface for interacting with this database.

\n","isPage":false,"text":"\nFew hospitals do not outsource their bioinformatics analysis to private partners (at least in France). There are many reasons for this:\n\nLack of resources and investment capacity to anticipate rapid technological change.\nThe data professions, which are still in their infancy, have not yet fully penetrated these structures.\nCumbersome legal and administrative constraints on the accreditation of IT solutions for clinical use.\n\nTurning to an external service provider is therefore a short-term solution. In the long term, however, outsourcing poses two major problems:\n\nThe cost of the outsourced service is ultimately much higher than in-house.\nUsers (clinical biologists) work free of charge to sort the databases built by these external service providers from the raw data sent to them by the hospitals to which these clinicians belong.\nThe hospital will therefore once again pay for access to the Ias that have been trained thanks to its work.\n\nWith this in mind, I turned my attention to the question of re-internalising this activity at CHUGA.\nThe analytical part will be the subject of another article, but briefly,\nthe nf-core community is, in my opinion, the best candidate on which to base this objective.\nHowever, there is another blocking point. Bioinformatics providers provide, along with a pipeline.\nGraphical interfaces enabling biologists to efficiently process genomic variation data for diagnostic rendering. This being the case, even if you internalize an accredited clinical-quality pipeline, it will be difficult to convince them to go back to a much less attractive Excel spreadsheet. This will be perceived as a step backwards.\nSomaVarDB therefore aims to plug into the output of a nf-core pipeline, clinically accredited if possible.\nIt's a package that contains both the tools for building the local database from nf-core output,\nand the interface for interacting with this database.\n","title":"Why this app","titles":["SomaVarDB"]},"29":{"href":"/projects/somavardb#open-source","html":"\n\n","isPage":false,"text":"\n\nLive demo\nSource code\n\n","title":"Open-source","titles":["SomaVarDB"]},"30":{"href":"/projects/somavardb#can-i-use-it-for-clinical-purposes-","html":"\n

Unfortunately the answer is no at the moment. To do so it would first need to meet the compliance and\nRegulations in healthcare Software Development1,2,3.\nAs you can imagine, this is an unattainable goal for just one person in their spare time.

\nSo if you feel like contributing to the project. Don't hesitate to contact me :\nbenoitclement.data@gmail.com.

\n
","isPage":false,"text":"\nUnfortunately the answer is no at the moment. To do so it would first need to meet the compliance and\nRegulations in healthcare Software Development1,2,3.\nAs you can imagine, this is an unattainable goal for just one person in their spare time. \nSo if you feel like contributing to the project. Don't hesitate to contact me :\nbenoitclement.data@gmail.com.\n","title":"Can I use it for clinical purposes ?","titles":["SomaVarDB"]},"31":{"href":"/projects/somavardb#footnote-label","html":"\n
    \n
  1. \n

    Tuomas Granlund; Tommi Mikkonen; Vlad Stirbu (2020). On Medical Device Software CE Compliance and Conformity Assessment. IEEE, DOI

    \n
  2. \n
  3. \n

    Cyrille Michaud (2020). How to qualify, classify and CE mark software. MD101, URL

    \n
  4. \n
  5. \n

    Małgorzata Kruszynska (2021). CE marking for Medical Device Software: a step-by-step guide. Spyrosoft, URL

    \n
  6. \n
\n
","isPage":false,"text":"\n\n\nTuomas Granlund; Tommi Mikkonen; Vlad Stirbu (2020). On Medical Device Software CE Compliance and Conformity Assessment. IEEE, DOI ↩\n\n\nCyrille Michaud (2020). How to qualify, classify and CE mark software. MD101, URL ↩\n\n\nMałgorzata Kruszynska (2021). CE marking for Medical Device Software: a step-by-step guide. Spyrosoft, URL ↩\n\n\n","title":"Footnotes","titles":["SomaVarDB"]}},"dirtCount":0,"index":[["8",{"2":{"18":1}}],["zero",{"2":{"15":1}}],["0",{"2":{"15":2}}],["yet",{"2":{"21":1,"28":1}}],["years",{"2":{"6":1}}],["yu",{"2":{"18":1}}],["ythe",{"2":{"8":1}}],["your",{"2":{"8":3,"9":1,"14":1,"15":4,"20":1,"27":1}}],["you",{"2":{"6":1,"14":1,"15":5,"21":1,"23":2,"26":1,"28":1,"30":2}}],["just",{"2":{"23":1,"30":1}}],["julien",{"2":{"4":1}}],["julie",{"2":{"4":1}}],["john",{"2":{"4":1,"18":2}}],["joël",{"2":{"4":1}}],["jacques",{"2":{"4":1}}],["jvarkit",{"2":{"2":1}}],["↩",{"2":{"4":5,"18":3,"24":3,"31":3}}],["kruszynska",{"2":{"24":1,"31":1}}],["khatri",{"2":{"18":1}}],["keep",{"2":{"15":1}}],["kept",{"2":{"15":1}}],["kelly",{"2":{"4":1}}],["knowledge",{"2":{"9":1}}],["known",{"2":{"2":1}}],["kamel",{"2":{"4":1}}],["koblan",{"2":{"4":1}}],["versions",{"2":{"26":1}}],["very",{"2":{"15":1}}],["vlad",{"2":{"24":1,"31":1}}],["volume",{"2":{"18":2}}],["via",{"2":{"18":1}}],["various",{"2":{"26":1}}],["variation",{"2":{"20":1,"21":1,"27":1,"28":1}}],["variant",{"2":{"16":1}}],["variance",{"2":{"7":1}}],["variables",{"2":{"8":4}}],["vallania",{"2":{"18":1}}],["value",{"2":{"15":2}}],["v",{"2":{"4":1}}],["qualify",{"2":{"24":1,"31":1}}],["quality",{"2":{"6":1,"18":1,"21":1,"28":1}}],["question",{"0":{"14":1},"2":{"7":1,"8":2,"14":1,"15":1,"21":1,"28":1}}],["questions",{"2":{"3":1}}],["quijano",{"2":{"4":1}}],["quick",{"0":{"11":1},"1":{"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1},"2":{"1":1}}],["45",{"2":{"18":1}}],["4",{"2":{"2":1}}],["x27",{"2":{"2":2,"6":1,"14":1,"21":1,"23":1,"26":1,"28":1,"30":1}}],["5",{"2":{"2":4}}],["github",{"2":{"26":1}}],["given",{"2":{"14":1}}],["gmail",{"2":{"23":1,"30":1}}],["guide",{"2":{"24":1,"31":1}}],["gui",{"2":{"17":1}}],["gwas",{"2":{"15":1}}],["g",{"2":{"15":1}}],["gsea",{"0":{"12":1},"2":{"12":1,"14":1,"15":4,"16":1}}],["germline",{"2":{"20":1}}],["germlinevardb",{"0":{"20":1},"1":{"21":1,"22":1,"23":1,"24":1}}],["get",{"2":{"9":1,"15":1}}],["genomics",{"2":{"12":1,"26":1}}],["genomic",{"0":{"2":1},"2":{"2":4,"15":1,"20":1,"21":1,"27":1,"28":1}}],["genome",{"2":{"1":1,"2":4,"3":1,"4":2,"12":3}}],["generate",{"2":{"15":1}}],["generation",{"0":{"5":1,"7":1},"1":{"6":1,"7":1},"2":{"2":1}}],["generalizing",{"2":{"8":1}}],["generalization",{"0":{"3":1}}],["generalised",{"2":{"3":1}}],["genes",{"2":{"1":1,"12":1,"14":2,"15":4}}],["gene",{"0":{"2":1,"11":1},"1":{"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1},"2":{"1":3,"2":3,"3":2,"4":1,"12":2,"14":3,"15":7,"16":2,"17":2,"18":1}}],["genetic",{"0":{"0":1},"1":{"1":1,"2":1,"3":1,"4":1},"2":{"1":2}}],["granlund",{"2":{"24":1,"31":1}}],["graphical",{"2":{"20":1,"21":1,"27":1,"28":1}}],["greater",{"2":{"8":1}}],["grna",{"2":{"2":2}}],["goal",{"2":{"23":1,"30":1}}],["go",{"0":{"10":1,"16":1},"2":{"21":1,"28":1}}],["goodman",{"2":{"18":1}}],["good",{"2":{"6":1}}],["godbout",{"2":{"4":1}}],["going",{"2":{"2":1}}],["gnomad",{"2":{"2":1,"4":1}}],["gt",{"2":{"2":1,"15":1}}],["local",{"2":{"21":1,"28":1}}],["long",{"2":{"21":1,"28":1}}],["looks",{"2":{"1":2}}],["lt",{"2":{"15":1}}],["lack",{"2":{"15":1,"21":1,"28":1}}],["labels",{"2":{"15":2}}],["large",{"2":{"12":1}}],["laurent",{"2":{"4":1}}],["less",{"2":{"21":1,"28":1}}],["lesser",{"2":{"8":1}}],["legal",{"2":{"21":1,"28":1}}],["level",{"2":{"15":1}}],["let",{"2":{"14":1}}],["least",{"2":{"21":1,"28":1}}],["lead",{"2":{"12":1}}],["leaving",{"2":{"6":1}}],["left",{"2":{"2":1}}],["like",{"2":{"23":1,"30":1}}],["live",{"2":{"22":1,"29":1}}],["lianbo",{"2":{"18":1}}],["lies",{"2":{"7":1}}],["li",{"2":{"4":1}}],["liu",{"2":{"4":2}}],["lists",{"2":{"12":1}}],["list",{"0":{"2":1},"2":{"2":4,"3":1,"14":2,"15":4}}],["l",{"2":{"4":1,"14":2,"15":1}}],["url",{"2":{"24":2,"31":2}}],["ultimately",{"2":{"21":1,"28":1}}],["unattainable",{"2":{"23":1,"30":1}}],["unable",{"2":{"6":1}}],["unfortunately",{"2":{"23":1,"30":1}}],["understanding",{"2":{"8":1}}],["under",{"2":{"8":1}}],["unwittingly",{"2":{"6":1}}],["using",{"2":{"2":1,"15":1}}],["us",{"2":{"2":1}}],["usable",{"2":{"2":1}}],["users",{"2":{"21":1,"26":1,"28":1}}],["usefull",{"2":{"15":1}}],["useful",{"2":{"7":1,"15":1}}],["used",{"2":{"2":3,"15":1}}],["use",{"0":{"2":1,"23":1,"30":1},"2":{"2":1,"21":1,"28":1}}],["up",{"2":{"1":1,"2":2}}],["blocking",{"2":{"21":1,"28":1}}],["blog",{"0":{"19":1}}],["building",{"2":{"21":1,"28":1}}],["built",{"2":{"21":1,"28":1}}],["but",{"2":{"3":1,"6":1,"21":1,"28":1}}],["bottom",{"2":{"14":1,"15":1}}],["both",{"2":{"2":1,"21":1,"28":1}}],["bias",{"2":{"7":1,"8":1}}],["bioinformatics",{"2":{"21":2,"28":2}}],["bioinformatician",{"2":{"6":2}}],["biologists",{"2":{"21":2,"28":2}}],["biologist",{"2":{"12":1}}],["biologically",{"2":{"15":1}}],["biological",{"2":{"7":3,"9":1}}],["biotechnology",{"2":{"6":1}}],["backwards",{"2":{"21":1,"28":1}}],["back",{"2":{"21":1,"28":1}}],["background",{"2":{"6":1,"7":1}}],["bassel",{"2":{"4":1}}],["based",{"2":{"15":1,"17":1}}],["base",{"2":{"4":2,"21":1,"28":1}}],["b",{"2":{"4":1}}],["by",{"2":{"2":2,"4":2,"7":1,"12":1,"15":4,"21":2,"24":1,"28":2,"31":1}}],["belong",{"2":{"21":1,"28":1}}],["belonging",{"2":{"14":1}}],["best",{"2":{"15":1,"21":1,"28":1}}],["become",{"2":{"12":2}}],["between",{"2":{"8":1}}],["been",{"2":{"7":1,"21":1,"28":1}}],["bear",{"2":{"7":1}}],["beaufils",{"2":{"4":1}}],["being",{"2":{"6":1,"21":1,"28":1}}],["benefit",{"2":{"4":1}}],["benoitclement",{"2":{"23":1,"30":1}}],["benoit",{"2":{"4":1}}],["be",{"0":{"2":1},"2":{"1":2,"2":3,"3":1,"12":1,"14":1,"15":5,"21":3,"26":1,"28":3}}],["broad",{"2":{"17":1}}],["broader",{"2":{"8":1}}],["brocard",{"2":{"4":1}}],["briefly",{"2":{"21":1,"28":1}}],["brief",{"2":{"6":1}}],["brighter",{"2":{"1":1}}],["breaking",{"2":{"1":1}}],["break",{"2":{"1":1}}],["breakthrough",{"2":{"1":1}}],["341",{"2":{"18":1}}],["3",{"2":{"1":1,"2":2,"12":1,"15":1,"23":1,"30":1}}],["2021",{"2":{"24":1,"31":1}}],["2020",{"2":{"18":1,"24":2,"31":2}}],["2016",{"2":{"18":1}}],["2017",{"2":{"18":1}}],["2",{"2":{"1":1,"12":1,"15":1,"23":1,"30":1}}],["19",{"2":{"18":1}}],["12",{"2":{"18":1}}],["1",{"2":{"1":1,"2":1,"12":1,"15":1,"18":1}}],["nf",{"2":{"21":3,"28":3}}],["no",{"2":{"23":1,"30":1}}],["nominal",{"2":{"15":2}}],["not",{"2":{"9":1,"12":1,"15":6,"21":2,"28":2}}],["noise",{"2":{"7":1,"15":1}}],["normalized",{"2":{"15":1}}],["norma",{"2":{"4":1}}],["nagi",{"2":{"4":1}}],["name",{"2":{"1":1}}],["n",{"2":{"4":2,"18":1}}],["ngg",{"2":{"2":2}}],["nucleic",{"2":{"18":1}}],["nucleases",{"2":{"4":1}}],["nuclease",{"2":{"2":1}}],["null",{"2":{"15":2}}],["number",{"2":{"1":1,"12":1}}],["next",{"0":{"5":1,"7":1},"1":{"6":1,"7":1},"2":{"2":2}}],["need",{"2":{"1":1,"7":1,"15":2,"23":1,"30":1}}],["new",{"2":{"1":1}}],["rna",{"2":{"18":1}}],["risk",{"2":{"6":1}}],["right",{"2":{"2":1}}],["running",{"2":{"15":1}}],["run",{"2":{"6":1}}],["robustness",{"2":{"8":1}}],["roy",{"2":{"4":1}}],["romero",{"2":{"4":1}}],["rousseau",{"2":{"4":1}}],["rodriguez",{"2":{"4":1}}],["r",{"2":{"4":2,"15":1,"17":1}}],["rm",{"2":{"2":1}}],["ryr1",{"2":{"2":1,"4":2}}],["ryanodine",{"2":{"2":1}}],["rapid",{"2":{"21":1,"28":1}}],["raw",{"2":{"15":1,"21":1,"28":1}}],["rate",{"2":{"15":1}}],["ranking",{"2":{"15":2}}],["ranked",{"2":{"14":1,"15":4,"17":1}}],["random",{"2":{"15":1}}],["randomization",{"2":{"8":2}}],["range",{"2":{"1":1,"12":1,"18":1}}],["rare",{"2":{"2":1}}],["regulations",{"2":{"23":1,"30":1}}],["regions",{"0":{"2":1},"2":{"2":2,"3":1}}],["rendering",{"2":{"21":1,"28":1}}],["rendu",{"2":{"4":1}}],["re",{"2":{"21":1,"28":1}}],["reasons",{"2":{"21":1,"28":1}}],["reasonable",{"2":{"2":1,"15":1}}],["reflects",{"2":{"15":1}}],["reference",{"2":{"2":1}}],["reproducibility",{"2":{"12":2,"18":3}}],["reproducible",{"2":{"12":1}}],["replicating",{"2":{"8":1}}],["replication",{"2":{"8":1}}],["required",{"2":{"9":1}}],["relative",{"2":{"15":1}}],["relatively",{"2":{"12":1}}],["related",{"2":{"2":1}}],["rely",{"2":{"12":1}}],["reliability",{"2":{"8":1}}],["resources",{"2":{"15":1,"21":1,"26":1,"28":1}}],["research",{"2":{"12":1,"18":2}}],["researchers",{"2":{"1":1,"8":1}}],["results",{"2":{"8":2,"15":3}}],["responsible",{"2":{"4":1}}],["recomputed",{"2":{"15":1}}],["reconstitute",{"2":{"2":1}}],["receptor",{"2":{"2":1}}],["remains",{"2":{"1":1}}],["revolutionary",{"2":{"1":1}}],["ieee",{"2":{"24":1,"31":1}}],["imagine",{"2":{"23":1,"30":1}}],["improves",{"2":{"12":1}}],["improved",{"2":{"1":1}}],["impact",{"2":{"8":3}}],["impacted",{"2":{"7":1}}],["implementation",{"2":{"3":1}}],["implies",{"2":{"1":1}}],["ias",{"2":{"21":1,"28":1}}],["ioannidis",{"2":{"18":2}}],["if",{"2":{"15":2,"21":2,"23":1,"26":1,"28":2,"30":1}}],["identification",{"2":{"8":1}}],["its",{"2":{"7":2,"21":1,"28":1}}],["it",{"0":{"23":1,"30":1},"2":{"2":1,"7":2,"8":3,"9":1,"15":5,"21":3,"23":1,"28":3,"30":1}}],["i",{"0":{"23":1,"30":1},"2":{"2":1,"6":2,"21":1,"26":1,"28":1}}],["issue",{"2":{"18":1}}],["issues",{"2":{"1":1}}],["isolate",{"2":{"8":1}}],["isabelle",{"2":{"4":1}}],["is",{"0":{"14":1},"2":{"1":2,"2":5,"7":1,"8":2,"9":3,"12":4,"14":1,"15":7,"16":1,"21":4,"23":2,"26":1,"28":4,"30":2}}],["initial",{"2":{"26":1}}],["infancy",{"2":{"21":1,"28":1}}],["inform",{"2":{"18":1}}],["information",{"2":{"7":1}}],["informative",{"2":{"7":1}}],["investment",{"2":{"21":1,"28":1}}],["involving",{"2":{"12":1}}],["institute",{"2":{"17":1}}],["increase",{"2":{"15":1,"18":1}}],["increasing",{"2":{"15":1}}],["incorrect",{"2":{"15":1}}],["include",{"2":{"8":1}}],["indeed",{"2":{"15":1}}],["independant",{"2":{"14":1}}],["independent",{"2":{"8":1}}],["individual",{"2":{"8":1}}],["induced",{"2":{"4":1}}],["induce",{"2":{"2":1}}],["into",{"2":{"21":1,"28":1}}],["interacting",{"2":{"21":1,"28":1}}],["interactions",{"2":{"8":1}}],["interaction",{"2":{"7":1}}],["internalize",{"2":{"21":1,"28":1}}],["internalising",{"2":{"21":1,"28":1}}],["interfaces",{"2":{"21":1,"28":1}}],["interface",{"2":{"20":1,"21":1,"27":1,"28":1}}],["interpetation",{"2":{"12":1}}],["interpreting",{"2":{"12":2}}],["interested",{"2":{"15":1}}],["interest",{"2":{"2":2,"3":1,"8":1}}],["interesting",{"0":{"2":1}}],["introduction",{"0":{"1":1,"6":1}}],["in",{"0":{"5":1},"1":{"6":1,"7":1},"2":{"1":2,"2":6,"3":1,"4":1,"7":2,"8":2,"9":1,"12":1,"14":1,"15":4,"18":1,"21":6,"23":2,"28":6,"30":2}}],["etc",{"2":{"15":1}}],["empirical",{"2":{"15":2}}],["estimates",{"2":{"15":1}}],["estimation",{"2":{"15":1}}],["es",{"2":{"15":9}}],["essential",{"2":{"9":1}}],["evolving",{"2":{"12":1}}],["even",{"2":{"1":1,"6":1,"21":1,"28":1}}],["everything",{"2":{"7":1}}],["ever",{"2":{"1":1}}],["excel",{"2":{"21":1,"28":1}}],["exists",{"2":{"16":1}}],["example",{"2":{"15":1}}],["exercise",{"2":{"12":1}}],["explore",{"2":{"20":1,"27":1}}],["explores",{"2":{"8":1}}],["expressed",{"2":{"12":1}}],["expression",{"2":{"12":4,"15":3,"18":1}}],["experiment",{"2":{"8":2}}],["experimental",{"0":{"5":1},"1":{"6":1,"7":1},"2":{"6":2,"8":3,"9":2}}],["experience",{"2":{"6":1}}],["external",{"2":{"21":2,"28":2}}],["extensively",{"2":{"3":1}}],["extremes",{"2":{"15":1}}],["extracting",{"2":{"7":1}}],["extract",{"2":{"7":1}}],["exon",{"2":{"4":1}}],["exhaustive",{"2":{"2":1}}],["enabling",{"2":{"21":1,"28":1}}],["enable",{"2":{"3":1}}],["encountered",{"2":{"15":1}}],["encounter",{"2":{"15":2}}],["enrichment",{"0":{"11":1},"1":{"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1},"2":{"15":3,"16":2,"17":1}}],["enhances",{"2":{"8":1}}],["enhancing",{"2":{"8":1}}],["ensure",{"2":{"8":1}}],["environmental",{"2":{"8":1}}],["environment",{"2":{"7":2}}],["endonuclease",{"2":{"2":1}}],["effects",{"2":{"8":2}}],["effectively",{"2":{"9":1}}],["effective",{"2":{"1":1}}],["effectiveness",{"2":{"1":1}}],["efficiently",{"2":{"2":1,"21":1,"28":1}}],["efficiency",{"2":{"2":1}}],["e",{"2":{"2":1,"4":2,"15":1,"18":1}}],["each",{"2":{"1":1,"2":1,"8":1,"15":1}}],["editors",{"2":{"4":2}}],["editing",{"2":{"4":3}}],["edit",{"2":{"1":1}}],["work",{"2":{"21":2,"28":2}}],["world",{"2":{"1":1}}],["would",{"2":{"15":1,"23":1,"30":1}}],["when",{"2":{"15":4}}],["what",{"0":{"14":1},"2":{"18":1}}],["whole",{"2":{"12":2}}],["why",{"0":{"12":1,"21":1,"28":1},"2":{"12":1}}],["while",{"2":{"2":1,"12":1}}],["which",{"2":{"1":1,"2":2,"7":2,"14":1,"15":2,"21":3,"28":3}}],["walk",{"2":{"15":1}}],["walking",{"2":{"15":1}}],["was",{"2":{"6":1}}],["wanted",{"2":{"2":1}}],["want",{"2":{"2":1,"7":1}}],["w",{"2":{"4":1}}],["wrote",{"2":{"2":1}}],["wt",{"2":{"2":1}}],["web",{"2":{"17":1}}],["well",{"2":{"7":1}}],["were",{"2":{"2":1}}],["we",{"2":{"1":2,"2":11,"6":2,"7":2,"14":2,"15":2}}],["winston",{"2":{"18":1}}],["will",{"2":{"1":1,"2":1,"7":1,"8":3,"14":1,"15":3,"21":4,"26":1,"28":4}}],["wild",{"2":{"1":1}}],["wide",{"2":{"1":1,"12":2}}],["without",{"2":{"1":1,"2":1,"6":1,"7":1}}],["with",{"0":{"16":1},"2":{"1":3,"2":2,"3":1,"4":1,"7":3,"8":1,"12":1,"14":1,"15":1,"21":3,"28":3}}],["omicsverse",{"0":{"26":1},"2":{"26":1}}],["open",{"0":{"22":1,"29":1}}],["opens",{"2":{"1":1}}],["opinion",{"2":{"21":1,"28":1}}],["option",{"2":{"15":1}}],["overrepresented",{"2":{"15":1}}],["overview",{"0":{"11":1},"1":{"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1},"2":{"6":1}}],["occur",{"2":{"14":1}}],["olson",{"2":{"4":1}}],["objective",{"2":{"21":1,"28":1}}],["observed",{"2":{"15":1}}],["obstacles",{"2":{"3":1}}],["obtained",{"2":{"15":1}}],["obtain",{"2":{"2":1}}],["outsourcing",{"2":{"21":1,"28":1}}],["outsourced",{"2":{"21":1,"28":1}}],["outsource",{"2":{"21":1,"28":1}}],["outcomes",{"2":{"8":1}}],["output",{"2":{"6":1,"21":2,"28":2}}],["out",{"2":{"2":1,"7":1,"9":1}}],["our",{"2":{"2":2}}],["other",{"2":{"2":1,"3":2,"7":1}}],["oriented",{"2":{"26":1}}],["ortiz",{"2":{"4":1}}],["order",{"2":{"2":1,"3":1}}],["or",{"2":{"1":1,"2":1,"6":1,"8":2,"14":1,"15":2}}],["once",{"2":{"21":1,"28":1}}],["ontology",{"2":{"16":1}}],["one",{"2":{"12":1,"23":1,"30":1}}],["only",{"2":{"1":1,"2":2,"17":1}}],["on",{"2":{"1":1,"2":1,"6":1,"8":3,"12":1,"15":2,"21":2,"24":1,"26":1,"28":2,"31":1}}],["official",{"2":{"15":1,"17":1}}],["offering",{"2":{"1":1}}],["often",{"2":{"12":1}}],["of",{"0":{"2":1,"5":1,"11":1},"1":{"6":1,"7":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1},"2":{"1":11,"2":13,"3":5,"4":3,"6":4,"7":2,"8":9,"9":4,"12":10,"14":2,"15":11,"16":1,"18":1,"21":7,"26":3,"28":7}}],["md101",{"2":{"24":1,"31":1}}],["moment",{"2":{"23":1,"30":1}}],["most",{"2":{"9":1}}],["more",{"2":{"8":1,"15":1}}],["motif",{"2":{"2":2}}],["michaud",{"2":{"24":1,"31":1}}],["mikkonen",{"2":{"24":1,"31":1}}],["minimized",{"2":{"8":1}}],["mind",{"2":{"7":1,"15":1,"21":1,"28":1}}],["mireault",{"2":{"4":1}}],["my",{"0":{"25":1},"1":{"26":1},"2":{"6":1,"21":2,"26":1,"28":2}}],["myopathy",{"2":{"4":1}}],["myopathies",{"2":{"2":1}}],["me",{"2":{"23":1,"26":1,"30":1}}],["meet",{"2":{"23":1,"30":1}}],["medical",{"2":{"24":2,"31":2}}],["medicine",{"2":{"1":2}}],["med",{"2":{"18":1}}],["mean",{"2":{"18":1}}],["meta",{"2":{"18":1}}],["metrics",{"2":{"15":1}}],["metric",{"2":{"14":1,"15":1}}],["methods",{"2":{"18":1}}],["methodology",{"0":{"8":1},"2":{"9":1}}],["method",{"0":{"15":1},"2":{"2":1,"8":1}}],["melka",{"2":{"4":1}}],["małgorzata",{"2":{"24":1,"31":1}}],["maximum",{"2":{"15":1}}],["material",{"2":{"7":2}}],["mathilde",{"2":{"4":1}}],["mainstay",{"2":{"12":1}}],["main",{"2":{"6":1}}],["marking",{"2":{"24":1,"31":1}}],["mark",{"2":{"24":1,"31":1}}],["marty",{"2":{"4":1}}],["margaux",{"2":{"4":1}}],["mamchaoui",{"2":{"4":1}}],["many",{"2":{"2":1,"8":1,"14":1,"21":1,"28":1}}],["major",{"2":{"1":1,"12":1,"21":1,"28":1}}],["much",{"2":{"21":2,"28":2}}],["multiple",{"2":{"8":1,"14":1,"15":2}}],["muscular",{"2":{"4":1}}],["must",{"2":{"2":1}}],["mutation",{"2":{"4":2}}],["mutations",{"2":{"1":1,"4":1}}],["mutated",{"2":{"1":3,"2":1}}],["purposes",{"0":{"23":1,"30":1}}],["purvesh",{"2":{"18":1}}],["plug",{"2":{"21":1,"28":1}}],["platform",{"2":{"6":1}}],["pipeline",{"2":{"21":3,"28":3}}],["pipelines",{"2":{"6":1}}],["penetrated",{"2":{"21":1,"28":1}}],["person",{"2":{"23":1,"30":1}}],["personalized",{"2":{"1":2}}],["perceived",{"2":{"21":1,"28":1}}],["performing",{"2":{"15":1}}],["perform",{"2":{"15":2,"16":1}}],["permuting",{"2":{"15":1}}],["permuted",{"2":{"15":1}}],["permutation",{"2":{"15":2}}],["phenotype",{"2":{"15":2}}],["phenotypic",{"2":{"14":1}}],["p",{"2":{"4":1,"15":2,"18":2}}],["python",{"2":{"2":1}}],["pyogenes",{"2":{"2":1}}],["pay",{"2":{"21":1,"28":1}}],["pages",{"2":{"26":1}}],["page",{"2":{"18":1}}],["package",{"2":{"17":1,"21":1,"28":1}}],["parameters",{"2":{"8":1}}],["partners",{"2":{"21":1,"28":1}}],["particular",{"2":{"12":1}}],["part",{"2":{"1":1,"21":1,"28":1}}],["pam",{"2":{"2":2}}],["pathways",{"2":{"16":1}}],["pathway",{"2":{"12":1}}],["pathogenic",{"2":{"1":1}}],["patterns",{"2":{"8":1}}],["patients",{"2":{"2":1}}],["patient",{"2":{"1":1,"2":2}}],["practice",{"0":{"17":1}}],["private",{"2":{"21":1,"28":1}}],["principles",{"0":{"13":1},"1":{"14":1,"15":1,"16":1}}],["prime",{"2":{"4":3}}],["professions",{"2":{"21":1,"28":1}}],["profiles",{"2":{"12":1}}],["projects",{"0":{"25":1},"1":{"26":1}}],["project",{"2":{"18":1,"23":1,"30":1}}],["programs",{"0":{"17":1}}],["process",{"2":{"21":1,"28":1}}],["processing",{"2":{"6":1,"15":1}}],["procedure",{"2":{"15":1}}],["providers",{"2":{"21":2,"28":2}}],["provider",{"2":{"21":1,"28":1}}],["provided",{"2":{"15":1,"26":1}}],["provide",{"2":{"15":2,"21":1,"28":1}}],["providing",{"2":{"8":1}}],["pros",{"2":{"12":1}}],["producing",{"2":{"6":2}}],["problems",{"2":{"6":1,"21":1,"28":1}}],["protospacer",{"2":{"2":1}}],["promising",{"2":{"1":1}}],["promise",{"2":{"1":1}}],["pre",{"2":{"15":3,"17":1}}],["prevent",{"2":{"8":1}}],["preparation",{"2":{"8":1}}],["precise",{"2":{"4":1,"7":1}}],["precisely",{"2":{"1":1}}],["predict",{"2":{"2":1}}],["preserves",{"2":{"15":2}}],["preserving",{"2":{"2":1}}],["presence",{"2":{"1":1}}],["portal",{"2":{"26":1}}],["point",{"2":{"21":1,"28":1}}],["power",{"2":{"15":1}}],["poses",{"2":{"21":1,"28":1}}],["posed",{"2":{"8":1}}],["positives",{"2":{"6":1}}],["positions",{"2":{"2":3}}],["possible",{"2":{"2":2,"21":1,"28":1}}],["possibilities",{"2":{"1":1}}],["population",{"2":{"2":1}}],["potential",{"2":{"1":2,"8":1}}],["fgsea",{"2":{"16":1}}],["feel",{"2":{"23":1,"30":1}}],["features",{"2":{"15":1}}],["few",{"2":{"6":1,"21":1,"28":1}}],["fanelli",{"2":{"18":1}}],["fast",{"2":{"16":1,"17":1}}],["favourite",{"2":{"14":1}}],["facilitating",{"2":{"12":1}}],["facing",{"2":{"12":1}}],["fact",{"2":{"12":1}}],["factor",{"2":{"8":1}}],["factorial",{"2":{"8":2}}],["factors",{"2":{"7":1,"8":2}}],["false",{"2":{"6":1,"15":1}}],["fauré",{"2":{"4":1}}],["free",{"2":{"21":1,"28":1}}],["frequent",{"2":{"2":1}}],["france",{"2":{"21":1,"28":1}}],["francesco",{"2":{"18":1}}],["from",{"2":{"6":1,"7":2,"12":1,"15":2,"21":2,"28":2}}],["frédérique",{"2":{"4":1}}],["f",{"2":{"4":1}}],["flashfry",{"2":{"2":1}}],["flanking",{"2":{"2":1}}],["findings",{"2":{"8":1}}],["finally",{"2":{"2":1,"12":1,"15":1}}],["first",{"2":{"7":2,"23":1,"30":1}}],["fix",{"0":{"0":1},"1":{"1":1,"2":1,"3":1,"4":1}}],["following",{"2":{"14":1,"26":1}}],["focus",{"2":{"6":1}}],["footnotes",{"0":{"4":1,"18":1,"24":1,"31":1}}],["found",{"2":{"2":1,"26":1}}],["forget",{"2":{"6":1}}],["for",{"0":{"2":1,"17":1,"23":1,"30":1},"2":{"1":5,"2":6,"3":1,"4":2,"6":2,"8":1,"12":2,"15":7,"16":1,"21":6,"23":1,"24":1,"26":1,"28":6,"30":1,"31":1}}],["fully",{"2":{"21":1,"28":1}}],["further",{"0":{"10":1,"16":1}}],["functional",{"2":{"1":1,"4":1}}],["future",{"2":{"1":2}}],["sweeney",{"2":{"18":1}}],["should",{"2":{"14":1}}],["short",{"2":{"3":1,"21":1,"28":1}}],["small",{"2":{"12":1}}],["systemic",{"2":{"8":1}}],["says",{"2":{"14":1}}],["sampling",{"2":{"7":1}}],["samples",{"2":{"8":1,"9":1}}],["sample",{"2":{"7":1,"8":1,"12":1}}],["sanchez",{"2":{"4":1}}],["sci",{"2":{"18":1}}],["scientists",{"2":{"1":1}}],["scenario",{"2":{"15":1}}],["score",{"2":{"15":2}}],["scores",{"2":{"2":1,"15":1}}],["scale",{"2":{"12":1}}],["screen",{"2":{"3":1}}],["script",{"2":{"2":1}}],["snps",{"2":{"2":5}}],["stirbu",{"2":{"24":1,"31":1}}],["still",{"2":{"1":1,"12":2,"21":1,"28":1}}],["steven",{"2":{"18":1}}],["step",{"2":{"15":4,"21":1,"24":2,"28":1,"31":2}}],["structures",{"2":{"21":1,"28":1}}],["structure",{"2":{"15":1}}],["strategies",{"2":{"8":1,"9":1}}],["studies",{"2":{"12":4}}],["statistical",{"2":{"8":1,"15":1}}],["starts",{"2":{"7":1}}],["start",{"2":{"2":1}}],["significance",{"2":{"15":3}}],["sizes",{"2":{"12":1}}],["simultaneously",{"2":{"8":1}}],["site",{"2":{"2":1}}],["single",{"2":{"1":1}}],["subject",{"2":{"21":1,"28":1}}],["supplementary",{"2":{"15":1}}],["sum",{"2":{"15":1}}],["susana",{"2":{"4":1}}],["successful",{"2":{"4":1}}],["successfully",{"2":{"2":1}}],["suite",{"2":{"2":1}}],["sufficient",{"2":{"1":1}}],["spyrosoft",{"2":{"24":1,"31":1}}],["spare",{"2":{"23":1,"30":1}}],["spreadsheet",{"2":{"21":1,"28":1}}],["spent",{"2":{"6":1}}],["specificities",{"0":{"7":1}}],["specificity",{"2":{"2":1}}],["specific",{"2":{"2":1,"8":1}}],["specifically",{"2":{"1":1}}],["spcas9",{"2":{"2":2}}],["s",{"2":{"2":1,"6":1,"14":3,"15":3,"21":1,"28":1}}],["sections",{"2":{"26":1}}],["sent",{"2":{"21":1,"28":1}}],["sensitized",{"2":{"6":1}}],["service",{"2":{"21":3,"28":3}}],["seq",{"2":{"15":1,"18":1}}],["sequencing",{"0":{"5":1,"7":1},"1":{"6":1,"7":1},"2":{"2":1,"8":1,"9":1,"18":1}}],["sequencer",{"2":{"6":1}}],["sequences",{"2":{"2":2,"7":1}}],["sequence",{"2":{"2":2}}],["set",{"2":{"14":2,"15":4,"16":1,"17":2}}],["sets",{"0":{"11":1},"1":{"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1},"2":{"14":1,"15":1}}],["selected",{"2":{"2":1}}],["selecting",{"2":{"2":1}}],["see",{"2":{"1":1}}],["seen",{"2":{"1":1}}],["somatic",{"2":{"27":1}}],["somavardb",{"0":{"27":1},"1":{"28":1,"29":1,"30":1,"31":1},"2":{"21":1,"28":1}}],["sometimes",{"2":{"6":1}}],["some",{"2":{"1":1}}],["sort",{"2":{"21":1,"28":1}}],["solutions",{"2":{"21":1,"28":1}}],["solution",{"2":{"15":1,"21":1,"28":1}}],["software",{"2":{"15":1,"23":1,"24":3,"30":1,"31":3}}],["so",{"2":{"1":1,"2":1,"9":1,"23":2,"30":2}}],["source",{"0":{"22":1,"29":1},"2":{"1":1,"7":1,"22":1,"26":1,"29":1}}],["cyrille",{"2":{"24":1,"31":1}}],["ce",{"2":{"24":3,"31":3}}],["clinicians",{"2":{"21":1,"28":1}}],["clinically",{"2":{"21":1,"28":1}}],["clinical",{"0":{"23":1,"30":1},"2":{"21":3,"28":3}}],["classify",{"2":{"24":1,"31":1}}],["class",{"2":{"14":1,"15":1}}],["clearly",{"2":{"8":1,"15":1}}],["cleavage",{"2":{"2":3}}],["clement",{"2":{"4":1}}],["chuga",{"2":{"21":1,"28":1}}],["chip",{"2":{"15":1}}],["choose",{"2":{"15":1}}],["choices",{"2":{"15":1}}],["chosen",{"2":{"8":2}}],["charge",{"2":{"21":1,"28":1}}],["change",{"2":{"21":1,"28":1}}],["challenges",{"2":{"12":1}}],["chai",{"2":{"4":1}}],["chemello",{"2":{"4":1}}],["check",{"2":{"2":1}}],["c",{"2":{"4":2}}],["cumbersome",{"2":{"21":1,"28":1}}],["curation",{"2":{"15":1}}],["cured",{"2":{"1":1}}],["cures",{"2":{"1":1}}],["cut",{"2":{"2":1}}],["created",{"2":{"2":1}}],["create",{"0":{"2":1},"2":{"3":1,"15":1,"26":1}}],["crispr",{"2":{"1":3,"4":2}}],["core",{"2":{"21":3,"28":3}}],["correlations",{"2":{"15":1}}],["correlation",{"2":{"15":1}}],["correlated",{"2":{"14":1}}],["corresponding",{"2":{"2":1}}],["correction",{"2":{"4":2,"14":1}}],["correct",{"2":{"1":1}}],["com",{"2":{"23":1,"30":1}}],["community",{"2":{"21":1,"28":1}}],["common",{"2":{"16":1}}],["computing",{"2":{"15":2}}],["compute",{"2":{"15":1}}],["compliance",{"2":{"23":1,"24":1,"30":1,"31":1}}],["complicated",{"2":{"9":1}}],["complain",{"2":{"15":1}}],["comprehensive",{"2":{"8":1}}],["coming",{"2":{"6":1}}],["colleagues",{"2":{"6":1}}],["code",{"2":{"2":1,"22":1,"26":1,"29":1}}],["cost",{"2":{"2":1,"21":1,"28":1}}],["convince",{"2":{"21":1,"28":1}}],["conclusion",{"0":{"9":1}}],["conclusions",{"2":{"6":1}}],["contact",{"2":{"23":1,"26":1,"30":1}}],["contains",{"2":{"21":1,"28":1}}],["contributing",{"2":{"23":1,"30":1}}],["controled",{"2":{"8":1}}],["control",{"2":{"8":2,"18":1}}],["context",{"0":{"5":1},"1":{"6":1,"7":1},"2":{"2":1,"8":1}}],["conformity",{"2":{"24":1,"31":1}}],["conform",{"2":{"15":1}}],["confounding",{"2":{"8":1}}],["confusing",{"2":{"7":1}}],["constraints",{"2":{"21":1,"28":1}}],["constitute",{"2":{"7":1}}],["cons",{"2":{"12":1}}],["considered",{"2":{"14":1}}],["considerations",{"2":{"6":1}}],["consistent",{"2":{"8":1}}],["conditions",{"2":{"1":1,"8":2}}],["coupled",{"2":{"12":1}}],["course",{"2":{"3":1,"14":1}}],["counting",{"2":{"1":1}}],["could",{"2":{"1":1,"2":1,"15":1}}],["capacity",{"2":{"21":1,"28":1}}],["capture",{"2":{"8":1}}],["called",{"2":{"16":1}}],["calculated",{"2":{"15":3}}],["calculate",{"2":{"2":1}}],["carried",{"2":{"7":1}}],["carers",{"2":{"3":1}}],["caycedo",{"2":{"4":1}}],["case",{"2":{"14":1,"21":1,"28":1}}],["cas",{"2":{"4":1}}],["cas9",{"2":{"1":3,"2":2,"4":1}}],["candidate",{"2":{"21":1,"28":1}}],["candidates",{"2":{"2":1}}],["cancer",{"2":{"18":1}}],["canonical",{"2":{"2":1}}],["can",{"0":{"0":1,"2":1,"23":1,"30":1},"1":{"1":1,"2":1,"3":1,"4":1},"2":{"1":3,"2":1,"3":1,"8":1,"15":4,"23":1,"26":1,"30":1}}],["amp",{"2":{"26":1}}],["among",{"2":{"1":1}}],["aim",{"2":{"26":1}}],["aims",{"2":{"21":1,"28":1}}],["aids",{"2":{"8":1}}],["again",{"2":{"21":1,"28":1}}],["aggregation",{"2":{"4":1}}],["available",{"0":{"17":1},"2":{"9":1,"26":1}}],["avoid",{"2":{"2":1}}],["able",{"2":{"2":1}}],["activity",{"2":{"21":1,"28":1}}],["acids",{"2":{"18":1}}],["accredited",{"2":{"21":2,"28":2}}],["accreditation",{"2":{"21":1,"28":1}}],["access",{"2":{"15":1,"21":1,"28":1}}],["according",{"2":{"2":1,"14":1}}],["achieved",{"2":{"2":1}}],["administrators",{"2":{"26":1}}],["administrative",{"2":{"21":1,"28":1}}],["adjustment",{"2":{"15":2}}],["adjacent",{"2":{"2":1}}],["add",{"2":{"2":1}}],["address",{"2":{"1":1,"15":1}}],["addressed",{"2":{"1":1}}],["article",{"2":{"1":1,"21":1,"28":1}}],["are",{"0":{"25":1},"1":{"26":1},"2":{"1":2,"2":4,"12":1,"15":5,"21":2,"26":1,"28":2}}],["application",{"2":{"26":2}}],["applications",{"2":{"26":1}}],["apply",{"2":{"9":1}}],["applying",{"2":{"8":1}}],["app",{"0":{"21":1,"28":1}}],["appropriate",{"2":{"15":2}}],["approach",{"2":{"1":1,"3":1,"16":1}}],["appearance",{"2":{"2":1}}],["appear",{"2":{"1":1}}],["along",{"2":{"21":1,"28":1}}],["already",{"2":{"7":1}}],["algorithms",{"2":{"6":1}}],["altering",{"2":{"2":1}}],["although",{"2":{"1":1}}],["also",{"2":{"2":1,"15":1}}],["allow",{"2":{"2":1}}],["allows",{"2":{"1":1,"8":2}}],["all",{"2":{"2":3,"12":1}}],["allele",{"2":{"1":5,"2":1,"4":1}}],["autosomal",{"2":{"1":1,"2":1,"3":1}}],["attractive",{"2":{"21":1,"28":1}}],["attention",{"2":{"21":1,"28":1}}],["atmanli",{"2":{"4":1}}],["at",{"2":{"1":1,"2":1,"15":1,"21":2,"23":1,"28":2,"30":1}}],["analytical",{"2":{"21":1,"28":1}}],["analysis",{"0":{"0":1,"2":1,"11":1,"12":1},"1":{"1":1,"2":1,"3":1,"4":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1},"2":{"2":1,"12":1,"15":1,"16":3,"17":2,"18":1,"21":1,"28":1}}],["anticipate",{"2":{"21":1,"28":1}}],["any",{"2":{"8":1}}],["answer",{"2":{"7":1,"8":1,"14":1,"23":1,"30":1}}],["anne",{"2":{"4":1}}],["anzalone",{"2":{"4":1}}],["an",{"2":{"2":2,"15":2,"21":2,"23":1,"28":2,"30":1}}],["another",{"2":{"1":1,"16":1,"21":2,"28":2}}],["and",{"2":{"1":5,"2":3,"3":2,"4":4,"6":1,"8":5,"9":3,"12":2,"15":7,"18":1,"21":3,"23":1,"24":2,"26":1,"28":3,"30":1,"31":2}}],["a",{"0":{"2":1,"11":1},"1":{"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1},"2":{"1":5,"2":6,"3":1,"4":7,"6":5,"7":2,"8":4,"9":1,"12":4,"14":3,"15":7,"16":1,"18":2,"20":1,"21":6,"24":1,"26":1,"27":1,"28":6,"31":1}}],["assessment",{"2":{"15":1,"18":1,"24":1,"31":1}}],["assess",{"2":{"8":1}}],["associated",{"2":{"2":1}}],["asked",{"2":{"8":1}}],["as",{"2":{"1":2,"2":3,"6":2,"7":2,"14":2,"15":2,"21":1,"23":1,"28":1,"30":1}}],["tuomas",{"2":{"24":1,"31":1}}],["turned",{"2":{"21":1,"28":1}}],["turning",{"2":{"21":1,"28":1}}],["t",{"2":{"23":1,"26":1,"30":1}}],["time",{"2":{"23":1,"30":1}}],["timothy",{"2":{"18":1}}],["typical",{"2":{"15":1}}],["type",{"2":{"1":1,"2":2,"3":1}}],["term",{"2":{"21":2,"28":2}}],["terms",{"2":{"9":1}}],["test",{"2":{"15":2}}],["tests",{"2":{"14":1}}],["testing",{"2":{"12":1,"14":1,"15":2}}],["tends",{"2":{"14":1}}],["tedious",{"2":{"12":1}}],["technological",{"2":{"21":1,"28":1}}],["technologies",{"2":{"9":1}}],["technology",{"2":{"1":2,"8":2}}],["techniques",{"2":{"8":3,"9":1}}],["taken",{"2":{"7":1}}],["task",{"2":{"6":1}}],["targeting",{"2":{"2":1}}],["target",{"2":{"1":1,"2":2}}],["targeted",{"2":{"1":1,"2":1}}],["trained",{"2":{"21":1,"28":1}}],["transl",{"2":{"18":1}}],["transposases",{"2":{"4":1}}],["traditional",{"2":{"15":1}}],["tries",{"2":{"14":1}}],["tremblay",{"2":{"4":1}}],["treatment",{"2":{"2":1}}],["treatments",{"2":{"1":3}}],["treat",{"2":{"2":1}}],["treating",{"2":{"1":1}}],["trying",{"2":{"15":1}}],["try",{"2":{"1":1,"2":1,"14":1}}],["two",{"2":{"1":1,"21":1,"28":1}}],["thousands",{"2":{"12":1}}],["thorough",{"2":{"9":1}}],["thus",{"2":{"1":1,"15":1}}],["that",{"2":{"1":1,"2":4,"6":1,"7":1,"8":2,"12":3,"15":4,"21":2,"28":2}}],["thanks",{"2":{"2":1,"21":1,"28":1}}],["than",{"2":{"1":1,"15":1,"21":1,"28":1}}],["this",{"0":{"21":1,"28":1},"2":{"1":3,"2":3,"3":2,"6":1,"8":1,"12":2,"15":3,"21":7,"23":1,"28":7,"30":1}}],["theory",{"0":{"16":1}}],["their",{"2":{"12":1,"21":2,"23":1,"28":2,"30":1}}],["them",{"2":{"8":1,"15":1,"21":2,"28":2}}],["they",{"2":{"8":1,"12":1}}],["then",{"2":{"6":1,"14":1,"15":1}}],["there",{"2":{"12":1,"16":1,"21":2,"26":1,"28":2}}],["therefore",{"2":{"2":2,"21":3,"28":3}}],["therapies",{"2":{"1":1}}],["therapy",{"0":{"2":1},"2":{"1":2,"2":2,"3":2}}],["these",{"2":{"1":1,"2":1,"12":2,"21":3,"28":3}}],["the",{"0":{"5":1,"14":1,"15":1},"1":{"6":1,"7":1},"2":{"1":18,"2":29,"3":2,"4":2,"6":3,"7":5,"8":15,"9":2,"12":9,"14":8,"15":25,"16":1,"18":1,"21":20,"23":4,"26":4,"28":20,"30":4}}],["tommi",{"2":{"24":1,"31":1}}],["totally",{"2":{"15":1}}],["top",{"2":{"14":1,"15":1}}],["toward",{"2":{"14":1}}],["too",{"2":{"2":1}}],["toolkit",{"2":{"17":1}}],["tools",{"2":{"2":1,"12":1,"17":1,"21":1,"28":1}}],["tool",{"2":{"1":1,"2":1}}],["to",{"0":{"0":1,"2":1,"10":1,"16":1},"1":{"1":1,"2":1,"3":1,"4":1},"2":{"1":6,"2":17,"3":4,"6":3,"7":3,"8":6,"9":2,"12":2,"14":5,"15":8,"16":1,"18":1,"20":1,"21":15,"23":4,"24":1,"26":3,"27":1,"28":15,"30":4,"31":1}}],["daniele",{"2":{"18":1}}],["dalmas",{"2":{"4":1}}],["databases",{"2":{"21":1,"28":1}}],["database",{"2":{"2":1,"4":1,"20":1,"21":2,"27":1,"28":2}}],["data",{"0":{"0":1,"2":1},"1":{"1":1,"2":1,"3":1,"4":1},"2":{"8":2,"12":1,"15":5,"21":3,"23":1,"26":2,"28":3,"30":1}}],["dystrophy",{"2":{"4":1}}],["during",{"2":{"15":1}}],["duchenne",{"2":{"4":1}}],["duby",{"2":{"4":1}}],["d",{"2":{"4":1}}],["documentation",{"2":{"26":2}}],["don",{"2":{"23":1,"26":1,"30":1}}],["down",{"2":{"15":1}}],["does",{"2":{"14":1,"18":1}}],["doi",{"2":{"4":3,"18":3,"24":1,"31":1}}],["do",{"2":{"2":1,"14":1,"15":2,"21":1,"23":1,"28":1,"30":1}}],["dominant",{"2":{"1":2,"2":1,"3":1,"4":1}}],["draw",{"2":{"2":2,"6":1}}],["dna",{"2":{"2":1}}],["diagnostic",{"2":{"21":1,"28":1}}],["difficult",{"2":{"21":1,"28":1}}],["difficulty",{"2":{"7":1}}],["differential",{"2":{"18":1}}],["differentially",{"2":{"12":1}}],["different",{"2":{"8":2,"9":1}}],["direct",{"2":{"2":1}}],["discovery",{"2":{"15":1}}],["distribution",{"2":{"15":2}}],["distinction",{"2":{"14":1}}],["disorder",{"2":{"2":1}}],["disorders",{"0":{"0":1},"1":{"1":1,"2":1,"3":1,"4":1},"2":{"1":2,"3":1}}],["disappearance",{"2":{"2":1}}],["diseased",{"2":{"2":1}}],["disease",{"2":{"1":2}}],["diseases",{"2":{"1":2}}],["detailed",{"2":{"26":1}}],["demo",{"2":{"22":1,"26":1,"29":1}}],["device",{"2":{"24":2,"31":2}}],["deviates",{"2":{"15":1}}],["deviation",{"2":{"15":1}}],["development1",{"2":{"23":1,"30":1}}],["development",{"2":{"1":1}}],["decreasing",{"2":{"15":1}}],["degree",{"2":{"15":1}}],["dezooming",{"2":{"12":1}}],["depending",{"2":{"8":1}}],["depend",{"2":{"8":1}}],["define",{"2":{"8":1,"15":1}}],["debbah",{"2":{"4":1}}],["deletion",{"2":{"4":2}}],["deal",{"2":{"3":1}}],["designers",{"2":{"6":1}}],["design",{"0":{"5":1},"1":{"6":1,"7":1},"2":{"1":1,"6":2,"8":2,"9":2}}],["higher",{"2":{"21":1,"28":1}}],["hypothesis",{"2":{"15":2}}],["hypotheses",{"2":{"12":1}}],["haynes",{"2":{"18":1}}],["have",{"2":{"7":1,"8":1,"12":1,"14":2,"15":1,"21":2,"26":1,"28":2}}],["has",{"2":{"3":1,"12":1}}],["h",{"2":{"4":1}}],["hesitate",{"2":{"23":1,"26":1,"30":1}}],["healthcare",{"2":{"23":1,"30":1}}],["here",{"0":{"25":1},"1":{"26":1},"2":{"2":1,"6":1}}],["heterozygous",{"2":{"2":1}}],["helpful",{"2":{"15":1}}],["help",{"0":{"0":1},"1":{"1":1,"2":1,"3":1,"4":1}}],["human",{"2":{"2":1}}],["host",{"2":{"26":3}}],["hospital",{"2":{"21":1,"28":1}}],["hospitals",{"2":{"21":2,"28":2}}],["house",{"2":{"2":1,"21":1,"28":1}}],["hope",{"2":{"1":1}}],["however",{"2":{"9":1,"12":1,"15":1,"21":2,"28":2}}],["how",{"0":{"0":1},"1":{"1":1,"2":1,"3":1,"4":1},"2":{"1":2,"24":1,"31":1}}]],"serializationVersion":2} diff --git a/.vocs/search-index-a770ed46.json b/.vocs/search-index-a770ed46.json deleted file mode 100644 index 912bc27..0000000 --- a/.vocs/search-index-a770ed46.json +++ /dev/null @@ -1 +0,0 @@ -{"documentCount":27,"nextId":27,"documentIds":{"0":"docs/pages/blog/expdesign.mdx#experimental-design-in-the-context-of-next-generation-sequencing","1":"docs/pages/blog/expdesign.mdx#introduction","2":"docs/pages/blog/expdesign.mdx#next-generation-sequencing-specificities","3":"docs/pages/blog/expdesign.mdx#methodology","4":"docs/pages/blog/expdesign.mdx#conclusion","5":"docs/pages/blog/expdesign.mdx#to-go-further","6":"docs/pages/blog/gsea.mdx#a-quick-overview-of-gsea-analysis","7":"docs/pages/blog/gsea.mdx#why-gsea-analysis-","8":"docs/pages/blog/gsea.mdx#principles","9":"docs/pages/blog/gsea.mdx#what-is-the-question-","10":"docs/pages/blog/gsea.mdx#the-method","11":"docs/pages/blog/gsea.mdx#to-go-further-with-theory","12":"docs/pages/blog/gsea.mdx#available-programs-for-practice","13":"docs/pages/blog/gsea.mdx#footnote-label","14":"docs/pages/blog/#blog","15":"docs/pages/projects/germlinevardb.mdx#germlinevardb","16":"docs/pages/projects/germlinevardb.mdx#why-this-app","17":"docs/pages/projects/germlinevardb.mdx#open-source","18":"docs/pages/projects/germlinevardb.mdx#can-i-use-it-for-clinical-purposes-","19":"docs/pages/projects/germlinevardb.mdx#footnote-label","20":"docs/pages/projects/#here-are-my-projects","21":"docs/pages/projects/#omicsverse","22":"docs/pages/projects/somavardb.mdx#somavardb","23":"docs/pages/projects/somavardb.mdx#why-this-app","24":"docs/pages/projects/somavardb.mdx#open-source","25":"docs/pages/projects/somavardb.mdx#can-i-use-it-for-clinical-purposes-","26":"docs/pages/projects/somavardb.mdx#footnote-label"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[9,1,1],"1":[1,9,67],"2":[4,9,61],"3":[1,1,110],"4":[1,1,36],"5":[3,1,1],"6":[6,1,1],"7":[4,6,90],"8":[1,6,1],"9":[5,7,65],"10":[2,7,204],"11":[5,7,25],"12":[4,6,22],"13":[1,6,70],"14":[1,1,1],"15":[1,1,11],"16":[3,1,195],"17":[2,1,5],"18":[8,1,57],"19":[1,1,40],"20":[4,1,1],"21":[1,4,56],"22":[1,1,11],"23":[3,1,195],"24":[2,1,5],"25":[8,1,57],"26":[1,1,40]},"averageFieldLength":[3.074074074074074,3.1111111111111107,52.888888888888886],"storedFields":{"0":{"href":"/blog/expdesign#experimental-design-in-the-context-of-next-generation-sequencing","html":"\n","isPage":true,"text":"\n","title":"Experimental design in the context of next generation sequencing","titles":[]},"1":{"href":"/blog/expdesign#introduction","html":"\n

Coming from a biotechnology background, I was sensitized to the problems of experimental design. I then spent a few years as a bioinformatician, leaving this task to my platform colleagues.

\n

As a bioinformatician, you focus on producing quality pipelines and algorithms for processing sequencer output.\nBut we sometimes forget that, without good experimental design, we run the risk of being unable to draw conclusions,\nor even of unwittingly producing false positives.

\n

Here's a brief overview of the main considerations for experience designers.

\n","isPage":false,"text":"\nComing from a biotechnology background, I was sensitized to the problems of experimental design. I then spent a few years as a bioinformatician, leaving this task to my platform colleagues.\nAs a bioinformatician, you focus on producing quality pipelines and algorithms for processing sequencer output.\nBut we sometimes forget that, without good experimental design, we run the risk of being unable to draw conclusions,\nor even of unwittingly producing false positives. \nHere's a brief overview of the main considerations for experience designers.\n","title":"Introduction","titles":["Experimental design in the context of next generation sequencing"]},"2":{"href":"/blog/expdesign#next-generation-sequencing-specificities","html":"\n

We need to bear in mind that everything starts with biological material, from which we want to extract informative biological sequences, to answer a precise question.\nThe difficulty lies in extracting useful information without confusing it with other factors: background noise, bias...

\n

The sample is first taken from its environment, by which it will have been impacted.\nThe interaction of the biological material with its environment,\nas well as the sampling carried out, already constitute a first source of variance.

\n
","isPage":false,"text":"\nWe need to bear in mind that everything starts with biological material, from which we want to extract informative biological sequences, to answer a precise question.\nThe difficulty lies in extracting useful information without confusing it with other factors: background noise, bias...\nThe sample is first taken from its environment, by which it will have been impacted.\nThe interaction of the biological material with its environment,\nas well as the sampling carried out, already constitute a first source of variance.\n","title":"Next generation sequencing specificities","titles":["Experimental design in the context of next generation sequencing"]},"3":{"href":"/blog/expdesign#methodology","html":"
\n
    \n
  1. Clearly define the question posed and the technology chosen to answer it.
    \nMany confounding factors will depend on the technology chosen. They will have a greater or lesser impact depending on the question asked.
  2. \n
  3. Control the experimental variables
    \nVariables to control can include sample preparation techniques, sequencing parameters and environmental conditions. Ensure that the impact of this factors\non your data is minimized and controled to isolate the impact of the specific variables of interest, enhancing ythe reliability of the results.
  4. \n
  5. Randomization techniques
    \nApplying randomization techniques will prevent your experiment to capture systemic bias in your data.
  6. \n
  7. Replication Strategies
    \nReplicating the experiment with different samples or under different conditions enhances the robustness of the results.\nIt allows for the identification of consistent patterns and aids in generalizing findings to a broader context.
  8. \n
  9. Factorial design
    \nFactorial design is a statistical experimental method that explores the effects of multiple independent variables simultaneously.\nIt allows researchers to assess the individual effects of each factor and any potential interactions between them, providing a more comprehensive understanding\nof experimental outcomes.
  10. \n
\n
","isPage":false,"text":"\n\nClearly define the question posed and the technology chosen to answer it. \nMany confounding factors will depend on the technology chosen. They will have a greater or lesser impact depending on the question asked.\nControl the experimental variables \nVariables to control can include sample preparation techniques, sequencing parameters and environmental conditions. Ensure that the impact of this factors\non your data is minimized and controled to isolate the impact of the specific variables of interest, enhancing ythe reliability of the results.\nRandomization techniques \nApplying randomization techniques will prevent your experiment to capture systemic bias in your data.\nReplication Strategies\nReplicating the experiment with different samples or under different conditions enhances the robustness of the results.\nIt allows for the identification of consistent patterns and aids in generalizing findings to a broader context.\nFactorial design\nFactorial design is a statistical experimental method that explores the effects of multiple independent variables simultaneously.\nIt allows researchers to assess the individual effects of each factor and any potential interactions between them, providing a more comprehensive understanding\nof experimental outcomes.\n\n","title":"Methodology","titles":[]},"4":{"href":"/blog/expdesign#conclusion","html":"
\n

Experimental design is not so complicated in terms of methodology, and is essential to get the most out of sequencing your biological samples.\nHowever, a thorough knowledge of the different technologies available and of experimental design techniques and strategies is required to apply it effectively...

\n
","isPage":false,"text":"\nExperimental design is not so complicated in terms of methodology, and is essential to get the most out of sequencing your biological samples.\nHowever, a thorough knowledge of the different technologies available and of experimental design techniques and strategies is required to apply it effectively...\n","title":"Conclusion","titles":[]},"5":{"href":"/blog/expdesign#to-go-further","html":"
\n\n","isPage":false,"text":"\n\n","title":"To go further","titles":[]},"6":{"href":"/blog/gsea#a-quick-overview-of-gsea-analysis","html":"\n","isPage":true,"text":"\n","title":"A quick overview of GSEA analysis","titles":[]},"7":{"href":"/blog/gsea#why-gsea-analysis-","html":"\n

Genome wide expression analysis has become become a mainstay of genomics research. However, there is still a wide range of tools for interpreting these gene expression profiles.\nThey all have pros, cons, and are still evolving. This, coupled with the fact that these studies rely on the testing of a large number of hypotheses and relatively small sample sizes, lead that whole-genome expression studies in particular, to be often not reproducible.\nThis is why reproducibility is one of the major challenges facing studies involving whole-genome expression data. 1, 2, 3

\n

Finally, interpreting lists of thousands of differentially expressed genes is a tedious exercise for the biologist.

\n

The GSEA, by dezooming from the scale of the gene to that of the pathway. Improves the reproducibility of studies, while facilitating their interpetation.

\n","isPage":false,"text":"\nGenome wide expression analysis has become become a mainstay of genomics research. However, there is still a wide range of tools for interpreting these gene expression profiles.\nThey all have pros, cons, and are still evolving. This, coupled with the fact that these studies rely on the testing of a large number of hypotheses and relatively small sample sizes, lead that whole-genome expression studies in particular, to be often not reproducible.\nThis is why reproducibility is one of the major challenges facing studies involving whole-genome expression data. 1, 2, 3\nFinally, interpreting lists of thousands of differentially expressed genes is a tedious exercise for the biologist.\nThe GSEA, by dezooming from the scale of the gene to that of the pathway. Improves the reproducibility of studies, while facilitating their interpetation.\n","title":"Why GSEA Analysis ?","titles":["A quick overview of GSEA analysis"]},"8":{"href":"/blog/gsea#principles","html":"\n","isPage":false,"text":"\n","title":"Principles","titles":["A quick overview of GSEA analysis"]},"9":{"href":"/blog/gsea#what-is-the-question-","html":"\n

Let's says you have ranked a gene list L according to your favourite metric. The GSEA tries to answer the following question :

\n

Given a gene set S : Does the genes belonging to S tends to occur toward the top (or the bottom) of the list L,\nin which case the gene set is correlated with the phenotypic class distinction.

\n

Of course we will do as many independant tests as we have genes sets to try.\nA multiple testing correction should then be considered.

\n","isPage":false,"text":"\nLet's says you have ranked a gene list L according to your favourite metric. The GSEA tries to answer the following question : \nGiven a gene set S : Does the genes belonging to S tends to occur toward the top (or the bottom) of the list L,\nin which case the gene set is correlated with the phenotypic class distinction.\nOf course we will do as many independant tests as we have genes sets to try.\nA multiple testing correction should then be considered.\n","title":"What is the question ?","titles":["A quick overview of GSEA analysis","Principles"]},"10":{"href":"/blog/gsea#the-method","html":"\n

Step 1 : Compute an enrichment score (ES)
\nThis score reflects the degree to which the set S is overrepresented at the extremes top (ES > 0) or bottom (ES < 0) of the ranked list R. It is calculated by walking down the list L,\nincreasing the running sum when we encounter a gene in S and decreasing it when we encounter genes not in S. Finally the maximum deviation from zero encountered during the random walk is kept as ES.

\nStep 2 : Estimation of significance level of ES
\nThe nominal P-Value is estimates the statistical significance of the ES by using an empirical phenotype-based permutation test that\npreserves the correlation structure of the gene expression data. Phenotype labels are permuted and the ES recomputed to generate a null distribution for the ES. The empirical nominal P Value of the observed ES is then calculated relative to\nthis null distribution. Permutation of class labels preserves gene-gene correlations and thus, provide a more biologically reasonable assessment of significance than would be obtained by permuting genes.

\nStep 3 : Adjustment of Multiple Hypothesis Testing.
\nThe enrichment scores for each set are normalized and a false discovery rate is calculated

\n

It is usefull to keep in mind that

\n","isPage":false,"text":"\nStep 1 : Compute an enrichment score (ES)\nThis score reflects the degree to which the set S is overrepresented at the extremes top (ES > 0) or bottom (ES < 0) of the ranked list R. It is calculated by walking down the list L,\nincreasing the running sum when we encounter a gene in S and decreasing it when we encounter genes not in S. Finally the maximum deviation from zero encountered during the random walk is kept as ES. \nStep 2 : Estimation of significance level of ES\nThe nominal P-Value is estimates the statistical significance of the ES by using an empirical phenotype-based permutation test that\npreserves the correlation structure of the gene expression data. Phenotype labels are permuted and the ES recomputed to generate a null distribution for the ES. The empirical nominal P Value of the observed ES is then calculated relative to\nthis null distribution. Permutation of class labels preserves gene-gene correlations and thus, provide a more biologically reasonable assessment of significance than would be obtained by permuting genes.\nStep 3 : Adjustment of Multiple Hypothesis Testing.\nThe enrichment scores for each set are normalized and a false discovery rate is calculated\nIt is usefull to keep in mind that\nThat the GSEA official software will not complain if you provide them with raw gene expression data. However your results will get totally incorrect results.\nYou can perform a pre ranked GSEA, which can be very helpful for performing gene set enrichment analysis on data that do not conform to the typical GSEA scenario. For example, it can be used when the ranking metric choices provided by GSEA are not appropriate for the data, or when a ranked list of genomic features deviates from traditional gene expression data (e.g., GWAS results, ChIP seq, etc.). Also if you lack computing power and have access to pre-ranked list, this solution can be your best option.\nClearly define the question your are trying to address and choose the appropriate ranking metrics.\nGenes sets curation could be useful as a pre-processing step. Indeed you do not need to perform test on genes set you are not interested in. It will increase your need for computing resources and create supplementary noise for the Adjustment of Multiple Hypothesis Testing procedure.\n\n","title":"The Method","titles":["A quick overview of GSEA analysis","Principles"]},"11":{"href":"/blog/gsea#to-go-further-with-theory","html":"\n

There exists a variant of GSEA called FGSEA for Fast Gene Set Enrichment Analysis.

\n

Another common approach to perform pathways analysis is the Gene Ontology Enrichment analysis.

\n","isPage":false,"text":"\nThere exists a variant of GSEA called FGSEA for Fast Gene Set Enrichment Analysis.\nAnother common approach to perform pathways analysis is the Gene Ontology Enrichment analysis.\n","title":"To go further with theory","titles":["A quick overview of GSEA analysis","Principles"]},"12":{"href":"/blog/gsea#available-programs-for-practice","html":"\n\n\n
","isPage":false,"text":"\n\nOfficial Broad institute tools\nWEB-based GEne SeT AnaLysis Toolkit\nGUI\nR package\nFast Gene Set Enrichment Analysis (Pre-ranked only)\n\n\n","title":"Available programs for practice","titles":["A quick overview of GSEA analysis"]},"13":{"href":"/blog/gsea#footnote-label","html":"\n
    \n
  1. \n

    Timothy E. Sweeney , Winston A. Haynes , Francesco Vallania , John P. Ioannidis\nand Purvesh Khatri. (2017). Methods to increase reproducibility in differential gene expression via meta-analysis. Nucleic Acids Research, Volume 45(Issue 1), Page Range. DOI

    \n
  2. \n
  3. \n

    Steven N Goodman , Daniele Fanelli , John P A Ioannidis. (2016). *What does research reproducibility mean? *. Sci Transl Med, 8(341),12. DOI

    \n
  4. \n
  5. \n

    Lianbo Yu. (2020). RNA-Seq Reproducibility Assessment of the Sequencing Quality Control Project. Cancer Inform, Volume 19 DOI

    \n
  6. \n
\n
","isPage":false,"text":"\n\n\nTimothy E. Sweeney , Winston A. Haynes , Francesco Vallania , John P. Ioannidis\nand Purvesh Khatri. (2017). Methods to increase reproducibility in differential gene expression via meta-analysis. Nucleic Acids Research, Volume 45(Issue 1), Page Range. DOI ↩\n\n\nSteven N Goodman , Daniele Fanelli , John P A Ioannidis. (2016). *What does research reproducibility mean? *. Sci Transl Med, 8(341),12. DOI ↩\n\n\nLianbo Yu. (2020). RNA-Seq Reproducibility Assessment of the Sequencing Quality Control Project. Cancer Inform, Volume 19 DOI ↩\n\n\n","title":"Footnotes","titles":["A quick overview of GSEA analysis"]},"14":{"href":"/blog#blog","html":"\n
","isPage":true,"text":"\n","title":"Blog","titles":[]},"15":{"href":"/projects/germlinevardb#germlinevardb","html":"\n

A graphical interface to explore your germline genomic variation database.


\n\"\"/

\n","isPage":true,"text":"\n A graphical interface to explore your germline genomic variation database.\n\n","title":"GermlineVarDB","titles":[]},"16":{"href":"/projects/germlinevardb#why-this-app","html":"\n

Few hospitals do not outsource their bioinformatics analysis to private partners (at least in France). There are many reasons for this:

\n\n

Turning to an external service provider is therefore a short-term solution. In the long term, however, outsourcing poses two major problems:

\n\n

With this in mind, I turned my attention to the question of re-internalising this activity at CHUGA.\nThe analytical part will be the subject of another article, but briefly,\nthe nf-core community is, in my opinion, the best candidate on which to base this objective.

\n

However, there is another blocking point. Bioinformatics providers provide, along with a pipeline.\nGraphical interfaces enabling biologists to efficiently process genomic variation data for diagnostic rendering. This being the case, even if you internalize an accredited clinical-quality pipeline, it will be difficult to convince them to go back to a much less attractive Excel spreadsheet. This will be perceived as a step backwards.

\n

SomaVarDB therefore aims to plug into the output of a nf-core pipeline, clinically accredited if possible.\nIt's a package that contains both the tools for building the local database from nf-core output,\nand the interface for interacting with this database.

\n","isPage":false,"text":"\nFew hospitals do not outsource their bioinformatics analysis to private partners (at least in France). There are many reasons for this:\n\nLack of resources and investment capacity to anticipate rapid technological change.\nThe data professions, which are still in their infancy, have not yet fully penetrated these structures.\nCumbersome legal and administrative constraints on the accreditation of IT solutions for clinical use.\n\nTurning to an external service provider is therefore a short-term solution. In the long term, however, outsourcing poses two major problems:\n\nThe cost of the outsourced service is ultimately much higher than in-house.\nUsers (clinical biologists) work free of charge to sort the databases built by these external service providers from the raw data sent to them by the hospitals to which these clinicians belong.\nThe hospital will therefore once again pay for access to the Ias that have been trained thanks to its work.\n\nWith this in mind, I turned my attention to the question of re-internalising this activity at CHUGA.\nThe analytical part will be the subject of another article, but briefly,\nthe nf-core community is, in my opinion, the best candidate on which to base this objective.\nHowever, there is another blocking point. Bioinformatics providers provide, along with a pipeline.\nGraphical interfaces enabling biologists to efficiently process genomic variation data for diagnostic rendering. This being the case, even if you internalize an accredited clinical-quality pipeline, it will be difficult to convince them to go back to a much less attractive Excel spreadsheet. This will be perceived as a step backwards.\nSomaVarDB therefore aims to plug into the output of a nf-core pipeline, clinically accredited if possible.\nIt's a package that contains both the tools for building the local database from nf-core output,\nand the interface for interacting with this database.\n","title":"Why this app","titles":["GermlineVarDB"]},"17":{"href":"/projects/germlinevardb#open-source","html":"\n\n","isPage":false,"text":"\n\nLive demo\nSource code\n\n","title":"Open-source","titles":["GermlineVarDB"]},"18":{"href":"/projects/germlinevardb#can-i-use-it-for-clinical-purposes-","html":"\n

Unfortunately the answer is no at the moment. To do so it would first need to meet the compliance and\nRegulations in healthcare Software Development1,2,3.\nAs you can imagine, this is an unattainable goal for just one person in their spare time.

\nSo if you feel like contributing to the project. Don't hesitate to contact me :\nbenoitclement.data@gmail.com.

\n
","isPage":false,"text":"\nUnfortunately the answer is no at the moment. To do so it would first need to meet the compliance and\nRegulations in healthcare Software Development1,2,3.\nAs you can imagine, this is an unattainable goal for just one person in their spare time. \nSo if you feel like contributing to the project. Don't hesitate to contact me :\nbenoitclement.data@gmail.com.\n","title":"Can I use it for clinical purposes ?","titles":["GermlineVarDB"]},"19":{"href":"/projects/germlinevardb#footnote-label","html":"\n
    \n
  1. \n

    Tuomas Granlund; Tommi Mikkonen; Vlad Stirbu (2020). On Medical Device Software CE Compliance and Conformity Assessment. IEEE, DOI

    \n
  2. \n
  3. \n

    Cyrille Michaud (2020). How to qualify, classify and CE mark software. MD101, URL

    \n
  4. \n
  5. \n

    Małgorzata Kruszynska (2021). CE marking for Medical Device Software: a step-by-step guide. Spyrosoft, URL

    \n
  6. \n
\n
","isPage":false,"text":"\n\n\nTuomas Granlund; Tommi Mikkonen; Vlad Stirbu (2020). On Medical Device Software CE Compliance and Conformity Assessment. IEEE, DOI ↩\n\n\nCyrille Michaud (2020). How to qualify, classify and CE mark software. MD101, URL ↩\n\n\nMałgorzata Kruszynska (2021). CE marking for Medical Device Software: a step-by-step guide. Spyrosoft, URL ↩\n\n\n","title":"Footnotes","titles":["GermlineVarDB"]},"20":{"href":"/projects#here-are-my-projects","html":"\n","isPage":true,"text":"\n","title":"Here are my projects","titles":[]},"21":{"href":"/projects#omicsverse","html":"\n

The initial aim of the OmicsVerse portal is to host demo versions of the various data applications I create.

\n

Application source code and documentation for administrators can be found on my github.

\n

The following sections & pages will host detailed documentation of users.

\n

If you have a genomics-oriented data application to host, don't hesitate to contact me. provided there are resources available.

\n","isPage":false,"text":"\nThe initial aim of the OmicsVerse portal is to host demo versions of the various data applications I create.\nApplication source code and documentation for administrators can be found on my github.\nThe following sections & pages will host detailed documentation of users.\nIf you have a genomics-oriented data application to host, don't hesitate to contact me. provided there are resources available.\n","title":"OmicsVerse","titles":["Here are my projects"]},"22":{"href":"/projects/somavardb#somavardb","html":"\n

A graphical interface to explore your somatic genomic variation database.

\n\"\"/

\n","isPage":true,"text":"\n A graphical interface to explore your somatic genomic variation database.\n\n","title":"SomaVarDB","titles":[]},"23":{"href":"/projects/somavardb#why-this-app","html":"\n

Few hospitals do not outsource their bioinformatics analysis to private partners (at least in France). There are many reasons for this:

\n\n

Turning to an external service provider is therefore a short-term solution. In the long term, however, outsourcing poses two major problems:

\n\n

With this in mind, I turned my attention to the question of re-internalising this activity at CHUGA.\nThe analytical part will be the subject of another article, but briefly,\nthe nf-core community is, in my opinion, the best candidate on which to base this objective.

\n

However, there is another blocking point. Bioinformatics providers provide, along with a pipeline.\nGraphical interfaces enabling biologists to efficiently process genomic variation data for diagnostic rendering. This being the case, even if you internalize an accredited clinical-quality pipeline, it will be difficult to convince them to go back to a much less attractive Excel spreadsheet. This will be perceived as a step backwards.

\n

SomaVarDB therefore aims to plug into the output of a nf-core pipeline, clinically accredited if possible.\nIt's a package that contains both the tools for building the local database from nf-core output,\nand the interface for interacting with this database.

\n","isPage":false,"text":"\nFew hospitals do not outsource their bioinformatics analysis to private partners (at least in France). There are many reasons for this:\n\nLack of resources and investment capacity to anticipate rapid technological change.\nThe data professions, which are still in their infancy, have not yet fully penetrated these structures.\nCumbersome legal and administrative constraints on the accreditation of IT solutions for clinical use.\n\nTurning to an external service provider is therefore a short-term solution. In the long term, however, outsourcing poses two major problems:\n\nThe cost of the outsourced service is ultimately much higher than in-house.\nUsers (clinical biologists) work free of charge to sort the databases built by these external service providers from the raw data sent to them by the hospitals to which these clinicians belong.\nThe hospital will therefore once again pay for access to the Ias that have been trained thanks to its work.\n\nWith this in mind, I turned my attention to the question of re-internalising this activity at CHUGA.\nThe analytical part will be the subject of another article, but briefly,\nthe nf-core community is, in my opinion, the best candidate on which to base this objective.\nHowever, there is another blocking point. Bioinformatics providers provide, along with a pipeline.\nGraphical interfaces enabling biologists to efficiently process genomic variation data for diagnostic rendering. This being the case, even if you internalize an accredited clinical-quality pipeline, it will be difficult to convince them to go back to a much less attractive Excel spreadsheet. This will be perceived as a step backwards.\nSomaVarDB therefore aims to plug into the output of a nf-core pipeline, clinically accredited if possible.\nIt's a package that contains both the tools for building the local database from nf-core output,\nand the interface for interacting with this database.\n","title":"Why this app","titles":["SomaVarDB"]},"24":{"href":"/projects/somavardb#open-source","html":"\n\n","isPage":false,"text":"\n\nLive demo\nSource code\n\n","title":"Open-source","titles":["SomaVarDB"]},"25":{"href":"/projects/somavardb#can-i-use-it-for-clinical-purposes-","html":"\n

Unfortunately the answer is no at the moment. To do so it would first need to meet the compliance and\nRegulations in healthcare Software Development1,2,3.\nAs you can imagine, this is an unattainable goal for just one person in their spare time.

\nSo if you feel like contributing to the project. Don't hesitate to contact me :\nbenoitclement.data@gmail.com.

\n
","isPage":false,"text":"\nUnfortunately the answer is no at the moment. To do so it would first need to meet the compliance and\nRegulations in healthcare Software Development1,2,3.\nAs you can imagine, this is an unattainable goal for just one person in their spare time. \nSo if you feel like contributing to the project. Don't hesitate to contact me :\nbenoitclement.data@gmail.com.\n","title":"Can I use it for clinical purposes ?","titles":["SomaVarDB"]},"26":{"href":"/projects/somavardb#footnote-label","html":"\n
    \n
  1. \n

    Tuomas Granlund; Tommi Mikkonen; Vlad Stirbu (2020). On Medical Device Software CE Compliance and Conformity Assessment. IEEE, DOI

    \n
  2. \n
  3. \n

    Cyrille Michaud (2020). How to qualify, classify and CE mark software. MD101, URL

    \n
  4. \n
  5. \n

    Małgorzata Kruszynska (2021). CE marking for Medical Device Software: a step-by-step guide. Spyrosoft, URL

    \n
  6. \n
\n
","isPage":false,"text":"\n\n\nTuomas Granlund; Tommi Mikkonen; Vlad Stirbu (2020). On Medical Device Software CE Compliance and Conformity Assessment. IEEE, DOI ↩\n\n\nCyrille Michaud (2020). How to qualify, classify and CE mark software. MD101, URL ↩\n\n\nMałgorzata Kruszynska (2021). CE marking for Medical Device Software: a step-by-step guide. Spyrosoft, URL ↩\n\n\n","title":"Footnotes","titles":["SomaVarDB"]}},"dirtCount":0,"index":[["just",{"2":{"18":1,"25":1}}],["john",{"2":{"13":2}}],["8",{"2":{"13":1}}],["↩",{"2":{"13":3,"19":3,"26":3}}],["45",{"2":{"13":1}}],["versions",{"2":{"21":1}}],["very",{"2":{"10":1}}],["vlad",{"2":{"19":1,"26":1}}],["volume",{"2":{"13":2}}],["via",{"2":{"13":1}}],["various",{"2":{"21":1}}],["variation",{"2":{"15":1,"16":1,"22":1,"23":1}}],["variant",{"2":{"11":1}}],["variance",{"2":{"2":1}}],["variables",{"2":{"3":4}}],["vallania",{"2":{"13":1}}],["value",{"2":{"10":2}}],["kruszynska",{"2":{"19":1,"26":1}}],["khatri",{"2":{"13":1}}],["keep",{"2":{"10":1}}],["kept",{"2":{"10":1}}],["knowledge",{"2":{"4":1}}],["zero",{"2":{"10":1}}],["0",{"2":{"10":2}}],["341",{"2":{"13":1}}],["3",{"2":{"7":1,"10":1,"18":1,"25":1}}],["2021",{"2":{"19":1,"26":1}}],["2020",{"2":{"13":1,"19":2,"26":2}}],["2016",{"2":{"13":1}}],["2017",{"2":{"13":1}}],["2",{"2":{"7":1,"10":1,"18":1,"25":1}}],["19",{"2":{"13":1}}],["12",{"2":{"13":1}}],["1",{"2":{"7":1,"10":1,"13":1}}],["cyrille",{"2":{"19":1,"26":1}}],["ce",{"2":{"19":3,"26":3}}],["cumbersome",{"2":{"16":1,"23":1}}],["curation",{"2":{"10":1}}],["create",{"2":{"10":1,"21":1}}],["clinicians",{"2":{"16":1,"23":1}}],["clinically",{"2":{"16":1,"23":1}}],["clinical",{"0":{"18":1,"25":1},"2":{"16":3,"23":3}}],["classify",{"2":{"19":1,"26":1}}],["class",{"2":{"9":1,"10":1}}],["clearly",{"2":{"3":1,"10":1}}],["chuga",{"2":{"16":1,"23":1}}],["charge",{"2":{"16":1,"23":1}}],["change",{"2":{"16":1,"23":1}}],["challenges",{"2":{"7":1}}],["chip",{"2":{"10":1}}],["choose",{"2":{"10":1}}],["choices",{"2":{"10":1}}],["chosen",{"2":{"3":2}}],["capacity",{"2":{"16":1,"23":1}}],["capture",{"2":{"3":1}}],["called",{"2":{"11":1}}],["calculated",{"2":{"10":3}}],["case",{"2":{"9":1,"16":1,"23":1}}],["candidate",{"2":{"16":1,"23":1}}],["cancer",{"2":{"13":1}}],["can",{"0":{"18":1,"25":1},"2":{"3":1,"10":4,"18":1,"21":1,"25":1}}],["carried",{"2":{"2":1}}],["code",{"2":{"17":1,"21":1,"24":1}}],["core",{"2":{"16":3,"23":3}}],["correlations",{"2":{"10":1}}],["correlation",{"2":{"10":1}}],["correlated",{"2":{"9":1}}],["correction",{"2":{"9":1}}],["cost",{"2":{"16":1,"23":1}}],["could",{"2":{"10":1}}],["course",{"2":{"9":1}}],["coupled",{"2":{"7":1}}],["com",{"2":{"18":1,"25":1}}],["community",{"2":{"16":1,"23":1}}],["common",{"2":{"11":1}}],["computing",{"2":{"10":2}}],["compute",{"2":{"10":1}}],["compliance",{"2":{"18":1,"19":1,"25":1,"26":1}}],["complicated",{"2":{"4":1}}],["complain",{"2":{"10":1}}],["comprehensive",{"2":{"3":1}}],["coming",{"2":{"1":1}}],["convince",{"2":{"16":1,"23":1}}],["conclusion",{"0":{"4":1}}],["conclusions",{"2":{"1":1}}],["conditions",{"2":{"3":2}}],["contact",{"2":{"18":1,"21":1,"25":1}}],["contains",{"2":{"16":1,"23":1}}],["contributing",{"2":{"18":1,"25":1}}],["controled",{"2":{"3":1}}],["control",{"2":{"3":2,"13":1}}],["context",{"0":{"0":1},"1":{"1":1,"2":1},"2":{"3":1}}],["conformity",{"2":{"19":1,"26":1}}],["conform",{"2":{"10":1}}],["confounding",{"2":{"3":1}}],["confusing",{"2":{"2":1}}],["constraints",{"2":{"16":1,"23":1}}],["constitute",{"2":{"2":1}}],["cons",{"2":{"7":1}}],["considered",{"2":{"9":1}}],["considerations",{"2":{"1":1}}],["consistent",{"2":{"3":1}}],["colleagues",{"2":{"1":1}}],["higher",{"2":{"16":1,"23":1}}],["host",{"2":{"21":3}}],["hospital",{"2":{"16":1,"23":1}}],["hospitals",{"2":{"16":2,"23":2}}],["how",{"2":{"19":1,"26":1}}],["however",{"2":{"4":1,"7":1,"10":1,"16":2,"23":2}}],["house",{"2":{"16":1,"23":1}}],["hesitate",{"2":{"18":1,"21":1,"25":1}}],["healthcare",{"2":{"18":1,"25":1}}],["helpful",{"2":{"10":1}}],["here",{"0":{"20":1},"1":{"21":1},"2":{"1":1}}],["hypothesis",{"2":{"10":2}}],["hypotheses",{"2":{"7":1}}],["haynes",{"2":{"13":1}}],["has",{"2":{"7":1}}],["have",{"2":{"2":1,"3":1,"7":1,"9":2,"10":1,"16":2,"21":1,"23":2}}],["nf",{"2":{"16":3,"23":3}}],["n",{"2":{"13":1}}],["nucleic",{"2":{"13":1}}],["null",{"2":{"10":2}}],["number",{"2":{"7":1}}],["no",{"2":{"18":1,"25":1}}],["normalized",{"2":{"10":1}}],["nominal",{"2":{"10":2}}],["not",{"2":{"4":1,"7":1,"10":6,"16":2,"23":2}}],["noise",{"2":{"2":1,"10":1}}],["need",{"2":{"2":1,"10":2,"18":1,"25":1}}],["next",{"0":{"0":1,"2":1},"1":{"1":1,"2":1}}],["url",{"2":{"19":2,"26":2}}],["ultimately",{"2":{"16":1,"23":1}}],["users",{"2":{"16":1,"21":1,"23":1}}],["use",{"0":{"18":1,"25":1},"2":{"16":1,"23":1}}],["used",{"2":{"10":1}}],["usefull",{"2":{"10":1}}],["useful",{"2":{"2":1,"10":1}}],["using",{"2":{"10":1}}],["unattainable",{"2":{"18":1,"25":1}}],["unable",{"2":{"1":1}}],["unfortunately",{"2":{"18":1,"25":1}}],["understanding",{"2":{"3":1}}],["under",{"2":{"3":1}}],["unwittingly",{"2":{"1":1}}],["local",{"2":{"16":1,"23":1}}],["long",{"2":{"16":1,"23":1}}],["lack",{"2":{"10":1,"16":1,"23":1}}],["labels",{"2":{"10":2}}],["large",{"2":{"7":1}}],["lt",{"2":{"10":1}}],["l",{"2":{"9":2,"10":1}}],["like",{"2":{"18":1,"25":1}}],["live",{"2":{"17":1,"24":1}}],["lianbo",{"2":{"13":1}}],["list",{"2":{"9":2,"10":4}}],["lists",{"2":{"7":1}}],["lies",{"2":{"2":1}}],["less",{"2":{"16":1,"23":1}}],["lesser",{"2":{"3":1}}],["legal",{"2":{"16":1,"23":1}}],["level",{"2":{"10":1}}],["let",{"2":{"9":1}}],["least",{"2":{"16":1,"23":1}}],["lead",{"2":{"7":1}}],["leaving",{"2":{"1":1}}],["qualify",{"2":{"19":1,"26":1}}],["quality",{"2":{"1":1,"13":1,"16":1,"23":1}}],["quick",{"0":{"6":1},"1":{"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1}}],["question",{"0":{"9":1},"2":{"2":1,"3":2,"9":1,"10":1,"16":1,"23":1}}],["md101",{"2":{"19":1,"26":1}}],["michaud",{"2":{"19":1,"26":1}}],["mikkonen",{"2":{"19":1,"26":1}}],["minimized",{"2":{"3":1}}],["mind",{"2":{"2":1,"10":1,"16":1,"23":1}}],["much",{"2":{"16":2,"23":2}}],["multiple",{"2":{"3":1,"9":1,"10":2}}],["me",{"2":{"18":1,"21":1,"25":1}}],["meet",{"2":{"18":1,"25":1}}],["medical",{"2":{"19":2,"26":2}}],["med",{"2":{"13":1}}],["mean",{"2":{"13":1}}],["meta",{"2":{"13":1}}],["metrics",{"2":{"10":1}}],["metric",{"2":{"9":1,"10":1}}],["methods",{"2":{"13":1}}],["method",{"0":{"10":1},"2":{"3":1}}],["methodology",{"0":{"3":1},"2":{"4":1}}],["moment",{"2":{"18":1,"25":1}}],["most",{"2":{"4":1}}],["more",{"2":{"3":1,"10":1}}],["małgorzata",{"2":{"19":1,"26":1}}],["marking",{"2":{"19":1,"26":1}}],["mark",{"2":{"19":1,"26":1}}],["maximum",{"2":{"10":1}}],["major",{"2":{"7":1,"16":1,"23":1}}],["many",{"2":{"3":1,"9":1,"16":1,"23":1}}],["material",{"2":{"2":2}}],["mainstay",{"2":{"7":1}}],["main",{"2":{"1":1}}],["my",{"0":{"20":1},"1":{"21":1},"2":{"1":1,"16":2,"21":1,"23":2}}],["x27",{"2":{"1":1,"9":1,"16":1,"18":1,"21":1,"23":1,"25":1}}],["efficiently",{"2":{"16":1,"23":1}}],["effectively",{"2":{"4":1}}],["effects",{"2":{"3":2}}],["etc",{"2":{"10":1}}],["e",{"2":{"10":1,"13":1}}],["empirical",{"2":{"10":2}}],["estimates",{"2":{"10":1}}],["estimation",{"2":{"10":1}}],["es",{"2":{"10":9}}],["essential",{"2":{"4":1}}],["evolving",{"2":{"7":1}}],["everything",{"2":{"2":1}}],["even",{"2":{"1":1,"16":1,"23":1}}],["each",{"2":{"3":1,"10":1}}],["enabling",{"2":{"16":1,"23":1}}],["encountered",{"2":{"10":1}}],["encounter",{"2":{"10":2}}],["enrichment",{"2":{"10":3,"11":2,"12":1}}],["enhances",{"2":{"3":1}}],["enhancing",{"2":{"3":1}}],["ensure",{"2":{"3":1}}],["environmental",{"2":{"3":1}}],["environment",{"2":{"2":2}}],["excel",{"2":{"16":1,"23":1}}],["external",{"2":{"16":2,"23":2}}],["extremes",{"2":{"10":1}}],["extracting",{"2":{"2":1}}],["extract",{"2":{"2":1}}],["exists",{"2":{"11":1}}],["example",{"2":{"10":1}}],["exercise",{"2":{"7":1}}],["explore",{"2":{"15":1,"22":1}}],["explores",{"2":{"3":1}}],["expressed",{"2":{"7":1}}],["expression",{"2":{"7":4,"10":3,"13":1}}],["experiment",{"2":{"3":2}}],["experimental",{"0":{"0":1},"1":{"1":1,"2":1},"2":{"1":2,"3":3,"4":2}}],["experience",{"2":{"1":1}}],["daniele",{"2":{"13":1}}],["databases",{"2":{"16":1,"23":1}}],["database",{"2":{"15":1,"16":2,"22":1,"23":2}}],["data",{"2":{"3":2,"7":1,"10":5,"16":3,"18":1,"21":2,"23":3,"25":1}}],["during",{"2":{"10":1}}],["documentation",{"2":{"21":2}}],["don",{"2":{"18":1,"21":1,"25":1}}],["doi",{"2":{"13":3,"19":1,"26":1}}],["down",{"2":{"10":1}}],["do",{"2":{"9":1,"10":2,"16":1,"18":1,"23":1,"25":1}}],["does",{"2":{"9":1,"13":1}}],["diagnostic",{"2":{"16":1,"23":1}}],["discovery",{"2":{"10":1}}],["distribution",{"2":{"10":2}}],["distinction",{"2":{"9":1}}],["difficult",{"2":{"16":1,"23":1}}],["difficulty",{"2":{"2":1}}],["differential",{"2":{"13":1}}],["differentially",{"2":{"7":1}}],["different",{"2":{"3":2,"4":1}}],["detailed",{"2":{"21":1}}],["device",{"2":{"19":2,"26":2}}],["deviates",{"2":{"10":1}}],["deviation",{"2":{"10":1}}],["development1",{"2":{"18":1,"25":1}}],["demo",{"2":{"17":1,"21":1,"24":1}}],["decreasing",{"2":{"10":1}}],["degree",{"2":{"10":1}}],["dezooming",{"2":{"7":1}}],["depending",{"2":{"3":1}}],["depend",{"2":{"3":1}}],["define",{"2":{"3":1,"10":1}}],["designers",{"2":{"1":1}}],["design",{"0":{"0":1},"1":{"1":1,"2":1},"2":{"1":2,"3":2,"4":2}}],["draw",{"2":{"1":1}}],["rna",{"2":{"13":1}}],["rapid",{"2":{"16":1,"23":1}}],["raw",{"2":{"10":1,"16":1,"23":1}}],["rate",{"2":{"10":1}}],["ranking",{"2":{"10":2}}],["ranked",{"2":{"9":1,"10":4,"12":1}}],["random",{"2":{"10":1}}],["randomization",{"2":{"3":2}}],["range",{"2":{"7":1,"13":1}}],["r",{"2":{"10":1,"12":1}}],["robustness",{"2":{"3":1}}],["regulations",{"2":{"18":1,"25":1}}],["rendering",{"2":{"16":1,"23":1}}],["re",{"2":{"16":1,"23":1}}],["reasons",{"2":{"16":1,"23":1}}],["reasonable",{"2":{"10":1}}],["recomputed",{"2":{"10":1}}],["reflects",{"2":{"10":1}}],["reproducibility",{"2":{"7":2,"13":3}}],["reproducible",{"2":{"7":1}}],["replicating",{"2":{"3":1}}],["replication",{"2":{"3":1}}],["relative",{"2":{"10":1}}],["relatively",{"2":{"7":1}}],["rely",{"2":{"7":1}}],["reliability",{"2":{"3":1}}],["required",{"2":{"4":1}}],["resources",{"2":{"10":1,"16":1,"21":1,"23":1}}],["research",{"2":{"7":1,"13":2}}],["researchers",{"2":{"3":1}}],["results",{"2":{"3":2,"10":3}}],["risk",{"2":{"1":1}}],["running",{"2":{"10":1}}],["run",{"2":{"1":1}}],["github",{"2":{"21":1}}],["given",{"2":{"9":1}}],["gmail",{"2":{"18":1,"25":1}}],["granlund",{"2":{"19":1,"26":1}}],["graphical",{"2":{"15":1,"16":1,"22":1,"23":1}}],["greater",{"2":{"3":1}}],["guide",{"2":{"19":1,"26":1}}],["gui",{"2":{"12":1}}],["gwas",{"2":{"10":1}}],["g",{"2":{"10":1}}],["gt",{"2":{"10":1}}],["gsea",{"0":{"6":1,"7":1},"1":{"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1},"2":{"7":1,"9":1,"10":4,"11":1}}],["goal",{"2":{"18":1,"25":1}}],["go",{"0":{"5":1,"11":1},"2":{"16":1,"23":1}}],["goodman",{"2":{"13":1}}],["good",{"2":{"1":1}}],["germline",{"2":{"15":1}}],["germlinevardb",{"0":{"15":1},"1":{"16":1,"17":1,"18":1,"19":1}}],["genes",{"2":{"7":1,"9":2,"10":4}}],["gene",{"2":{"7":2,"9":3,"10":7,"11":2,"12":2,"13":1}}],["generate",{"2":{"10":1}}],["generation",{"0":{"0":1,"2":1},"1":{"1":1,"2":1}}],["generalizing",{"2":{"3":1}}],["genomic",{"2":{"10":1,"15":1,"16":1,"22":1,"23":1}}],["genomics",{"2":{"7":1,"21":1}}],["genome",{"2":{"7":3}}],["get",{"2":{"4":1,"10":1}}],["work",{"2":{"16":2,"23":2}}],["would",{"2":{"10":1,"18":1,"25":1}}],["when",{"2":{"10":4}}],["what",{"0":{"9":1},"2":{"13":1}}],["while",{"2":{"7":1}}],["which",{"2":{"2":2,"9":1,"10":2,"16":3,"23":3}}],["whole",{"2":{"7":2}}],["why",{"0":{"7":1,"16":1,"23":1},"2":{"7":1}}],["winston",{"2":{"13":1}}],["wide",{"2":{"7":2}}],["will",{"2":{"2":1,"3":3,"9":1,"10":3,"16":4,"21":1,"23":4}}],["with",{"0":{"11":1},"2":{"2":3,"3":1,"7":1,"9":1,"10":1,"16":3,"23":3}}],["without",{"2":{"1":1,"2":1}}],["walk",{"2":{"10":1}}],["walking",{"2":{"10":1}}],["want",{"2":{"2":1}}],["was",{"2":{"1":1}}],["web",{"2":{"12":1}}],["well",{"2":{"2":1}}],["we",{"2":{"1":2,"2":2,"9":2,"10":2}}],["omicsverse",{"0":{"21":1},"2":{"21":1}}],["open",{"0":{"17":1,"24":1}}],["opinion",{"2":{"16":1,"23":1}}],["option",{"2":{"10":1}}],["objective",{"2":{"16":1,"23":1}}],["obtained",{"2":{"10":1}}],["observed",{"2":{"10":1}}],["overrepresented",{"2":{"10":1}}],["overview",{"0":{"6":1},"1":{"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1},"2":{"1":1}}],["occur",{"2":{"9":1}}],["outsourcing",{"2":{"16":1,"23":1}}],["outsourced",{"2":{"16":1,"23":1}}],["outsource",{"2":{"16":1,"23":1}}],["outcomes",{"2":{"3":1}}],["out",{"2":{"2":1,"4":1}}],["output",{"2":{"1":1,"16":2,"23":2}}],["other",{"2":{"2":1}}],["oriented",{"2":{"21":1}}],["or",{"2":{"1":1,"3":2,"9":1,"10":2}}],["once",{"2":{"16":1,"23":1}}],["only",{"2":{"12":1}}],["ontology",{"2":{"11":1}}],["one",{"2":{"7":1,"18":1,"25":1}}],["on",{"2":{"1":1,"3":3,"7":1,"10":2,"16":2,"19":1,"21":1,"23":2,"26":1}}],["official",{"2":{"10":1,"12":1}}],["often",{"2":{"7":1}}],["of",{"0":{"0":1,"6":1},"1":{"1":1,"2":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1},"2":{"1":4,"2":2,"3":9,"4":4,"7":10,"9":2,"10":11,"11":1,"13":1,"16":7,"21":3,"23":7}}],["yet",{"2":{"16":1,"23":1}}],["years",{"2":{"1":1}}],["yu",{"2":{"13":1}}],["ythe",{"2":{"3":1}}],["your",{"2":{"3":3,"4":1,"9":1,"10":4,"15":1,"22":1}}],["you",{"2":{"1":1,"9":1,"10":5,"16":1,"18":2,"21":1,"23":1,"25":2}}],["purposes",{"0":{"18":1,"25":1}}],["purvesh",{"2":{"13":1}}],["plug",{"2":{"16":1,"23":1}}],["platform",{"2":{"1":1}}],["pipeline",{"2":{"16":3,"23":3}}],["pipelines",{"2":{"1":1}}],["penetrated",{"2":{"16":1,"23":1}}],["person",{"2":{"18":1,"25":1}}],["perceived",{"2":{"16":1,"23":1}}],["performing",{"2":{"10":1}}],["perform",{"2":{"10":2,"11":1}}],["permuting",{"2":{"10":1}}],["permuted",{"2":{"10":1}}],["permutation",{"2":{"10":2}}],["phenotype",{"2":{"10":2}}],["phenotypic",{"2":{"9":1}}],["p",{"2":{"10":2,"13":2}}],["portal",{"2":{"21":1}}],["point",{"2":{"16":1,"23":1}}],["power",{"2":{"10":1}}],["potential",{"2":{"3":1}}],["possible",{"2":{"16":1,"23":1}}],["poses",{"2":{"16":1,"23":1}}],["posed",{"2":{"3":1}}],["positives",{"2":{"1":1}}],["pay",{"2":{"16":1,"23":1}}],["pages",{"2":{"21":1}}],["page",{"2":{"13":1}}],["package",{"2":{"12":1,"16":1,"23":1}}],["pathways",{"2":{"11":1}}],["pathway",{"2":{"7":1}}],["patterns",{"2":{"3":1}}],["part",{"2":{"16":1,"23":1}}],["partners",{"2":{"16":1,"23":1}}],["particular",{"2":{"7":1}}],["parameters",{"2":{"3":1}}],["private",{"2":{"16":1,"23":1}}],["principles",{"0":{"8":1},"1":{"9":1,"10":1,"11":1}}],["practice",{"0":{"12":1}}],["pre",{"2":{"10":3,"12":1}}],["preserves",{"2":{"10":2}}],["prevent",{"2":{"3":1}}],["preparation",{"2":{"3":1}}],["precise",{"2":{"2":1}}],["professions",{"2":{"16":1,"23":1}}],["profiles",{"2":{"7":1}}],["projects",{"0":{"20":1},"1":{"21":1}}],["project",{"2":{"13":1,"18":1,"25":1}}],["programs",{"0":{"12":1}}],["process",{"2":{"16":1,"23":1}}],["processing",{"2":{"1":1,"10":1}}],["procedure",{"2":{"10":1}}],["providers",{"2":{"16":2,"23":2}}],["provider",{"2":{"16":1,"23":1}}],["provided",{"2":{"10":1,"21":1}}],["provide",{"2":{"10":2,"16":1,"23":1}}],["providing",{"2":{"3":1}}],["pros",{"2":{"7":1}}],["producing",{"2":{"1":2}}],["problems",{"2":{"1":1,"16":1,"23":1}}],["fully",{"2":{"16":1,"23":1}}],["further",{"0":{"5":1,"11":1}}],["free",{"2":{"16":1,"23":1}}],["france",{"2":{"16":1,"23":1}}],["francesco",{"2":{"13":1}}],["from",{"2":{"1":1,"2":2,"7":1,"10":2,"16":2,"23":2}}],["fgsea",{"2":{"11":1}}],["feel",{"2":{"18":1,"25":1}}],["features",{"2":{"10":1}}],["few",{"2":{"1":1,"16":1,"23":1}}],["finally",{"2":{"7":1,"10":1}}],["findings",{"2":{"3":1}}],["first",{"2":{"2":2,"18":1,"25":1}}],["fanelli",{"2":{"13":1}}],["fast",{"2":{"11":1,"12":1}}],["favourite",{"2":{"9":1}}],["facilitating",{"2":{"7":1}}],["facing",{"2":{"7":1}}],["fact",{"2":{"7":1}}],["factor",{"2":{"3":1}}],["factorial",{"2":{"3":2}}],["factors",{"2":{"2":1,"3":2}}],["false",{"2":{"1":1,"10":1}}],["found",{"2":{"21":1}}],["footnotes",{"0":{"13":1,"19":1,"26":1}}],["following",{"2":{"9":1,"21":1}}],["forget",{"2":{"1":1}}],["for",{"0":{"12":1,"18":1,"25":1},"2":{"1":2,"3":1,"7":2,"10":7,"11":1,"16":6,"18":1,"19":1,"21":1,"23":6,"25":1,"26":1}}],["focus",{"2":{"1":1}}],["spyrosoft",{"2":{"19":1,"26":1}}],["spare",{"2":{"18":1,"25":1}}],["spreadsheet",{"2":{"16":1,"23":1}}],["specific",{"2":{"3":1}}],["specificities",{"0":{"2":1}}],["spent",{"2":{"1":1}}],["short",{"2":{"16":1,"23":1}}],["should",{"2":{"9":1}}],["sweeney",{"2":{"13":1}}],["subject",{"2":{"16":1,"23":1}}],["supplementary",{"2":{"10":1}}],["sum",{"2":{"10":1}}],["sci",{"2":{"13":1}}],["scenario",{"2":{"10":1}}],["scores",{"2":{"10":1}}],["score",{"2":{"10":2}}],["scale",{"2":{"7":1}}],["says",{"2":{"9":1}}],["sampling",{"2":{"2":1}}],["samples",{"2":{"3":1,"4":1}}],["sample",{"2":{"2":1,"3":1,"7":1}}],["significance",{"2":{"10":3}}],["sizes",{"2":{"7":1}}],["simultaneously",{"2":{"3":1}}],["small",{"2":{"7":1}}],["stirbu",{"2":{"19":1,"26":1}}],["still",{"2":{"7":2,"16":1,"23":1}}],["steven",{"2":{"13":1}}],["step",{"2":{"10":4,"16":1,"19":2,"23":1,"26":2}}],["structures",{"2":{"16":1,"23":1}}],["structure",{"2":{"10":1}}],["strategies",{"2":{"3":1,"4":1}}],["studies",{"2":{"7":4}}],["statistical",{"2":{"3":1,"10":1}}],["starts",{"2":{"2":1}}],["systemic",{"2":{"3":1}}],["somatic",{"2":{"22":1}}],["somavardb",{"0":{"22":1},"1":{"23":1,"24":1,"25":1,"26":1},"2":{"16":1,"23":1}}],["sometimes",{"2":{"1":1}}],["sort",{"2":{"16":1,"23":1}}],["solutions",{"2":{"16":1,"23":1}}],["solution",{"2":{"10":1,"16":1,"23":1}}],["software",{"2":{"10":1,"18":1,"19":3,"25":1,"26":3}}],["so",{"2":{"4":1,"18":2,"25":2}}],["source",{"0":{"17":1,"24":1},"2":{"2":1,"17":1,"21":1,"24":1}}],["s",{"2":{"1":1,"9":3,"10":3,"16":1,"23":1}}],["sections",{"2":{"21":1}}],["sent",{"2":{"16":1,"23":1}}],["sensitized",{"2":{"1":1}}],["service",{"2":{"16":3,"23":3}}],["seq",{"2":{"10":1,"13":1}}],["sequences",{"2":{"2":1}}],["sequencer",{"2":{"1":1}}],["sequencing",{"0":{"0":1,"2":1},"1":{"1":1,"2":1},"2":{"3":1,"4":1,"13":1}}],["sets",{"2":{"9":1,"10":1}}],["set",{"2":{"9":2,"10":4,"11":1,"12":2}}],["tuomas",{"2":{"19":1,"26":1}}],["turned",{"2":{"16":1,"23":1}}],["turning",{"2":{"16":1,"23":1}}],["t",{"2":{"18":1,"21":1,"25":1}}],["time",{"2":{"18":1,"25":1}}],["timothy",{"2":{"13":1}}],["two",{"2":{"16":1,"23":1}}],["typical",{"2":{"10":1}}],["trained",{"2":{"16":1,"23":1}}],["transl",{"2":{"13":1}}],["traditional",{"2":{"10":1}}],["trying",{"2":{"10":1}}],["try",{"2":{"9":1}}],["tries",{"2":{"9":1}}],["term",{"2":{"16":2,"23":2}}],["terms",{"2":{"4":1}}],["test",{"2":{"10":2}}],["tests",{"2":{"9":1}}],["testing",{"2":{"7":1,"9":1,"10":2}}],["tends",{"2":{"9":1}}],["tedious",{"2":{"7":1}}],["technological",{"2":{"16":1,"23":1}}],["technologies",{"2":{"4":1}}],["technology",{"2":{"3":2}}],["techniques",{"2":{"3":3,"4":1}}],["taken",{"2":{"2":1}}],["task",{"2":{"1":1}}],["thanks",{"2":{"16":1,"23":1}}],["than",{"2":{"10":1,"16":1,"23":1}}],["that",{"2":{"1":1,"2":1,"3":2,"7":3,"10":4,"16":2,"23":2}}],["thus",{"2":{"10":1}}],["thousands",{"2":{"7":1}}],["thorough",{"2":{"4":1}}],["this",{"0":{"16":1,"23":1},"2":{"1":1,"3":1,"7":2,"10":3,"16":7,"18":1,"23":7,"25":1}}],["theory",{"0":{"11":1}}],["their",{"2":{"7":1,"16":2,"18":1,"23":2,"25":1}}],["these",{"2":{"7":2,"16":3,"23":3}}],["therefore",{"2":{"16":3,"23":3}}],["there",{"2":{"7":1,"11":1,"16":2,"21":1,"23":2}}],["them",{"2":{"3":1,"10":1,"16":2,"23":2}}],["they",{"2":{"3":1,"7":1}}],["then",{"2":{"1":1,"9":1,"10":1}}],["the",{"0":{"0":1,"9":1,"10":1},"1":{"1":1,"2":1},"2":{"1":3,"2":5,"3":15,"4":2,"7":9,"9":8,"10":25,"11":1,"13":1,"16":20,"18":4,"21":4,"23":20,"25":4}}],["tommi",{"2":{"19":1,"26":1}}],["toolkit",{"2":{"12":1}}],["tools",{"2":{"7":1,"12":1,"16":1,"23":1}}],["totally",{"2":{"10":1}}],["top",{"2":{"9":1,"10":1}}],["toward",{"2":{"9":1}}],["to",{"0":{"5":1,"11":1},"2":{"1":3,"2":3,"3":6,"4":2,"7":2,"9":5,"10":8,"11":1,"13":1,"15":1,"16":15,"18":4,"19":1,"21":3,"22":1,"23":15,"25":4,"26":1}}],["ieee",{"2":{"19":1,"26":1}}],["imagine",{"2":{"18":1,"25":1}}],["improves",{"2":{"7":1}}],["impact",{"2":{"3":3}}],["impacted",{"2":{"2":1}}],["ias",{"2":{"16":1,"23":1}}],["ioannidis",{"2":{"13":2}}],["if",{"2":{"10":2,"16":2,"18":1,"21":1,"23":2,"25":1}}],["identification",{"2":{"3":1}}],["issue",{"2":{"13":1}}],["isolate",{"2":{"3":1}}],["is",{"0":{"9":1},"2":{"2":1,"3":2,"4":3,"7":4,"9":1,"10":7,"11":1,"16":4,"18":2,"21":1,"23":4,"25":2}}],["its",{"2":{"2":2,"16":1,"23":1}}],["it",{"0":{"18":1,"25":1},"2":{"2":2,"3":3,"4":1,"10":5,"16":3,"18":1,"23":3,"25":1}}],["i",{"0":{"18":1,"25":1},"2":{"1":2,"16":1,"21":1,"23":1}}],["initial",{"2":{"21":1}}],["infancy",{"2":{"16":1,"23":1}}],["inform",{"2":{"13":1}}],["information",{"2":{"2":1}}],["informative",{"2":{"2":1}}],["investment",{"2":{"16":1,"23":1}}],["involving",{"2":{"7":1}}],["institute",{"2":{"12":1}}],["increase",{"2":{"10":1,"13":1}}],["increasing",{"2":{"10":1}}],["incorrect",{"2":{"10":1}}],["include",{"2":{"3":1}}],["indeed",{"2":{"10":1}}],["independant",{"2":{"9":1}}],["independent",{"2":{"3":1}}],["individual",{"2":{"3":1}}],["into",{"2":{"16":1,"23":1}}],["interacting",{"2":{"16":1,"23":1}}],["interactions",{"2":{"3":1}}],["interaction",{"2":{"2":1}}],["internalize",{"2":{"16":1,"23":1}}],["internalising",{"2":{"16":1,"23":1}}],["interfaces",{"2":{"16":1,"23":1}}],["interface",{"2":{"15":1,"16":1,"22":1,"23":1}}],["interpetation",{"2":{"7":1}}],["interpreting",{"2":{"7":2}}],["interested",{"2":{"10":1}}],["interest",{"2":{"3":1}}],["introduction",{"0":{"1":1}}],["in",{"0":{"0":1},"1":{"1":1,"2":1},"2":{"2":2,"3":2,"4":1,"7":1,"9":1,"10":4,"13":1,"16":6,"18":2,"23":6,"25":2}}],["both",{"2":{"16":1,"23":1}}],["bottom",{"2":{"9":1,"10":1}}],["blocking",{"2":{"16":1,"23":1}}],["blog",{"0":{"14":1}}],["building",{"2":{"16":1,"23":1}}],["built",{"2":{"16":1,"23":1}}],["but",{"2":{"1":1,"16":1,"23":1}}],["backwards",{"2":{"16":1,"23":1}}],["back",{"2":{"16":1,"23":1}}],["background",{"2":{"1":1,"2":1}}],["base",{"2":{"16":1,"23":1}}],["based",{"2":{"10":1,"12":1}}],["broad",{"2":{"12":1}}],["broader",{"2":{"3":1}}],["briefly",{"2":{"16":1,"23":1}}],["brief",{"2":{"1":1}}],["by",{"2":{"2":1,"7":1,"10":4,"16":2,"19":1,"23":2,"26":1}}],["bias",{"2":{"2":1,"3":1}}],["bioinformatics",{"2":{"16":2,"23":2}}],["bioinformatician",{"2":{"1":2}}],["biologists",{"2":{"16":2,"23":2}}],["biologist",{"2":{"7":1}}],["biologically",{"2":{"10":1}}],["biological",{"2":{"2":3,"4":1}}],["biotechnology",{"2":{"1":1}}],["benoitclement",{"2":{"18":1,"25":1}}],["belong",{"2":{"16":1,"23":1}}],["belonging",{"2":{"9":1}}],["best",{"2":{"10":1,"16":1,"23":1}}],["be",{"2":{"7":1,"9":1,"10":5,"16":3,"21":1,"23":3}}],["become",{"2":{"7":2}}],["between",{"2":{"3":1}}],["been",{"2":{"2":1,"16":1,"23":1}}],["bear",{"2":{"2":1}}],["being",{"2":{"1":1,"16":1,"23":1}}],["amp",{"2":{"21":1}}],["aim",{"2":{"21":1}}],["aims",{"2":{"16":1,"23":1}}],["aids",{"2":{"3":1}}],["article",{"2":{"16":1,"23":1}}],["are",{"0":{"20":1},"1":{"21":1},"2":{"7":1,"10":5,"16":2,"21":1,"23":2}}],["again",{"2":{"16":1,"23":1}}],["activity",{"2":{"16":1,"23":1}}],["acids",{"2":{"13":1}}],["accredited",{"2":{"16":2,"23":2}}],["accreditation",{"2":{"16":1,"23":1}}],["access",{"2":{"10":1,"16":1,"23":1}}],["according",{"2":{"9":1}}],["administrators",{"2":{"21":1}}],["administrative",{"2":{"16":1,"23":1}}],["address",{"2":{"10":1}}],["adjustment",{"2":{"10":2}}],["application",{"2":{"21":2}}],["applications",{"2":{"21":1}}],["apply",{"2":{"4":1}}],["applying",{"2":{"3":1}}],["app",{"0":{"16":1,"23":1}}],["approach",{"2":{"11":1}}],["appropriate",{"2":{"10":2}}],["attractive",{"2":{"16":1,"23":1}}],["attention",{"2":{"16":1,"23":1}}],["at",{"2":{"10":1,"16":2,"18":1,"23":2,"25":1}}],["available",{"0":{"12":1},"2":{"4":1,"21":1}}],["along",{"2":{"16":1,"23":1}}],["also",{"2":{"10":1}}],["all",{"2":{"7":1}}],["allows",{"2":{"3":2}}],["already",{"2":{"2":1}}],["algorithms",{"2":{"1":1}}],["analytical",{"2":{"16":1,"23":1}}],["analysis",{"0":{"6":1,"7":1},"1":{"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1},"2":{"7":1,"10":1,"11":3,"12":2,"13":1,"16":1,"23":1}}],["anticipate",{"2":{"16":1,"23":1}}],["another",{"2":{"11":1,"16":2,"23":2}}],["an",{"2":{"10":2,"16":2,"18":1,"23":2,"25":1}}],["any",{"2":{"3":1}}],["answer",{"2":{"2":1,"3":1,"9":1,"18":1,"25":1}}],["and",{"2":{"1":1,"3":5,"4":3,"7":2,"10":7,"13":1,"16":3,"18":1,"19":2,"21":1,"23":3,"25":1,"26":2}}],["assessment",{"2":{"10":1,"13":1,"19":1,"26":1}}],["assess",{"2":{"3":1}}],["asked",{"2":{"3":1}}],["as",{"2":{"1":2,"2":2,"9":2,"10":2,"16":1,"18":1,"23":1,"25":1}}],["a",{"0":{"6":1},"1":{"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1},"2":{"1":5,"2":2,"3":4,"4":1,"7":4,"9":3,"10":7,"11":1,"13":2,"15":1,"16":6,"19":1,"21":1,"22":1,"23":6,"26":1}}]],"serializationVersion":2} diff --git a/CV/index.html b/CV/index.html index 95a06e9..d8ad657 100644 --- a/CV/index.html +++ b/CV/index.html @@ -12,8 +12,8 @@ - - + +
diff --git a/CV/react-groupedlist/index.html b/CV/react-groupedlist/index.html index 95a06e9..d8ad657 100644 --- a/CV/react-groupedlist/index.html +++ b/CV/react-groupedlist/index.html @@ -12,8 +12,8 @@ - - + +
diff --git a/CV/react-timeline/index.html b/CV/react-timeline/index.html index 95a06e9..d8ad657 100644 --- a/CV/react-timeline/index.html +++ b/CV/react-timeline/index.html @@ -12,8 +12,8 @@ - - + +
diff --git a/assets/cutonestrand-mMqmQ38Y.js b/assets/cutonestrand-mMqmQ38Y.js new file mode 100644 index 0000000..807cbff --- /dev/null +++ b/assets/cutonestrand-mMqmQ38Y.js @@ -0,0 +1,71 @@ +import{d as o,j as e}from"./index-DqZhg8K9.js";const i={layout:"minimal",authors:["[cbenoit](www.linkedin.com/in/clement-benoit)"],date:"2024-08-01",title:"How data analysis can help to fix genetic disorders",description:"undefined"};function a(t){const n={a:"a",div:"div",h1:"h1",h2:"h2",header:"header",li:"li",ol:"ol",p:"p",section:"section",strong:"strong",sup:"sup",...o(),...t.components};return e.jsxs(e.Fragment,{children:[e.jsx(n.header,{children:e.jsxs(n.h1,{id:"how-data-analysis-can-help-to-fix-genetic-disorders",children:["How data analysis can help to fix genetic disorders",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#how-data-analysis-can-help-to-fix-genetic-disorders",children:e.jsx(n.div,{"data-autolink-icon":!0})})]})}),` +`,e.jsxs(n.h2,{id:"introduction",children:["Introduction",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#introduction",children:e.jsx(n.div,{"data-autolink-icon":!0})})]}),` +`,e.jsxs(n.p,{children:["Gene therapy as seen a major breakthrough with the development of ",e.jsx(n.strong,{children:"CRISPR-Cas9"}),` technology. +This revolutionary tool allows scientists to precisely edit genes, offering new hope for +treating genetic disorders and diseases. `,e.jsx(n.strong,{children:`With the potential to correct genetic mutations at +the source, CRISPR-Cas9 opens up a world of possibilities for personalized medicine and targeted therapies.`}),` +The future of gene therapy looks brighter than ever, +with the promise of improved treatments and even potential cures for a wide range of conditions.`]}),` +`,e.jsxs(n.p,{children:[e.jsx(n.a,{href:"https://www.genome.gov/genetics-glossary/Autosomal-Dominant-Disorder",children:"Autosomal-dominant disorders"}),` are among the diseases that could see gene treatments in the future. +As the name dominant implies, the presence of a single pathogenic mutated allele is sufficient for +the disease to appear, so some researchers are counting on crispr-cas9 technology to break the mutated allele. +Only the wild-type allele remains, and the disease is thus cured. +Although the effectiveness of this approach looks promising `,e.jsx(n.sup,{children:e.jsx(n.a,{href:"#user-content-fn-1",id:"user-content-fnref-1","data-footnote-ref":!0,"aria-describedby":"footnote-label",children:"1"})})," ",e.jsx(n.sup,{children:e.jsx(n.a,{href:"#user-content-fn-2",id:"user-content-fnref-2","data-footnote-ref":!0,"aria-describedby":"footnote-label",children:"2"})})," ",e.jsx(n.sup,{children:e.jsx(n.a,{href:"#user-content-fn-3",id:"user-content-fnref-3","data-footnote-ref":!0,"aria-describedby":"footnote-label",children:"3"})}),`, a number of issues still need +to be addressed, two of which we will try to address in this article :`]}),` +`,e.jsx("p",{className:"popacitydanger",children:e.jsx("div",{style:{textAlign:"center"},children:e.jsx("strong",{children:e.jsxs(n.p,{children:["How can the design of these personalized medicine treatments can be effective and quick for each patient ? ",e.jsx("br",{}),e.jsx("br",{}),` +How can we specifically target the mutated allele without breaking the functional allele or another part of +the genome ?`]})})})}),` +`,e.jsxs(n.h2,{id:"data-analysis-can-be-use-to-create-a-list-of-interesting-genomic-regions-for-gene-therapy",children:["Data analysis can be use to create a list of interesting genomic regions for gene therapy",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#data-analysis-can-be-use-to-create-a-list-of-interesting-genomic-regions-for-gene-therapy",children:e.jsx(n.div,{"data-autolink-icon":!0})})]}),` +`,e.jsxs(n.p,{children:[`The targeted genome cleavage is achieved by targeting sequence-specific cleavage of S. pyogenes Cas9 (spCas9) +endonuclease with a gRNA. In order for the gRNA to successfully direct Cas9 cleavage, +the corresponding target DNA sequence in the genome must be found next to a PAM site, +also known as a Protospacer Adjacent Motif. The canonical PAM is associated with the spCas9 nuclease is `,e.jsx(n.strong,{children:"5'-NGG-3'"}),`. +We are therefore going to try to draw up an exhaustive list of all the genomic regions that could be used for this +gene therapy.`]}),` +`,e.jsxs(n.ol,{children:[` +`,e.jsxs(n.li,{children:[`We start by selecting all the SNPs that are frequent in the population (> 5%), for which we can +use the gnomAD database `,e.jsx(n.sup,{children:e.jsx(n.a,{href:"#user-content-fn-4",id:"user-content-fnref-4","data-footnote-ref":!0,"aria-describedby":"footnote-label",children:"4"})}),`. We want the list created to be usable to treat as many +patients as possible, so we avoid SNPs that are too rare.`]}),` +`,e.jsxs(n.li,{children:["Only SNPs that induce the disappearance or appearance of the ",e.jsx(n.strong,{children:"5‘-NGG-3’"}),` +motif will allow us to target only the mutated allele while preserving the WT. To do this, we wrote an in-house script in Python.`]}),` +`,e.jsxs(n.li,{children:["We used the ",e.jsx(n.a,{href:"https://github.com/lindenb/jvarkit",children:"jvarkit tools suite"}),` to reconstitute the genomic context of these SNPs, i.e. +to add the flanking sequences to the left and right of our SNPs of interest, according to the human reference genome.`]}),` +`,e.jsxs(n.li,{children:["Finally, we used the ",e.jsx(n.a,{href:"https://github.com/mckennalab/FlashFry",children:"FlashFry"}),` tool to calculate and predict efficiency and specificity +scores for each of the positions we selected. We wanted to cut the diseased gene efficiently, +without altering other regions of the genome.`]}),` +`]}),` +`,e.jsxs(n.p,{children:[`Using this method, we were able to draw up a list of genomic positions of interest in the treatment of Ryanodine receptor +type 1-related myopathies (RYR1-RM) of the ‘Autosomal-Dominant-Disorder’ type. `,e.jsx(n.sup,{children:e.jsx(n.a,{href:"#user-content-fn-5",id:"user-content-fnref-5","data-footnote-ref":!0,"aria-describedby":"footnote-label",children:"5"})}),` +Thanks to next-generation sequencing, it is possible to obtain both genomic sequences of a patient +at a reasonable cost. All the positions on our list for which the patient is heterozygous are therefore +candidates for gene therapy!`]}),` +`,e.jsx(n.p,{children:e.jsx(n.a,{href:"https://github.com/clbenoit/CutOneStrand",children:"Check out the analysis code here !"})}),` +`,e.jsxs(n.h2,{id:"generalization",children:["Generalization",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#generalization",children:e.jsx(n.div,{"data-autolink-icon":!0})})]}),` +`,e.jsx(n.p,{children:`Of course, the implementation of gene therapy has to deal with other obstacles and questions, +but this approach can be generalised to other Autosomal-Dominant-Disorders and enable carers to +screen the genome extensively in order to create a short list of regions +of interest for this type of gene therapy !`}),` +`,e.jsxs(n.section,{"data-footnotes":!0,className:"footnotes",children:[e.jsxs(n.h2,{className:"sr-only",id:"footnote-label",children:["Footnotes",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#footnote-label",children:e.jsx(n.div,{"data-autolink-icon":!0})})]}),` +`,e.jsxs(n.ol,{children:[` +`,e.jsxs(n.li,{id:"user-content-fn-1",children:[` +`,e.jsxs(n.p,{children:["Anzalone A.V, Koblan L.W and Liu D.R . ",e.jsx(n.strong,{children:"Genome editing with CRISPR–Cas nucleases, base editors, transposases and prime editors"})," ",e.jsx(n.a,{href:"https://www.nature.com/articles/s41587-020-0561-9",children:"DOI"})," ",e.jsx(n.a,{href:"#user-content-fnref-1","data-footnote-backref":"","aria-label":"Back to reference 1",className:"data-footnote-backref",children:"↩"})]}),` +`]}),` +`,e.jsxs(n.li,{id:"user-content-fn-2",children:[` +`,e.jsxs(n.p,{children:[`F Chemello, A.C Chai, H Li, C Rodriguez-Caycedo, E Sanchez-Ortiz, A Atmanli, A.A Mireault, N Liu, +R Bassel-Duby, E.N Olson. `,e.jsx(n.strong,{children:`Precise correction of Duchenne muscular dystrophy exon +deletion mutations by base and prime editing`})," ",e.jsx(n.a,{href:"https://pubmed.ncbi.nlm.nih.gov/33931459/",children:"DOI"})," ",e.jsx(n.a,{href:"#user-content-fnref-2","data-footnote-backref":"","aria-label":"Back to reference 2",className:"data-footnote-backref",children:"↩"})]}),` +`]}),` +`,e.jsxs(n.li,{id:"user-content-fn-3",children:[` +`,e.jsxs(n.p,{children:["Kelly Godbout, Joël Rousseau, Jacques P Tremblay. ",e.jsx(n.strong,{children:`Successful Correction by Prime Editing of a +Mutation in the RYR1 Gene Responsible for a Myopathy`})," ",e.jsx(n.a,{href:"https://www.mdpi.com/2073-4409/13/1/31",children:"DOI"})," ",e.jsx(n.a,{href:"#user-content-fnref-3","data-footnote-backref":"","aria-label":"Back to reference 3",className:"data-footnote-backref",children:"↩"})]}),` +`]}),` +`,e.jsxs(n.li,{id:"user-content-fn-4",children:[` +`,e.jsxs(n.p,{children:[e.jsx(n.a,{href:"https://gnomad.broadinstitute.org/about",children:"The Genome Aggregation Database (gnomAD)"})," ",e.jsx(n.a,{href:"#user-content-fnref-4","data-footnote-backref":"","aria-label":"Back to reference 4",className:"data-footnote-backref",children:"↩"})]}),` +`]}),` +`,e.jsxs(n.li,{id:"user-content-fn-5",children:[` +`,e.jsxs(n.p,{children:[`Mathilde Beaufils, Margaux Melka, Julie Brocard, Clement Benoit, Nagi Debbah, Kamel Mamchaoui, +Norma B. Romero, Anne Frédérique Dalmas-Laurent, Susana Quijano-Roy, Julien Fauré, John Rendu +and Isabelle Marty. `,e.jsx(n.strong,{children:"Functional benefit of CRISPR-Cas9-induced allele deletion for RYR1 dominant mutation"})," ",e.jsx(n.a,{href:"#user-content-fnref-5","data-footnote-backref":"","aria-label":"Back to reference 5",className:"data-footnote-backref",children:"↩"})]}),` +`]}),` +`]}),` +`]})]})}function r(t={}){const{wrapper:n}={...o(),...t.components};return n?e.jsx(n,{...t,children:e.jsx(a,{...t})}):a(t)}export{r as default,i as frontmatter}; diff --git a/assets/expdesign-5536fBV5.js b/assets/expdesign-BV4_cdNM.js similarity index 98% rename from assets/expdesign-5536fBV5.js rename to assets/expdesign-BV4_cdNM.js index a469a57..9e3c732 100644 --- a/assets/expdesign-5536fBV5.js +++ b/assets/expdesign-BV4_cdNM.js @@ -1,4 +1,4 @@ -import{d as o,j as e}from"./index-DDTn0JQN.js";const r={layout:"minimal",authors:["[cbenoit](www.linkedin.com/in/clement-benoit)"],date:"2024-02-15",title:"Experimental design in the context of next generation sequencing",description:"undefined"};function t(i){const n={a:"a",div:"div",h1:"h1",h2:"h2",header:"header",li:"li",ol:"ol",p:"p",strong:"strong",...o(),...i.components};return e.jsxs(e.Fragment,{children:[e.jsx(n.header,{children:e.jsxs(n.h1,{id:"experimental-design-in-the-context-of-next-generation-sequencing",children:["Experimental design in the context of next generation sequencing",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#experimental-design-in-the-context-of-next-generation-sequencing",children:e.jsx(n.div,{"data-autolink-icon":!0})})]})}),` +import{d as o,j as e}from"./index-DqZhg8K9.js";const r={layout:"minimal",authors:["[cbenoit](www.linkedin.com/in/clement-benoit)"],date:"2024-02-15",title:"Experimental design in the context of next generation sequencing",description:"undefined"};function t(i){const n={a:"a",div:"div",h1:"h1",h2:"h2",header:"header",li:"li",ol:"ol",p:"p",strong:"strong",...o(),...i.components};return e.jsxs(e.Fragment,{children:[e.jsx(n.header,{children:e.jsxs(n.h1,{id:"experimental-design-in-the-context-of-next-generation-sequencing",children:["Experimental design in the context of next generation sequencing",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#experimental-design-in-the-context-of-next-generation-sequencing",children:e.jsx(n.div,{"data-autolink-icon":!0})})]})}),` `,e.jsxs(n.h2,{id:"introduction",children:["Introduction",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#introduction",children:e.jsx(n.div,{"data-autolink-icon":!0})})]}),` `,e.jsx(n.p,{children:"Coming from a biotechnology background, I was sensitized to the problems of experimental design. I then spent a few years as a bioinformatician, leaving this task to my platform colleagues."}),` `,e.jsxs(n.p,{children:[`As a bioinformatician, you focus on producing quality pipelines and algorithms for processing sequencer output. diff --git a/assets/germlinevardb-BAxt0Ab1.js b/assets/germlinevardb-XcNTVQb9.js similarity index 99% rename from assets/germlinevardb-BAxt0Ab1.js rename to assets/germlinevardb-XcNTVQb9.js index a528794..da2cf31 100644 --- a/assets/germlinevardb-BAxt0Ab1.js +++ b/assets/germlinevardb-XcNTVQb9.js @@ -1,4 +1,4 @@ -import{d as a,j as e}from"./index-DDTn0JQN.js";const o={layout:"deafult",title:"GermlineVarDB",description:"undefined"};function i(t){const n={a:"a",div:"div",em:"em",h1:"h1",h2:"h2",header:"header",img:"img",li:"li",ol:"ol",p:"p",section:"section",strong:"strong",sup:"sup",ul:"ul",...a(),...t.components};return e.jsxs(e.Fragment,{children:[e.jsx(n.header,{children:e.jsxs(n.h1,{id:"germlinevardb",children:["GermlineVarDB",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#germlinevardb",children:e.jsx(n.div,{"data-autolink-icon":!0})})]})}),` +import{d as a,j as e}from"./index-DqZhg8K9.js";const o={layout:"deafult",title:"GermlineVarDB",description:"undefined"};function i(t){const n={a:"a",div:"div",em:"em",h1:"h1",h2:"h2",header:"header",img:"img",li:"li",ol:"ol",p:"p",section:"section",strong:"strong",sup:"sup",ul:"ul",...a(),...t.components};return e.jsxs(e.Fragment,{children:[e.jsx(n.header,{children:e.jsxs(n.h1,{id:"germlinevardb",children:["GermlineVarDB",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#germlinevardb",children:e.jsx(n.div,{"data-autolink-icon":!0})})]})}),` `,e.jsxs(n.p,{children:[e.jsxs("div",{children:[" ",e.jsx("h3",{children:e.jsx("i",{children:"A graphical interface to explore your germline genomic variation database."})})]}),e.jsx("br",{}),` `,e.jsx(n.img,{src:"/portfolio/somavardb.gif",alt:""})]}),` `,e.jsxs(n.h2,{id:"why-this-app",children:["Why this app",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#why-this-app",children:e.jsx(n.div,{"data-autolink-icon":!0})})]}),` diff --git a/assets/gsea-CNheLLXB.js b/assets/gsea-kOLEqhgC.js similarity index 92% rename from assets/gsea-CNheLLXB.js rename to assets/gsea-kOLEqhgC.js index 8ff2ecb..75dc8e2 100644 --- a/assets/gsea-CNheLLXB.js +++ b/assets/gsea-kOLEqhgC.js @@ -1,10 +1,11 @@ -import{d as i,j as e}from"./index-DDTn0JQN.js";const a={layout:"minimal",authors:["[cbenoit](www.linkedin.com/in/clement-benoit)"],date:"2024-02-15",title:"A quick overview of GSEA analysis",description:"undefined"};function s(t){const n={a:"a",div:"div",em:"em",h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",ol:"ol",p:"p",section:"section",strong:"strong",sup:"sup",ul:"ul",...i(),...t.components};return e.jsxs(e.Fragment,{children:[e.jsx(n.header,{children:e.jsxs(n.h1,{id:"a-quick-overview-of-gsea-analysis",children:["A quick overview of GSEA analysis",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#a-quick-overview-of-gsea-analysis",children:e.jsx(n.div,{"data-autolink-icon":!0})})]})}),` +import{d as i,j as e}from"./index-DqZhg8K9.js";const a={layout:"minimal",authors:["[cbenoit](www.linkedin.com/in/clement-benoit)"],date:"2024-02-15",title:"A quick overview of Gene sets enrichment analysis",description:"undefined"};function s(t){const n={a:"a",div:"div",em:"em",h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",ol:"ol",p:"p",section:"section",strong:"strong",sup:"sup",ul:"ul",...i(),...t.components};return e.jsxs(e.Fragment,{children:[e.jsx(n.header,{children:e.jsxs(n.h1,{id:"a-quick-overview-of-gene-sets-enrichment-analysis",children:["A quick overview of Gene sets enrichment analysis",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#a-quick-overview-of-gene-sets-enrichment-analysis",children:e.jsx(n.div,{"data-autolink-icon":!0})})]})}),` `,e.jsxs(n.h2,{id:"why-gsea-analysis-",children:["Why GSEA Analysis ?",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#why-gsea-analysis-",children:e.jsx(n.div,{"data-autolink-icon":!0})})]}),` `,e.jsxs(n.p,{children:[`Genome wide expression analysis has become become a mainstay of genomics research. However, there is still a wide range of tools for interpreting these gene expression profiles. They all have pros, cons, and are still evolving. This, coupled with the fact that these studies rely on the testing of a large number of hypotheses and relatively small sample sizes, lead that whole-genome expression studies in particular, to be often not reproducible. This is why reproducibility is one of the major challenges facing studies involving whole-genome expression data. `,e.jsx(n.sup,{children:e.jsx(n.a,{href:"#user-content-fn-1",id:"user-content-fnref-1","data-footnote-ref":!0,"aria-describedby":"footnote-label",children:"1"})}),", ",e.jsx(n.sup,{children:e.jsx(n.a,{href:"#user-content-fn-2",id:"user-content-fnref-2","data-footnote-ref":!0,"aria-describedby":"footnote-label",children:"2"})}),", ",e.jsx(n.sup,{children:e.jsx(n.a,{href:"#user-content-fn-3",id:"user-content-fnref-3","data-footnote-ref":!0,"aria-describedby":"footnote-label",children:"3"})})]}),` `,e.jsx(n.p,{children:"Finally, interpreting lists of thousands of differentially expressed genes is a tedious exercise for the biologist."}),` -`,e.jsx(n.p,{children:"The GSEA, by dezooming from the scale of the gene to that of the pathway. Improves the reproducibility of studies, while facilitating their interpetation."}),` +`,e.jsx(n.p,{children:`The GSEA, by dezooming from the scale of the gene to that of the pathway. Improves the reproducibility of studies, +while facilitating their interpetation.`}),` `,e.jsxs(n.h2,{id:"principles",children:["Principles",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#principles",children:e.jsx(n.div,{"data-autolink-icon":!0})})]}),` `,e.jsxs(n.h3,{id:"what-is-the-question-",children:["What is the question ?",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#what-is-the-question-",children:e.jsx(n.div,{"data-autolink-icon":!0})})]}),` `,e.jsxs(n.p,{children:["Let's says you have ranked a gene list ",e.jsx("b",{children:e.jsx("i",{children:"L"})})," according to your favourite metric. The GSEA tries to answer the following question : ",e.jsx("br",{})]}),` diff --git a/assets/index-C7UbjirX.js b/assets/index-7hivevq9.js similarity index 89% rename from assets/index-C7UbjirX.js rename to assets/index-7hivevq9.js index cf1692d..9925cac 100644 --- a/assets/index-C7UbjirX.js +++ b/assets/index-7hivevq9.js @@ -1,2 +1,2 @@ -import{d as a,j as e}from"./index-DDTn0JQN.js";const d={layout:"minimal",title:"Blog",description:"undefined"};function o(t){const n={a:"a",div:"div",h1:"h1",header:"header",...a(),...t.components};return e.jsxs(e.Fragment,{children:[e.jsx(n.header,{children:e.jsxs(n.h1,{id:"blog",children:["Blog",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#blog",children:e.jsx(n.div,{"data-autolink-icon":!0})})]})}),` +import{d as a,j as e}from"./index-DqZhg8K9.js";const d={layout:"minimal",title:"Blog",description:"undefined"};function o(t){const n={a:"a",div:"div",h1:"h1",header:"header",...a(),...t.components};return e.jsxs(e.Fragment,{children:[e.jsx(n.header,{children:e.jsxs(n.h1,{id:"blog",children:["Blog",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#blog",children:e.jsx(n.div,{"data-autolink-icon":!0})})]})}),` `,e.jsx(n.div,{"data-blog-posts":!0})]})}function i(t={}){const{wrapper:n}={...a(),...t.components};return n?e.jsx(n,{...t,children:e.jsx(o,{...t})}):o(t)}export{i as default,d as frontmatter}; diff --git a/assets/index-jTd-SdNy.js b/assets/index-BNKID4UK.js similarity index 81% rename from assets/index-jTd-SdNy.js rename to assets/index-BNKID4UK.js index 8a8491e..0d7c03e 100644 --- a/assets/index-jTd-SdNy.js +++ b/assets/index-BNKID4UK.js @@ -1,4 +1,4 @@ -import{j as e,L as p,c as s,u as v,a as b,R as f,b as _,T as r,C as c,d as h}from"./index-DDTn0JQN.js";var N="vocs_Button_button",H="vocs_Button_button_accent";function P({children:n,className:t,href:i,variant:j}){return e.jsx(p,{className:s(t,N,j==="accent"&&H),href:i,variant:"styleless",children:n})}var y="vocs_HomePage_button",k="vocs_HomePage_buttons",C="vocs_HomePage_description",L="vocs_HomePage_logo",l="vocs_HomePage_packageManager",B="vocs_HomePage",M="vocs_HomePage_tabs",m="vocs_HomePage_tabsContent",R="vocs_HomePage_tabsList",T="vocs_HomePage_tagline",w="vocs_HomePage_title";function u({children:n,className:t}){return e.jsx("div",{className:s(t,B),children:n})}function I({className:n}){const{logoUrl:t,title:i}=v();return t?e.jsx("div",{className:s(n,L),children:e.jsx(b,{})}):e.jsx("h1",{className:s(n,w),children:i})}function d({children:n,className:t}){return e.jsx("div",{className:s(t,T),children:n})}function $({children:n,className:t}){return e.jsx("div",{className:s(t,C),children:n})}function x({children:n,className:t}){return e.jsx("div",{className:s(t,k),children:n})}function o(n){return e.jsx(P,{...n,className:s(y,n.className)})}function D({name:n,type:t="install"}){return e.jsxs(f,{className:M,defaultValue:"npm",children:[e.jsxs(_,{className:R,children:[e.jsx(r,{value:"npm",children:"npm"}),e.jsx(r,{value:"pnpm",children:"pnpm"}),e.jsx(r,{value:"yarn",children:"yarn"})]}),e.jsxs(c,{className:m,value:"npm",children:[e.jsx("span",{className:l,children:"npm"})," ",t==="init"?"init":"install"," ",n]}),e.jsxs(c,{className:m,value:"pnpm",children:[e.jsx("span",{className:l,children:"pnpm"})," ",t==="init"?"create":"install"," ",n]}),e.jsxs(c,{className:m,value:"yarn",children:[e.jsx("span",{className:l,children:"yarn"})," ",t==="init"?"create":"install"," ",n]})]})}const E=Object.freeze(Object.defineProperty({__proto__:null,Button:o,Buttons:x,Description:$,InstallPackage:D,Logo:I,Root:u,Tagline:d},Symbol.toStringTag,{value:"Module"})),S={layout:"landing"};function g(n){const t={a:"a",p:"p",...h(),...n.components};return E||a("HomePage",!1),o||a("HomePage.Button",!0),x||a("HomePage.Buttons",!0),u||a("HomePage.Root",!0),d||a("HomePage.Tagline",!0),e.jsxs(u,{children:[e.jsxs(d,{children:[e.jsx("h1",{style:{fontSize:"32px"},children:"I'm Clement BENOIT"}),e.jsx("br",{}),e.jsxs(t.p,{children:["I'm a Grenoble based ",e.jsx("b",{children:"data engineer with a specialty in omics bioinformatics "}),`, currently working +import{j as e,L as p,c as s,u as b,a as v,R as f,b as _,T as r,C as c,d as h}from"./index-DqZhg8K9.js";var H="vocs_Button_button",N="vocs_Button_button_accent";function P({children:n,className:t,href:i,variant:j}){return e.jsx(p,{className:s(t,H,j==="accent"&&N),href:i,variant:"styleless",children:n})}var y="vocs_HomePage_button",k="vocs_HomePage_buttons",C="vocs_HomePage_description",L="vocs_HomePage_logo",l="vocs_HomePage_packageManager",B="vocs_HomePage",M="vocs_HomePage_tabs",m="vocs_HomePage_tabsContent",R="vocs_HomePage_tabsList",T="vocs_HomePage_tagline",w="vocs_HomePage_title";function u({children:n,className:t}){return e.jsx("div",{className:s(t,B),children:n})}function I({className:n}){const{logoUrl:t,title:i}=b();return t?e.jsx("div",{className:s(n,L),children:e.jsx(v,{})}):e.jsx("h1",{className:s(n,w),children:i})}function d({children:n,className:t}){return e.jsx("div",{className:s(t,T),children:n})}function $({children:n,className:t}){return e.jsx("div",{className:s(t,C),children:n})}function x({children:n,className:t}){return e.jsx("div",{className:s(t,k),children:n})}function o(n){return e.jsx(P,{...n,className:s(y,n.className)})}function D({name:n,type:t="install"}){return e.jsxs(f,{className:M,defaultValue:"npm",children:[e.jsxs(_,{className:R,children:[e.jsx(r,{value:"npm",children:"npm"}),e.jsx(r,{value:"pnpm",children:"pnpm"}),e.jsx(r,{value:"yarn",children:"yarn"})]}),e.jsxs(c,{className:m,value:"npm",children:[e.jsx("span",{className:l,children:"npm"})," ",t==="init"?"init":"install"," ",n]}),e.jsxs(c,{className:m,value:"pnpm",children:[e.jsx("span",{className:l,children:"pnpm"})," ",t==="init"?"create":"install"," ",n]}),e.jsxs(c,{className:m,value:"yarn",children:[e.jsx("span",{className:l,children:"yarn"})," ",t==="init"?"create":"install"," ",n]})]})}const E=Object.freeze(Object.defineProperty({__proto__:null,Button:o,Buttons:x,Description:$,InstallPackage:D,Logo:I,Root:u,Tagline:d},Symbol.toStringTag,{value:"Module"})),S={layout:"landing"};function g(n){const t={a:"a",p:"p",...h(),...n.components};return E||a("HomePage",!1),o||a("HomePage.Button",!0),x||a("HomePage.Buttons",!0),u||a("HomePage.Root",!0),d||a("HomePage.Tagline",!0),e.jsxs(u,{children:[e.jsxs(d,{children:[e.jsxs("h1",{style:{fontSize:"32px"},children:["Hi ! ",e.jsx("br",{}),e.jsx("br",{}),"I'm Clement BENOIT"]}),e.jsx("br",{}),e.jsxs(t.p,{children:["I'm a Grenoble based ",e.jsx("b",{children:"data engineer with a specialty in omics bioinformatics "}),`, currently working at `,e.jsx("b",{children:"Grenoble Alpes University Hospital (CHUGA)"}),", helping build tools to leverage health data for clinical diagnosis.",e.jsx("br",{}),e.jsx("br",{})]}),e.jsx("p",{className:"prose-sm text-stone-200 sm:prose-base lg:prose-lg",children:e.jsxs(t.p,{children:["In my free time time, you can catch me training in ",e.jsx("strong",{className:"text-stone-100",children:"skateboard"}),`, looking after my `,e.jsx("strong",{className:"text-stone-100",children:"plants"}),", or exploring the beautiful"," ",` `,e.jsx("strong",{className:"text-stone-100",children:"alpine mountains"}),"."]})}),e.jsx("br",{})]}),e.jsxs(x,{children:[e.jsx(o,{href:"/projects",variant:"accent",children:"See my projects"}),e.jsx(o,{href:"https://github.com/clbenoit",children:"GitHub"}),e.jsx(o,{href:"https://linkedin.com/in/clement-benoit",children:"Linkedin"})]}),e.jsx("br",{}),e.jsx("h2",{href:"benoitclement.data@gmail.com",variant:"email-link",children:e.jsx(t.a,{href:"mailto:benoitclement.data@gmail.com",children:"benoitclement.data@gmail.com"})})]})}function O(n={}){const{wrapper:t}={...h(),...n.components};return t?e.jsx(t,{...n,children:e.jsx(g,{...n})}):g(n)}function a(n,t){throw new Error("Expected "+(t?"component":"object")+" `"+n+"` to be defined: you likely forgot to import, pass, or provide it.")}export{O as default,S as frontmatter}; diff --git a/assets/index-Ce7lYH_A.js b/assets/index-D7r4s9iC.js similarity index 67% rename from assets/index-Ce7lYH_A.js rename to assets/index-D7r4s9iC.js index 78a711c..a613d69 100644 --- a/assets/index-Ce7lYH_A.js +++ b/assets/index-D7r4s9iC.js @@ -1 +1 @@ -import{d as r,j as n}from"./index-DDTn0JQN.js";import i from"./react-timeline-BQRPMqgc.js";import"./react-groupedlist-C3IDjQ-a.js";const u={layout:"minimal",content:{width:"90%",horizontalPadding:"0px"}};function e(t){return n.jsx(i,{})}function c(t={}){const{wrapper:o}={...r(),...t.components};return o?n.jsx(o,{...t,children:n.jsx(e,{...t})}):e()}export{c as default,u as frontmatter}; +import{d as r,j as n}from"./index-DqZhg8K9.js";import i from"./react-timeline-D6hmopBv.js";import"./react-groupedlist-CIMAK46-.js";const u={layout:"minimal",content:{width:"90%",horizontalPadding:"0px"}};function e(t){return n.jsx(i,{})}function c(t={}){const{wrapper:o}={...r(),...t.components};return o?n.jsx(o,{...t,children:n.jsx(e,{...t})}):e()}export{c as default,u as frontmatter}; diff --git a/assets/index-DDTn0JQN.js b/assets/index-DqZhg8K9.js similarity index 79% rename from assets/index-DDTn0JQN.js rename to assets/index-DqZhg8K9.js index 3312398..a6ad984 100644 --- a/assets/index-DDTn0JQN.js +++ b/assets/index-DqZhg8K9.js @@ -1,4 +1,4 @@ -function Mu(e,t){for(var n=0;nr[o]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const i of o)if(i.type==="childList")for(const a of i.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&r(a)}).observe(document,{childList:!0,subtree:!0});function n(o){const i={};return o.integrity&&(i.integrity=o.integrity),o.referrerPolicy&&(i.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?i.credentials="include":o.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(o){if(o.ep)return;o.ep=!0;const i=n(o);fetch(o.href,i)}})();var wy=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Jn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function G9(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var n=function r(){return this instanceof r?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,o.get?o:{enumerable:!0,get:function(){return e[r]}})}),n}var nv={exports:{}},El={},rv={exports:{}},oe={};/** +function Mu(e,t){for(var n=0;nr[o]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const i of o)if(i.type==="childList")for(const a of i.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&r(a)}).observe(document,{childList:!0,subtree:!0});function n(o){const i={};return o.integrity&&(i.integrity=o.integrity),o.referrerPolicy&&(i.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?i.credentials="include":o.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(o){if(o.ep)return;o.ep=!0;const i=n(o);fetch(o.href,i)}})();var wy=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Jn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Y9(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var n=function r(){return this instanceof r?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,o.get?o:{enumerable:!0,get:function(){return e[r]}})}),n}var nv={exports:{}},El={},rv={exports:{}},oe={};/** * @license React * react.production.min.js * @@ -30,14 +30,14 @@ function Mu(e,t){for(var n=0;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),lc=Object.prototype.hasOwnProperty,Hy=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Cd={},Ed={};function Wy(e){return lc.call(Ed,e)?!0:lc.call(Cd,e)?!1:Hy.test(e)?Ed[e]=!0:(Cd[e]=!0,!1)}function Ky(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function Yy(e,t,n,r){if(t===null||typeof t>"u"||Ky(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function ut(e,t,n,r,o,i,a){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=a}var Je={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Je[e]=new ut(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Je[t]=new ut(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Je[e]=new ut(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Je[e]=new ut(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Je[e]=new ut(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Je[e]=new ut(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Je[e]=new ut(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Je[e]=new ut(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Je[e]=new ut(e,5,!1,e.toLowerCase(),null,!1,!1)});var Bu=/[\-:]([a-z])/g;function Uu(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Bu,Uu);Je[t]=new ut(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Bu,Uu);Je[t]=new ut(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Bu,Uu);Je[t]=new ut(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Je[e]=new ut(e,1,!1,e.toLowerCase(),null,!1,!1)});Je.xlinkHref=new ut("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Je[e]=new ut(e,1,!1,e.toLowerCase(),null,!0,!0)});function Vu(e,t,n,r){var o=Je.hasOwnProperty(t)?Je[t]:null;(o!==null?o.type!==0:r||!(2"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),lc=Object.prototype.hasOwnProperty,Hy=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Cd={},Ed={};function Wy(e){return lc.call(Ed,e)?!0:lc.call(Cd,e)?!1:Hy.test(e)?Ed[e]=!0:(Cd[e]=!0,!1)}function Ky(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function Gy(e,t,n,r){if(t===null||typeof t>"u"||Ky(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function ut(e,t,n,r,o,i,a){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=a}var Je={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Je[e]=new ut(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Je[t]=new ut(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Je[e]=new ut(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Je[e]=new ut(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Je[e]=new ut(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Je[e]=new ut(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Je[e]=new ut(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Je[e]=new ut(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Je[e]=new ut(e,5,!1,e.toLowerCase(),null,!1,!1)});var Bu=/[\-:]([a-z])/g;function Uu(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Bu,Uu);Je[t]=new ut(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Bu,Uu);Je[t]=new ut(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Bu,Uu);Je[t]=new ut(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Je[e]=new ut(e,1,!1,e.toLowerCase(),null,!1,!1)});Je.xlinkHref=new ut("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Je[e]=new ut(e,1,!1,e.toLowerCase(),null,!0,!0)});function Vu(e,t,n,r){var o=Je.hasOwnProperty(t)?Je[t]:null;(o!==null?o.type!==0:r||!(2l||o[a]!==i[l]){var s=` -`+o[a].replace(" at new "," at ");return e.displayName&&s.includes("")&&(s=s.replace("",e.displayName)),s}while(1<=a&&0<=l);break}}}finally{ss=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Qo(e):""}function Gy(e){switch(e.tag){case 5:return Qo(e.type);case 16:return Qo("Lazy");case 13:return Qo("Suspense");case 19:return Qo("SuspenseList");case 0:case 2:case 15:return e=cs(e.type,!1),e;case 11:return e=cs(e.type.render,!1),e;case 1:return e=cs(e.type,!0),e;default:return""}}function fc(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Ur:return"Fragment";case Br:return"Portal";case sc:return"Profiler";case Hu:return"StrictMode";case cc:return"Suspense";case uc:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case yv:return(e.displayName||"Context")+".Consumer";case gv:return(e._context.displayName||"Context")+".Provider";case Wu:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Ku:return t=e.displayName||null,t!==null?t:fc(e.type)||"Memo";case An:t=e._payload,e=e._init;try{return fc(e(t))}catch{}}return null}function Qy(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return fc(t);case 8:return t===Hu?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Kn(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function xv(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Zy(e){var t=xv(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var o=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(a){r=""+a,i.call(this,a)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(a){r=""+a},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Ji(e){e._valueTracker||(e._valueTracker=Zy(e))}function Cv(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=xv(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Ha(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function dc(e,t){var n=t.checked;return ke({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function _d(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Kn(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Ev(e,t){t=t.checked,t!=null&&Vu(e,"checked",t,!1)}function hc(e,t){Ev(e,t);var n=Kn(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?pc(e,t.type,n):t.hasOwnProperty("defaultValue")&&pc(e,t.type,Kn(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Sd(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function pc(e,t,n){(t!=="number"||Ha(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Zo=Array.isArray;function to(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o"+t.valueOf().toString()+"",t=qi.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function fi(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var ei={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Xy=["Webkit","ms","Moz","O"];Object.keys(ei).forEach(function(e){Xy.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),ei[t]=ei[e]})});function $v(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||ei.hasOwnProperty(e)&&ei[e]?(""+t).trim():t+"px"}function Tv(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,o=$v(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,o):e[n]=o}}var Jy=ke({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function gc(e,t){if(t){if(Jy[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(M(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(M(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(M(61))}if(t.style!=null&&typeof t.style!="object")throw Error(M(62))}}function yc(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var wc=null;function Yu(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var xc=null,no=null,ro=null;function kd(e){if(e=Di(e)){if(typeof xc!="function")throw Error(M(280));var t=e.stateNode;t&&(t=kl(t),xc(e.stateNode,e.type,t))}}function kv(e){no?ro?ro.push(e):ro=[e]:no=e}function Rv(){if(no){var e=no,t=ro;if(ro=no=null,kd(e),t)for(e=0;e>>=0,e===0?32:31-(c2(e)/u2|0)|0}var ea=64,ta=4194304;function Xo(e){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: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 e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Ga(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,o=e.suspendedLanes,i=e.pingedLanes,a=n&268435455;if(a!==0){var l=a&~o;l!==0?r=Xo(l):(i&=a,i!==0&&(r=Xo(i)))}else a=n&~o,a!==0?r=Xo(a):i!==0&&(r=Xo(i));if(r===0)return 0;if(t!==0&&t!==r&&!(t&o)&&(o=r&-r,i=t&-t,o>=i||o===16&&(i&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function Mi(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Ht(t),e[t]=n}function p2(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=ni),jd=" ",Dd=!1;function Qv(e,t){switch(e){case"keyup":return U2.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Zv(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Vr=!1;function H2(e,t){switch(e){case"compositionend":return Zv(t);case"keypress":return t.which!==32?null:(Dd=!0,jd);case"textInput":return e=t.data,e===jd&&Dd?null:e;default:return null}}function W2(e,t){if(Vr)return e==="compositionend"||!tf&&Qv(e,t)?(e=Yv(),Ra=Ju=Mn=null,Vr=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Ud(n)}}function em(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?em(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function tm(){for(var e=window,t=Ha();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ha(e.document)}return t}function nf(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function e3(e){var t=tm(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&em(n.ownerDocument.documentElement,n)){if(r!==null&&nf(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var o=n.textContent.length,i=Math.min(r.start,o);r=r.end===void 0?i:Math.min(r.end,o),!e.extend&&i>r&&(o=r,r=i,i=o),o=Vd(n,i);var a=Vd(n,r);o&&a&&(e.rangeCount!==1||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&(t=t.createRange(),t.setStart(o.node,o.offset),e.removeAllRanges(),i>r?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,Hr=null,$c=null,oi=null,Tc=!1;function Hd(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Tc||Hr==null||Hr!==Ha(r)||(r=Hr,"selectionStart"in r&&nf(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),oi&&gi(oi,r)||(oi=r,r=Xa($c,"onSelect"),0Yr||(e.current=Oc[Yr],Oc[Yr]=null,Yr--)}function pe(e,t){Yr++,Oc[Yr]=e.current,e.current=t}var Yn={},rt=er(Yn),vt=er(!1),mr=Yn;function uo(e,t){var n=e.type.contextTypes;if(!n)return Yn;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var o={},i;for(i in n)o[i]=t[i];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function mt(e){return e=e.childContextTypes,e!=null}function qa(){me(vt),me(rt)}function Xd(e,t,n){if(rt.current!==Yn)throw Error(M(168));pe(rt,t),pe(vt,n)}function um(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var o in r)if(!(o in t))throw Error(M(108,Qy(e)||"Unknown",o));return ke({},n,r)}function el(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Yn,mr=rt.current,pe(rt,e),pe(vt,vt.current),!0}function Jd(e,t,n){var r=e.stateNode;if(!r)throw Error(M(169));n?(e=um(e,t,mr),r.__reactInternalMemoizedMergedChildContext=e,me(vt),me(rt),pe(rt,e)):me(vt),pe(vt,n)}var sn=null,Rl=!1,bs=!1;function fm(e){sn===null?sn=[e]:sn.push(e)}function d3(e){Rl=!0,fm(e)}function tr(){if(!bs&&sn!==null){bs=!0;var e=0,t=ce;try{var n=sn;for(ce=1;e>=a,o-=a,cn=1<<32-Ht(t)+o|n<$?(k=S,S=null):k=S.sibling;var P=d(v,S,x[$],E);if(P===null){S===null&&(S=k);break}e&&S&&P.alternate===null&&t(v,S),m=i(P,m,$),b===null?_=P:b.sibling=P,b=P,S=k}if($===x.length)return n(v,S),be&&ir(v,$),_;if(S===null){for(;$$?(k=S,S=null):k=S.sibling;var j=d(v,S,P.value,E);if(j===null){S===null&&(S=k);break}e&&S&&j.alternate===null&&t(v,S),m=i(j,m,$),b===null?_=j:b.sibling=j,b=j,S=k}if(P.done)return n(v,S),be&&ir(v,$),_;if(S===null){for(;!P.done;$++,P=x.next())P=u(v,P.value,E),P!==null&&(m=i(P,m,$),b===null?_=P:b.sibling=P,b=P);return be&&ir(v,$),_}for(S=r(v,S);!P.done;$++,P=x.next())P=p(S,v,$,P.value,E),P!==null&&(e&&P.alternate!==null&&S.delete(P.key===null?$:P.key),m=i(P,m,$),b===null?_=P:b.sibling=P,b=P);return e&&S.forEach(function(L){return t(v,L)}),be&&ir(v,$),_}function C(v,m,x,E){if(typeof x=="object"&&x!==null&&x.type===Ur&&x.key===null&&(x=x.props.children),typeof x=="object"&&x!==null){switch(x.$$typeof){case Xi:e:{for(var _=x.key,b=m;b!==null;){if(b.key===_){if(_=x.type,_===Ur){if(b.tag===7){n(v,b.sibling),m=o(b,x.props.children),m.return=v,v=m;break e}}else if(b.elementType===_||typeof _=="object"&&_!==null&&_.$$typeof===An&&ih(_)===b.type){n(v,b.sibling),m=o(b,x.props),m.ref=jo(v,b,x),m.return=v,v=m;break e}n(v,b);break}else t(v,b);b=b.sibling}x.type===Ur?(m=pr(x.props.children,v.mode,E,x.key),m.return=v,v=m):(E=ja(x.type,x.key,x.props,null,v.mode,E),E.ref=jo(v,m,x),E.return=v,v=E)}return a(v);case Br:e:{for(b=x.key;m!==null;){if(m.key===b)if(m.tag===4&&m.stateNode.containerInfo===x.containerInfo&&m.stateNode.implementation===x.implementation){n(v,m.sibling),m=o(m,x.children||[]),m.return=v,v=m;break e}else{n(v,m);break}else t(v,m);m=m.sibling}m=Ps(x,v.mode,E),m.return=v,v=m}return a(v);case An:return b=x._init,C(v,m,b(x._payload),E)}if(Zo(x))return y(v,m,x,E);if(Ao(x))return g(v,m,x,E);sa(v,x)}return typeof x=="string"&&x!==""||typeof x=="number"?(x=""+x,m!==null&&m.tag===6?(n(v,m.sibling),m=o(m,x),m.return=v,v=m):(n(v,m),m=Ns(x,v.mode,E),m.return=v,v=m),a(v)):n(v,m)}return C}var ho=wm(!0),xm=wm(!1),Fi={},tn=er(Fi),Ci=er(Fi),Ei=er(Fi);function cr(e){if(e===Fi)throw Error(M(174));return e}function df(e,t){switch(pe(Ei,t),pe(Ci,e),pe(tn,Fi),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:mc(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=mc(t,e)}me(tn),pe(tn,t)}function po(){me(tn),me(Ci),me(Ei)}function Cm(e){cr(Ei.current);var t=cr(tn.current),n=mc(t,e.type);t!==n&&(pe(Ci,e),pe(tn,n))}function hf(e){Ci.current===e&&(me(tn),me(Ci))}var $e=er(0);function al(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var _s=[];function pf(){for(var e=0;e<_s.length;e++)_s[e]._workInProgressVersionPrimary=null;_s.length=0}var Aa=xn.ReactCurrentDispatcher,Ss=xn.ReactCurrentBatchConfig,yr=0,Te=null,Fe=null,Ke=null,ll=!1,ii=!1,bi=0,p3=0;function qe(){throw Error(M(321))}function vf(e,t){if(t===null)return!1;for(var n=0;nn?n:4,e(!0);var r=Ss.transition;Ss.transition={};try{e(!1),t()}finally{ce=n,Ss.transition=r}}function jm(){return It().memoizedState}function m3(e,t,n){var r=Hn(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Dm(e))Fm(t,n);else if(n=vm(e,t,n,r),n!==null){var o=lt();Wt(n,e,r,o),zm(n,t,r)}}function g3(e,t,n){var r=Hn(e),o={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Dm(e))Fm(t,o);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var a=t.lastRenderedState,l=i(a,n);if(o.hasEagerState=!0,o.eagerState=l,Kt(l,a)){var s=t.interleaved;s===null?(o.next=o,uf(t)):(o.next=s.next,s.next=o),t.interleaved=o;return}}catch{}finally{}n=vm(e,t,o,r),n!==null&&(o=lt(),Wt(n,e,r,o),zm(n,t,r))}}function Dm(e){var t=e.alternate;return e===Te||t!==null&&t===Te}function Fm(e,t){ii=ll=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function zm(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Qu(e,n)}}var sl={readContext:Ot,useCallback:qe,useContext:qe,useEffect:qe,useImperativeHandle:qe,useInsertionEffect:qe,useLayoutEffect:qe,useMemo:qe,useReducer:qe,useRef:qe,useState:qe,useDebugValue:qe,useDeferredValue:qe,useTransition:qe,useMutableSource:qe,useSyncExternalStore:qe,useId:qe,unstable_isNewReconciler:!1},y3={readContext:Ot,useCallback:function(e,t){return Xt().memoizedState=[e,t===void 0?null:t],e},useContext:Ot,useEffect:lh,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Oa(4194308,4,Am.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Oa(4194308,4,e,t)},useInsertionEffect:function(e,t){return Oa(4,2,e,t)},useMemo:function(e,t){var n=Xt();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Xt();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=m3.bind(null,Te,e),[r.memoizedState,e]},useRef:function(e){var t=Xt();return e={current:e},t.memoizedState=e},useState:ah,useDebugValue:wf,useDeferredValue:function(e){return Xt().memoizedState=e},useTransition:function(){var e=ah(!1),t=e[0];return e=v3.bind(null,e[1]),Xt().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Te,o=Xt();if(be){if(n===void 0)throw Error(M(407));n=n()}else{if(n=t(),Ye===null)throw Error(M(349));yr&30||_m(r,t,n)}o.memoizedState=n;var i={value:n,getSnapshot:t};return o.queue=i,lh($m.bind(null,r,i,e),[e]),r.flags|=2048,Si(9,Sm.bind(null,r,i,n,t),void 0,null),n},useId:function(){var e=Xt(),t=Ye.identifierPrefix;if(be){var n=un,r=cn;n=(r&~(1<<32-Ht(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=bi++,0")&&(s=s.replace("",e.displayName)),s}while(1<=a&&0<=l);break}}}finally{ss=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Qo(e):""}function Yy(e){switch(e.tag){case 5:return Qo(e.type);case 16:return Qo("Lazy");case 13:return Qo("Suspense");case 19:return Qo("SuspenseList");case 0:case 2:case 15:return e=cs(e.type,!1),e;case 11:return e=cs(e.type.render,!1),e;case 1:return e=cs(e.type,!0),e;default:return""}}function fc(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Ur:return"Fragment";case Br:return"Portal";case sc:return"Profiler";case Hu:return"StrictMode";case cc:return"Suspense";case uc:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case yv:return(e.displayName||"Context")+".Consumer";case gv:return(e._context.displayName||"Context")+".Provider";case Wu:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Ku:return t=e.displayName||null,t!==null?t:fc(e.type)||"Memo";case An:t=e._payload,e=e._init;try{return fc(e(t))}catch{}}return null}function Qy(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return fc(t);case 8:return t===Hu?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Kn(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function xv(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Zy(e){var t=xv(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var o=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(a){r=""+a,i.call(this,a)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(a){r=""+a},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Ji(e){e._valueTracker||(e._valueTracker=Zy(e))}function Cv(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=xv(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Ha(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function dc(e,t){var n=t.checked;return ke({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function _d(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Kn(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Ev(e,t){t=t.checked,t!=null&&Vu(e,"checked",t,!1)}function hc(e,t){Ev(e,t);var n=Kn(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?pc(e,t.type,n):t.hasOwnProperty("defaultValue")&&pc(e,t.type,Kn(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Sd(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function pc(e,t,n){(t!=="number"||Ha(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Zo=Array.isArray;function to(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o"+t.valueOf().toString()+"",t=qi.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function fi(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var ei={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Xy=["Webkit","ms","Moz","O"];Object.keys(ei).forEach(function(e){Xy.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),ei[t]=ei[e]})});function $v(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||ei.hasOwnProperty(e)&&ei[e]?(""+t).trim():t+"px"}function Tv(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,o=$v(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,o):e[n]=o}}var Jy=ke({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function gc(e,t){if(t){if(Jy[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(M(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(M(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(M(61))}if(t.style!=null&&typeof t.style!="object")throw Error(M(62))}}function yc(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var wc=null;function Gu(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var xc=null,no=null,ro=null;function kd(e){if(e=Di(e)){if(typeof xc!="function")throw Error(M(280));var t=e.stateNode;t&&(t=kl(t),xc(e.stateNode,e.type,t))}}function kv(e){no?ro?ro.push(e):ro=[e]:no=e}function Rv(){if(no){var e=no,t=ro;if(ro=no=null,kd(e),t)for(e=0;e>>=0,e===0?32:31-(c2(e)/u2|0)|0}var ea=64,ta=4194304;function Xo(e){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: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 e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Ya(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,o=e.suspendedLanes,i=e.pingedLanes,a=n&268435455;if(a!==0){var l=a&~o;l!==0?r=Xo(l):(i&=a,i!==0&&(r=Xo(i)))}else a=n&~o,a!==0?r=Xo(a):i!==0&&(r=Xo(i));if(r===0)return 0;if(t!==0&&t!==r&&!(t&o)&&(o=r&-r,i=t&-t,o>=i||o===16&&(i&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function Mi(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Ht(t),e[t]=n}function p2(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=ni),jd=" ",Dd=!1;function Qv(e,t){switch(e){case"keyup":return U2.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Zv(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Vr=!1;function H2(e,t){switch(e){case"compositionend":return Zv(t);case"keypress":return t.which!==32?null:(Dd=!0,jd);case"textInput":return e=t.data,e===jd&&Dd?null:e;default:return null}}function W2(e,t){if(Vr)return e==="compositionend"||!tf&&Qv(e,t)?(e=Gv(),Ra=Ju=Mn=null,Vr=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Ud(n)}}function em(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?em(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function tm(){for(var e=window,t=Ha();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ha(e.document)}return t}function nf(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function e3(e){var t=tm(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&em(n.ownerDocument.documentElement,n)){if(r!==null&&nf(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var o=n.textContent.length,i=Math.min(r.start,o);r=r.end===void 0?i:Math.min(r.end,o),!e.extend&&i>r&&(o=r,r=i,i=o),o=Vd(n,i);var a=Vd(n,r);o&&a&&(e.rangeCount!==1||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&(t=t.createRange(),t.setStart(o.node,o.offset),e.removeAllRanges(),i>r?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,Hr=null,$c=null,oi=null,Tc=!1;function Hd(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Tc||Hr==null||Hr!==Ha(r)||(r=Hr,"selectionStart"in r&&nf(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),oi&&gi(oi,r)||(oi=r,r=Xa($c,"onSelect"),0Gr||(e.current=Oc[Gr],Oc[Gr]=null,Gr--)}function pe(e,t){Gr++,Oc[Gr]=e.current,e.current=t}var Gn={},rt=er(Gn),vt=er(!1),mr=Gn;function uo(e,t){var n=e.type.contextTypes;if(!n)return Gn;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var o={},i;for(i in n)o[i]=t[i];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function mt(e){return e=e.childContextTypes,e!=null}function qa(){me(vt),me(rt)}function Xd(e,t,n){if(rt.current!==Gn)throw Error(M(168));pe(rt,t),pe(vt,n)}function um(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var o in r)if(!(o in t))throw Error(M(108,Qy(e)||"Unknown",o));return ke({},n,r)}function el(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Gn,mr=rt.current,pe(rt,e),pe(vt,vt.current),!0}function Jd(e,t,n){var r=e.stateNode;if(!r)throw Error(M(169));n?(e=um(e,t,mr),r.__reactInternalMemoizedMergedChildContext=e,me(vt),me(rt),pe(rt,e)):me(vt),pe(vt,n)}var sn=null,Rl=!1,bs=!1;function fm(e){sn===null?sn=[e]:sn.push(e)}function d3(e){Rl=!0,fm(e)}function tr(){if(!bs&&sn!==null){bs=!0;var e=0,t=ce;try{var n=sn;for(ce=1;e>=a,o-=a,cn=1<<32-Ht(t)+o|n<$?(k=S,S=null):k=S.sibling;var P=d(v,S,x[$],E);if(P===null){S===null&&(S=k);break}e&&S&&P.alternate===null&&t(v,S),m=i(P,m,$),b===null?_=P:b.sibling=P,b=P,S=k}if($===x.length)return n(v,S),be&&ir(v,$),_;if(S===null){for(;$$?(k=S,S=null):k=S.sibling;var j=d(v,S,P.value,E);if(j===null){S===null&&(S=k);break}e&&S&&j.alternate===null&&t(v,S),m=i(j,m,$),b===null?_=j:b.sibling=j,b=j,S=k}if(P.done)return n(v,S),be&&ir(v,$),_;if(S===null){for(;!P.done;$++,P=x.next())P=u(v,P.value,E),P!==null&&(m=i(P,m,$),b===null?_=P:b.sibling=P,b=P);return be&&ir(v,$),_}for(S=r(v,S);!P.done;$++,P=x.next())P=p(S,v,$,P.value,E),P!==null&&(e&&P.alternate!==null&&S.delete(P.key===null?$:P.key),m=i(P,m,$),b===null?_=P:b.sibling=P,b=P);return e&&S.forEach(function(L){return t(v,L)}),be&&ir(v,$),_}function C(v,m,x,E){if(typeof x=="object"&&x!==null&&x.type===Ur&&x.key===null&&(x=x.props.children),typeof x=="object"&&x!==null){switch(x.$$typeof){case Xi:e:{for(var _=x.key,b=m;b!==null;){if(b.key===_){if(_=x.type,_===Ur){if(b.tag===7){n(v,b.sibling),m=o(b,x.props.children),m.return=v,v=m;break e}}else if(b.elementType===_||typeof _=="object"&&_!==null&&_.$$typeof===An&&ih(_)===b.type){n(v,b.sibling),m=o(b,x.props),m.ref=jo(v,b,x),m.return=v,v=m;break e}n(v,b);break}else t(v,b);b=b.sibling}x.type===Ur?(m=pr(x.props.children,v.mode,E,x.key),m.return=v,v=m):(E=ja(x.type,x.key,x.props,null,v.mode,E),E.ref=jo(v,m,x),E.return=v,v=E)}return a(v);case Br:e:{for(b=x.key;m!==null;){if(m.key===b)if(m.tag===4&&m.stateNode.containerInfo===x.containerInfo&&m.stateNode.implementation===x.implementation){n(v,m.sibling),m=o(m,x.children||[]),m.return=v,v=m;break e}else{n(v,m);break}else t(v,m);m=m.sibling}m=Ps(x,v.mode,E),m.return=v,v=m}return a(v);case An:return b=x._init,C(v,m,b(x._payload),E)}if(Zo(x))return y(v,m,x,E);if(Ao(x))return g(v,m,x,E);sa(v,x)}return typeof x=="string"&&x!==""||typeof x=="number"?(x=""+x,m!==null&&m.tag===6?(n(v,m.sibling),m=o(m,x),m.return=v,v=m):(n(v,m),m=Ns(x,v.mode,E),m.return=v,v=m),a(v)):n(v,m)}return C}var ho=wm(!0),xm=wm(!1),Fi={},tn=er(Fi),Ci=er(Fi),Ei=er(Fi);function cr(e){if(e===Fi)throw Error(M(174));return e}function df(e,t){switch(pe(Ei,t),pe(Ci,e),pe(tn,Fi),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:mc(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=mc(t,e)}me(tn),pe(tn,t)}function po(){me(tn),me(Ci),me(Ei)}function Cm(e){cr(Ei.current);var t=cr(tn.current),n=mc(t,e.type);t!==n&&(pe(Ci,e),pe(tn,n))}function hf(e){Ci.current===e&&(me(tn),me(Ci))}var $e=er(0);function al(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var _s=[];function pf(){for(var e=0;e<_s.length;e++)_s[e]._workInProgressVersionPrimary=null;_s.length=0}var Aa=xn.ReactCurrentDispatcher,Ss=xn.ReactCurrentBatchConfig,yr=0,Te=null,Fe=null,Ke=null,ll=!1,ii=!1,bi=0,p3=0;function qe(){throw Error(M(321))}function vf(e,t){if(t===null)return!1;for(var n=0;nn?n:4,e(!0);var r=Ss.transition;Ss.transition={};try{e(!1),t()}finally{ce=n,Ss.transition=r}}function jm(){return It().memoizedState}function m3(e,t,n){var r=Hn(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Dm(e))Fm(t,n);else if(n=vm(e,t,n,r),n!==null){var o=lt();Wt(n,e,r,o),zm(n,t,r)}}function g3(e,t,n){var r=Hn(e),o={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Dm(e))Fm(t,o);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var a=t.lastRenderedState,l=i(a,n);if(o.hasEagerState=!0,o.eagerState=l,Kt(l,a)){var s=t.interleaved;s===null?(o.next=o,uf(t)):(o.next=s.next,s.next=o),t.interleaved=o;return}}catch{}finally{}n=vm(e,t,o,r),n!==null&&(o=lt(),Wt(n,e,r,o),zm(n,t,r))}}function Dm(e){var t=e.alternate;return e===Te||t!==null&&t===Te}function Fm(e,t){ii=ll=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function zm(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Qu(e,n)}}var sl={readContext:Ot,useCallback:qe,useContext:qe,useEffect:qe,useImperativeHandle:qe,useInsertionEffect:qe,useLayoutEffect:qe,useMemo:qe,useReducer:qe,useRef:qe,useState:qe,useDebugValue:qe,useDeferredValue:qe,useTransition:qe,useMutableSource:qe,useSyncExternalStore:qe,useId:qe,unstable_isNewReconciler:!1},y3={readContext:Ot,useCallback:function(e,t){return Xt().memoizedState=[e,t===void 0?null:t],e},useContext:Ot,useEffect:lh,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Oa(4194308,4,Am.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Oa(4194308,4,e,t)},useInsertionEffect:function(e,t){return Oa(4,2,e,t)},useMemo:function(e,t){var n=Xt();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Xt();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=m3.bind(null,Te,e),[r.memoizedState,e]},useRef:function(e){var t=Xt();return e={current:e},t.memoizedState=e},useState:ah,useDebugValue:wf,useDeferredValue:function(e){return Xt().memoizedState=e},useTransition:function(){var e=ah(!1),t=e[0];return e=v3.bind(null,e[1]),Xt().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Te,o=Xt();if(be){if(n===void 0)throw Error(M(407));n=n()}else{if(n=t(),Ge===null)throw Error(M(349));yr&30||_m(r,t,n)}o.memoizedState=n;var i={value:n,getSnapshot:t};return o.queue=i,lh($m.bind(null,r,i,e),[e]),r.flags|=2048,Si(9,Sm.bind(null,r,i,n,t),void 0,null),n},useId:function(){var e=Xt(),t=Ge.identifierPrefix;if(be){var n=un,r=cn;n=(r&~(1<<32-Ht(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=bi++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=a.createElement(n,{is:r.is}):(e=a.createElement(n),n==="select"&&(a=e,r.multiple?a.multiple=!0:r.size&&(a.size=r.size))):e=a.createElementNS(e,n),e[Jt]=t,e[xi]=r,Qm(e,t,!1,!1),t.stateNode=e;e:{switch(a=yc(n,r),n){case"dialog":ve("cancel",e),ve("close",e),o=r;break;case"iframe":case"object":case"embed":ve("load",e),o=r;break;case"video":case"audio":for(o=0;omo&&(t.flags|=128,r=!0,Do(i,!1),t.lanes=4194304)}else{if(!r)if(e=al(a),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Do(i,!0),i.tail===null&&i.tailMode==="hidden"&&!a.alternate&&!be)return et(t),null}else 2*Me()-i.renderingStartTime>mo&&n!==1073741824&&(t.flags|=128,r=!0,Do(i,!1),t.lanes=4194304);i.isBackwards?(a.sibling=t.child,t.child=a):(n=i.last,n!==null?n.sibling=a:t.child=a,i.last=a)}return i.tail!==null?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Me(),t.sibling=null,n=$e.current,pe($e,r?n&1|2:n&1),t):(et(t),null);case 22:case 23:return Sf(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?wt&1073741824&&(et(t),t.subtreeFlags&6&&(t.flags|=8192)):et(t),null;case 24:return null;case 25:return null}throw Error(M(156,t.tag))}function $3(e,t){switch(of(t),t.tag){case 1:return mt(t.type)&&qa(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return po(),me(vt),me(rt),pf(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return hf(t),null;case 13:if(me($e),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(M(340));fo()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return me($e),null;case 4:return po(),null;case 10:return cf(t.type._context),null;case 22:case 23:return Sf(),null;case 24:return null;default:return null}}var ua=!1,tt=!1,T3=typeof WeakSet=="function"?WeakSet:Set,V=null;function Xr(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Ae(e,t,r)}else n.current=null}function Wc(e,t,n){try{n()}catch(r){Ae(e,t,r)}}var mh=!1;function k3(e,t){if(kc=Qa,e=tm(),nf(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var o=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var a=0,l=-1,s=-1,c=0,f=0,u=e,d=null;t:for(;;){for(var p;u!==n||o!==0&&u.nodeType!==3||(l=a+o),u!==i||r!==0&&u.nodeType!==3||(s=a+r),u.nodeType===3&&(a+=u.nodeValue.length),(p=u.firstChild)!==null;)d=u,u=p;for(;;){if(u===e)break t;if(d===n&&++c===o&&(l=a),d===i&&++f===r&&(s=a),(p=u.nextSibling)!==null)break;u=d,d=u.parentNode}u=p}n=l===-1||s===-1?null:{start:l,end:s}}else n=null}n=n||{start:0,end:0}}else n=null;for(Rc={focusedElem:e,selectionRange:n},Qa=!1,V=t;V!==null;)if(t=V,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,V=e;else for(;V!==null;){t=V;try{var y=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(y!==null){var g=y.memoizedProps,C=y.memoizedState,v=t.stateNode,m=v.getSnapshotBeforeUpdate(t.elementType===t.type?g:Dt(t.type,g),C);v.__reactInternalSnapshotBeforeUpdate=m}break;case 3:var x=t.stateNode.containerInfo;x.nodeType===1?x.textContent="":x.nodeType===9&&x.documentElement&&x.removeChild(x.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(M(163))}}catch(E){Ae(t,t.return,E)}if(e=t.sibling,e!==null){e.return=t.return,V=e;break}V=t.return}return y=mh,mh=!1,y}function ai(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var o=r=r.next;do{if((o.tag&e)===e){var i=o.destroy;o.destroy=void 0,i!==void 0&&Wc(t,n,i)}o=o.next}while(o!==r)}}function Al(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Kc(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Jm(e){var t=e.alternate;t!==null&&(e.alternate=null,Jm(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Jt],delete t[xi],delete t[Ac],delete t[u3],delete t[f3])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function qm(e){return e.tag===5||e.tag===3||e.tag===4}function gh(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||qm(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Yc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Ja));else if(r!==4&&(e=e.child,e!==null))for(Yc(e,t,n),e=e.sibling;e!==null;)Yc(e,t,n),e=e.sibling}function Gc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Gc(e,t,n),e=e.sibling;e!==null;)Gc(e,t,n),e=e.sibling}var Qe=null,Ft=!1;function Rn(e,t,n){for(n=n.child;n!==null;)e0(e,t,n),n=n.sibling}function e0(e,t,n){if(en&&typeof en.onCommitFiberUnmount=="function")try{en.onCommitFiberUnmount(_l,n)}catch{}switch(n.tag){case 5:tt||Xr(n,t);case 6:var r=Qe,o=Ft;Qe=null,Rn(e,t,n),Qe=r,Ft=o,Qe!==null&&(Ft?(e=Qe,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Qe.removeChild(n.stateNode));break;case 18:Qe!==null&&(Ft?(e=Qe,n=n.stateNode,e.nodeType===8?Es(e.parentNode,n):e.nodeType===1&&Es(e,n),vi(e)):Es(Qe,n.stateNode));break;case 4:r=Qe,o=Ft,Qe=n.stateNode.containerInfo,Ft=!0,Rn(e,t,n),Qe=r,Ft=o;break;case 0:case 11:case 14:case 15:if(!tt&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){o=r=r.next;do{var i=o,a=i.destroy;i=i.tag,a!==void 0&&(i&2||i&4)&&Wc(n,t,a),o=o.next}while(o!==r)}Rn(e,t,n);break;case 1:if(!tt&&(Xr(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(l){Ae(n,t,l)}Rn(e,t,n);break;case 21:Rn(e,t,n);break;case 22:n.mode&1?(tt=(r=tt)||n.memoizedState!==null,Rn(e,t,n),tt=r):Rn(e,t,n);break;default:Rn(e,t,n)}}function yh(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new T3),t.forEach(function(r){var o=j3.bind(null,e,r);n.has(r)||(n.add(r),r.then(o,o))})}}function jt(e,t){var n=t.deletions;if(n!==null)for(var r=0;ro&&(o=a),r&=~i}if(r=o,r=Me()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*N3(r/1960))-r,10e?16:e,jn===null)var r=!1;else{if(e=jn,jn=null,fl=0,le&6)throw Error(M(331));var o=le;for(le|=4,V=e.current;V!==null;){var i=V,a=i.child;if(V.flags&16){var l=i.deletions;if(l!==null){for(var s=0;sMe()-bf?hr(e,0):Ef|=n),gt(e,t)}function s0(e,t){t===0&&(e.mode&1?(t=ta,ta<<=1,!(ta&130023424)&&(ta=4194304)):t=1);var n=lt();e=vn(e,t),e!==null&&(Mi(e,t,n),gt(e,n))}function M3(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),s0(e,n)}function j3(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,o=e.memoizedState;o!==null&&(n=o.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(M(314))}r!==null&&r.delete(t),s0(e,n)}var c0;c0=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||vt.current)pt=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return pt=!1,_3(e,t,n);pt=!!(e.flags&131072)}else pt=!1,be&&t.flags&1048576&&dm(t,nl,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Ia(e,t),e=t.pendingProps;var o=uo(t,rt.current);io(t,n),o=mf(null,t,r,e,o,n);var i=gf();return t.flags|=1,typeof o=="object"&&o!==null&&typeof o.render=="function"&&o.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,mt(r)?(i=!0,el(t)):i=!1,t.memoizedState=o.state!==null&&o.state!==void 0?o.state:null,ff(t),o.updater=Nl,t.stateNode=o,o._reactInternals=t,Dc(t,r,e,n),t=Bc(null,t,r,!0,i,n)):(t.tag=0,be&&i&&rf(t),it(null,t,o,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Ia(e,t),e=t.pendingProps,o=r._init,r=o(r._payload),t.type=r,o=t.tag=F3(r),e=Dt(r,e),o){case 0:t=zc(null,t,r,e,n);break e;case 1:t=hh(null,t,r,e,n);break e;case 11:t=fh(null,t,r,e,n);break e;case 14:t=dh(null,t,r,Dt(r.type,e),n);break e}throw Error(M(306,r,""))}return t;case 0:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Dt(r,o),zc(e,t,r,o,n);case 1:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Dt(r,o),hh(e,t,r,o,n);case 3:e:{if(Km(t),e===null)throw Error(M(387));r=t.pendingProps,i=t.memoizedState,o=i.element,mm(e,t),il(t,r,null,n);var a=t.memoizedState;if(r=a.element,i.isDehydrated)if(i={element:r,isDehydrated:!1,cache:a.cache,pendingSuspenseBoundaries:a.pendingSuspenseBoundaries,transitions:a.transitions},t.updateQueue.baseState=i,t.memoizedState=i,t.flags&256){o=vo(Error(M(423)),t),t=ph(e,t,r,n,o);break e}else if(r!==o){o=vo(Error(M(424)),t),t=ph(e,t,r,n,o);break e}else for(Ct=Bn(t.stateNode.containerInfo.firstChild),Et=t,be=!0,Bt=null,n=xm(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(fo(),r===o){t=mn(e,t,n);break e}it(e,t,r,n)}t=t.child}return t;case 5:return Cm(t),e===null&&Lc(t),r=t.type,o=t.pendingProps,i=e!==null?e.memoizedProps:null,a=o.children,Nc(r,o)?a=null:i!==null&&Nc(r,i)&&(t.flags|=32),Wm(e,t),it(e,t,a,n),t.child;case 6:return e===null&&Lc(t),null;case 13:return Ym(e,t,n);case 4:return df(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=ho(t,null,r,n):it(e,t,r,n),t.child;case 11:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Dt(r,o),fh(e,t,r,o,n);case 7:return it(e,t,t.pendingProps,n),t.child;case 8:return it(e,t,t.pendingProps.children,n),t.child;case 12:return it(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,o=t.pendingProps,i=t.memoizedProps,a=o.value,pe(rl,r._currentValue),r._currentValue=a,i!==null)if(Kt(i.value,a)){if(i.children===o.children&&!vt.current){t=mn(e,t,n);break e}}else for(i=t.child,i!==null&&(i.return=t);i!==null;){var l=i.dependencies;if(l!==null){a=i.child;for(var s=l.firstContext;s!==null;){if(s.context===r){if(i.tag===1){s=fn(-1,n&-n),s.tag=2;var c=i.updateQueue;if(c!==null){c=c.shared;var f=c.pending;f===null?s.next=s:(s.next=f.next,f.next=s),c.pending=s}}i.lanes|=n,s=i.alternate,s!==null&&(s.lanes|=n),Mc(i.return,n,t),l.lanes|=n;break}s=s.next}}else if(i.tag===10)a=i.type===t.type?null:i.child;else if(i.tag===18){if(a=i.return,a===null)throw Error(M(341));a.lanes|=n,l=a.alternate,l!==null&&(l.lanes|=n),Mc(a,n,t),a=i.sibling}else a=i.child;if(a!==null)a.return=i;else for(a=i;a!==null;){if(a===t){a=null;break}if(i=a.sibling,i!==null){i.return=a.return,a=i;break}a=a.return}i=a}it(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,r=t.pendingProps.children,io(t,n),o=Ot(o),r=r(o),t.flags|=1,it(e,t,r,n),t.child;case 14:return r=t.type,o=Dt(r,t.pendingProps),o=Dt(r.type,o),dh(e,t,r,o,n);case 15:return Vm(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Dt(r,o),Ia(e,t),t.tag=1,mt(r)?(e=!0,el(t)):e=!1,io(t,n),ym(t,r,o),Dc(t,r,o,n),Bc(null,t,r,!0,e,n);case 19:return Gm(e,t,n);case 22:return Hm(e,t,n)}throw Error(M(156,t.tag))};function u0(e,t){return Mv(e,t)}function D3(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Pt(e,t,n,r){return new D3(e,t,n,r)}function Tf(e){return e=e.prototype,!(!e||!e.isReactComponent)}function F3(e){if(typeof e=="function")return Tf(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Wu)return 11;if(e===Ku)return 14}return 2}function Wn(e,t){var n=e.alternate;return n===null?(n=Pt(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function ja(e,t,n,r,o,i){var a=2;if(r=e,typeof e=="function")Tf(e)&&(a=1);else if(typeof e=="string")a=5;else e:switch(e){case Ur:return pr(n.children,o,i,t);case Hu:a=8,o|=8;break;case sc:return e=Pt(12,n,t,o|2),e.elementType=sc,e.lanes=i,e;case cc:return e=Pt(13,n,t,o),e.elementType=cc,e.lanes=i,e;case uc:return e=Pt(19,n,t,o),e.elementType=uc,e.lanes=i,e;case wv:return Il(n,o,i,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case gv:a=10;break e;case yv:a=9;break e;case Wu:a=11;break e;case Ku:a=14;break e;case An:a=16,r=null;break e}throw Error(M(130,e==null?e:typeof e,""))}return t=Pt(a,n,t,o),t.elementType=e,t.type=r,t.lanes=i,t}function pr(e,t,n,r){return e=Pt(7,e,r,t),e.lanes=n,e}function Il(e,t,n,r){return e=Pt(22,e,r,t),e.elementType=wv,e.lanes=n,e.stateNode={isHidden:!1},e}function Ns(e,t,n){return e=Pt(6,e,null,t),e.lanes=n,e}function Ps(e,t,n){return t=Pt(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function z3(e,t,n,r,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=fs(0),this.expirationTimes=fs(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=fs(0),this.identifierPrefix=r,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function kf(e,t,n,r,o,i,a,l,s){return e=new z3(e,t,n,l,s),t===1?(t=1,i===!0&&(t|=8)):t=0,i=Pt(3,null,null,t),e.current=i,i.stateNode=e,i.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},ff(i),e}function B3(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(p0)}catch(e){console.error(e)}}p0(),dv.exports=St;var So=dv.exports;const v0=Jn(So),K3=Mu({__proto__:null,default:v0},[So]);var m0,$h=So;$h.createRoot,m0=$h.hydrateRoot;/** +`+i.stack}return{value:e,source:t,stack:o,digest:null}}function ks(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Fc(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var C3=typeof WeakMap=="function"?WeakMap:Map;function Bm(e,t,n){n=fn(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){ul||(ul=!0,Qc=r),Fc(e,t)},n}function Um(e,t,n){n=fn(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var o=t.value;n.payload=function(){return r(o)},n.callback=function(){Fc(e,t)}}var i=e.stateNode;return i!==null&&typeof i.componentDidCatch=="function"&&(n.callback=function(){Fc(e,t),typeof r!="function"&&(Vn===null?Vn=new Set([this]):Vn.add(this));var a=t.stack;this.componentDidCatch(t.value,{componentStack:a!==null?a:""})}),n}function sh(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new C3;var o=new Set;r.set(t,o)}else o=r.get(t),o===void 0&&(o=new Set,r.set(t,o));o.has(n)||(o.add(n),e=L3.bind(null,e,t,n),t.then(e,e))}function ch(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function uh(e,t,n,r,o){return e.mode&1?(e.flags|=65536,e.lanes=o,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=fn(-1,1),t.tag=2,Un(n,t,1))),n.lanes|=1),e)}var E3=xn.ReactCurrentOwner,pt=!1;function it(e,t,n,r){t.child=e===null?xm(t,null,n,r):ho(t,e.child,n,r)}function fh(e,t,n,r,o){n=n.render;var i=t.ref;return io(t,o),r=mf(e,t,n,r,i,o),n=gf(),e!==null&&!pt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,mn(e,t,o)):(be&&n&&rf(t),t.flags|=1,it(e,t,r,o),t.child)}function dh(e,t,n,r,o){if(e===null){var i=n.type;return typeof i=="function"&&!Tf(i)&&i.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=i,Vm(e,t,i,r,o)):(e=ja(n.type,null,r,t,t.mode,o),e.ref=t.ref,e.return=t,t.child=e)}if(i=e.child,!(e.lanes&o)){var a=i.memoizedProps;if(n=n.compare,n=n!==null?n:gi,n(a,r)&&e.ref===t.ref)return mn(e,t,o)}return t.flags|=1,e=Wn(i,r),e.ref=t.ref,e.return=t,t.child=e}function Vm(e,t,n,r,o){if(e!==null){var i=e.memoizedProps;if(gi(i,r)&&e.ref===t.ref)if(pt=!1,t.pendingProps=r=i,(e.lanes&o)!==0)e.flags&131072&&(pt=!0);else return t.lanes=e.lanes,mn(e,t,o)}return zc(e,t,n,r,o)}function Hm(e,t,n){var r=t.pendingProps,o=r.children,i=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},pe(Jr,wt),wt|=n;else{if(!(n&1073741824))return e=i!==null?i.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,pe(Jr,wt),wt|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=i!==null?i.baseLanes:n,pe(Jr,wt),wt|=r}else i!==null?(r=i.baseLanes|n,t.memoizedState=null):r=n,pe(Jr,wt),wt|=r;return it(e,t,o,n),t.child}function Wm(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function zc(e,t,n,r,o){var i=mt(n)?mr:rt.current;return i=uo(t,i),io(t,o),n=mf(e,t,n,r,i,o),r=gf(),e!==null&&!pt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,mn(e,t,o)):(be&&r&&rf(t),t.flags|=1,it(e,t,n,o),t.child)}function hh(e,t,n,r,o){if(mt(n)){var i=!0;el(t)}else i=!1;if(io(t,o),t.stateNode===null)Ia(e,t),ym(t,n,r),Dc(t,n,r,o),r=!0;else if(e===null){var a=t.stateNode,l=t.memoizedProps;a.props=l;var s=a.context,c=n.contextType;typeof c=="object"&&c!==null?c=Ot(c):(c=mt(n)?mr:rt.current,c=uo(t,c));var f=n.getDerivedStateFromProps,u=typeof f=="function"||typeof a.getSnapshotBeforeUpdate=="function";u||typeof a.UNSAFE_componentWillReceiveProps!="function"&&typeof a.componentWillReceiveProps!="function"||(l!==r||s!==c)&&oh(t,a,r,c),On=!1;var d=t.memoizedState;a.state=d,il(t,r,a,o),s=t.memoizedState,l!==r||d!==s||vt.current||On?(typeof f=="function"&&(jc(t,n,f,r),s=t.memoizedState),(l=On||rh(t,n,l,r,d,s,c))?(u||typeof a.UNSAFE_componentWillMount!="function"&&typeof a.componentWillMount!="function"||(typeof a.componentWillMount=="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount=="function"&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount=="function"&&(t.flags|=4194308)):(typeof a.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=s),a.props=r,a.state=s,a.context=c,r=l):(typeof a.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,mm(e,t),l=t.memoizedProps,c=t.type===t.elementType?l:Dt(t.type,l),a.props=c,u=t.pendingProps,d=a.context,s=n.contextType,typeof s=="object"&&s!==null?s=Ot(s):(s=mt(n)?mr:rt.current,s=uo(t,s));var p=n.getDerivedStateFromProps;(f=typeof p=="function"||typeof a.getSnapshotBeforeUpdate=="function")||typeof a.UNSAFE_componentWillReceiveProps!="function"&&typeof a.componentWillReceiveProps!="function"||(l!==u||d!==s)&&oh(t,a,r,s),On=!1,d=t.memoizedState,a.state=d,il(t,r,a,o);var y=t.memoizedState;l!==u||d!==y||vt.current||On?(typeof p=="function"&&(jc(t,n,p,r),y=t.memoizedState),(c=On||rh(t,n,c,r,d,y,s)||!1)?(f||typeof a.UNSAFE_componentWillUpdate!="function"&&typeof a.componentWillUpdate!="function"||(typeof a.componentWillUpdate=="function"&&a.componentWillUpdate(r,y,s),typeof a.UNSAFE_componentWillUpdate=="function"&&a.UNSAFE_componentWillUpdate(r,y,s)),typeof a.componentDidUpdate=="function"&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof a.componentDidUpdate!="function"||l===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&d===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=y),a.props=r,a.state=y,a.context=s,r=c):(typeof a.componentDidUpdate!="function"||l===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&d===e.memoizedState||(t.flags|=1024),r=!1)}return Bc(e,t,n,r,i,o)}function Bc(e,t,n,r,o,i){Wm(e,t);var a=(t.flags&128)!==0;if(!r&&!a)return o&&Jd(t,n,!1),mn(e,t,i);r=t.stateNode,E3.current=t;var l=a&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&a?(t.child=ho(t,e.child,null,i),t.child=ho(t,null,l,i)):it(e,t,l,i),t.memoizedState=r.state,o&&Jd(t,n,!0),t.child}function Km(e){var t=e.stateNode;t.pendingContext?Xd(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Xd(e,t.context,!1),df(e,t.containerInfo)}function ph(e,t,n,r,o){return fo(),af(o),t.flags|=256,it(e,t,n,r),t.child}var Uc={dehydrated:null,treeContext:null,retryLane:0};function Vc(e){return{baseLanes:e,cachePool:null,transitions:null}}function Gm(e,t,n){var r=t.pendingProps,o=$e.current,i=!1,a=(t.flags&128)!==0,l;if((l=a)||(l=e!==null&&e.memoizedState===null?!1:(o&2)!==0),l?(i=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(o|=1),pe($e,o&1),e===null)return Lc(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(a=r.children,e=r.fallback,i?(r=t.mode,i=t.child,a={mode:"hidden",children:a},!(r&1)&&i!==null?(i.childLanes=0,i.pendingProps=a):i=Il(a,r,0,null),e=pr(e,r,n,null),i.return=t,e.return=t,i.sibling=e,t.child=i,t.child.memoizedState=Vc(n),t.memoizedState=Uc,e):xf(t,a));if(o=e.memoizedState,o!==null&&(l=o.dehydrated,l!==null))return b3(e,t,a,r,l,o,n);if(i){i=r.fallback,a=t.mode,o=e.child,l=o.sibling;var s={mode:"hidden",children:r.children};return!(a&1)&&t.child!==o?(r=t.child,r.childLanes=0,r.pendingProps=s,t.deletions=null):(r=Wn(o,s),r.subtreeFlags=o.subtreeFlags&14680064),l!==null?i=Wn(l,i):(i=pr(i,a,n,null),i.flags|=2),i.return=t,r.return=t,r.sibling=i,t.child=r,r=i,i=t.child,a=e.child.memoizedState,a=a===null?Vc(n):{baseLanes:a.baseLanes|n,cachePool:null,transitions:a.transitions},i.memoizedState=a,i.childLanes=e.childLanes&~n,t.memoizedState=Uc,r}return i=e.child,e=i.sibling,r=Wn(i,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function xf(e,t){return t=Il({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function ca(e,t,n,r){return r!==null&&af(r),ho(t,e.child,null,n),e=xf(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function b3(e,t,n,r,o,i,a){if(n)return t.flags&256?(t.flags&=-257,r=ks(Error(M(422))),ca(e,t,a,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(i=r.fallback,o=t.mode,r=Il({mode:"visible",children:r.children},o,0,null),i=pr(i,o,a,null),i.flags|=2,r.return=t,i.return=t,r.sibling=i,t.child=r,t.mode&1&&ho(t,e.child,null,a),t.child.memoizedState=Vc(a),t.memoizedState=Uc,i);if(!(t.mode&1))return ca(e,t,a,null);if(o.data==="$!"){if(r=o.nextSibling&&o.nextSibling.dataset,r)var l=r.dgst;return r=l,i=Error(M(419)),r=ks(i,r,void 0),ca(e,t,a,r)}if(l=(a&e.childLanes)!==0,pt||l){if(r=Ge,r!==null){switch(a&-a){case 4:o=2;break;case 16:o=8;break;case 64: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:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:o=32;break;case 536870912:o=268435456;break;default:o=0}o=o&(r.suspendedLanes|a)?0:o,o!==0&&o!==i.retryLane&&(i.retryLane=o,vn(e,o),Wt(r,e,o,-1))}return $f(),r=ks(Error(M(421))),ca(e,t,a,r)}return o.data==="$?"?(t.flags|=128,t.child=e.child,t=M3.bind(null,e),o._reactRetry=t,null):(e=i.treeContext,Ct=Bn(o.nextSibling),Et=t,be=!0,Bt=null,e!==null&&(Rt[Nt++]=cn,Rt[Nt++]=un,Rt[Nt++]=gr,cn=e.id,un=e.overflow,gr=t),t=xf(t,r.children),t.flags|=4096,t)}function vh(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Mc(e.return,t,n)}function Rs(e,t,n,r,o){var i=e.memoizedState;i===null?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 Ym(e,t,n){var r=t.pendingProps,o=r.revealOrder,i=r.tail;if(it(e,t,r.children,n),r=$e.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&vh(e,n,t);else if(e.tag===19)vh(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(pe($e,r),!(t.mode&1))t.memoizedState=null;else switch(o){case"forwards":for(n=t.child,o=null;n!==null;)e=n.alternate,e!==null&&al(e)===null&&(o=n),n=n.sibling;n=o,n===null?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),Rs(t,!1,o,n,i);break;case"backwards":for(n=null,o=t.child,t.child=null;o!==null;){if(e=o.alternate,e!==null&&al(e)===null){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}Rs(t,!0,n,null,i);break;case"together":Rs(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Ia(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function mn(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),wr|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(M(153));if(t.child!==null){for(e=t.child,n=Wn(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Wn(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function _3(e,t,n){switch(t.tag){case 3:Km(t),fo();break;case 5:Cm(t);break;case 1:mt(t.type)&&el(t);break;case 4:df(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,o=t.memoizedProps.value;pe(rl,r._currentValue),r._currentValue=o;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(pe($e,$e.current&1),t.flags|=128,null):n&t.child.childLanes?Gm(e,t,n):(pe($e,$e.current&1),e=mn(e,t,n),e!==null?e.sibling:null);pe($e,$e.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return Ym(e,t,n);t.flags|=128}if(o=t.memoizedState,o!==null&&(o.rendering=null,o.tail=null,o.lastEffect=null),pe($e,$e.current),r)break;return null;case 22:case 23:return t.lanes=0,Hm(e,t,n)}return mn(e,t,n)}var Qm,Hc,Zm,Xm;Qm=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Hc=function(){};Zm=function(e,t,n,r){var o=e.memoizedProps;if(o!==r){e=t.stateNode,cr(tn.current);var i=null;switch(n){case"input":o=dc(e,o),r=dc(e,r),i=[];break;case"select":o=ke({},o,{value:void 0}),r=ke({},r,{value:void 0}),i=[];break;case"textarea":o=vc(e,o),r=vc(e,r),i=[];break;default:typeof o.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=Ja)}gc(n,r);var a;n=null;for(c in o)if(!r.hasOwnProperty(c)&&o.hasOwnProperty(c)&&o[c]!=null)if(c==="style"){var l=o[c];for(a in l)l.hasOwnProperty(a)&&(n||(n={}),n[a]="")}else c!=="dangerouslySetInnerHTML"&&c!=="children"&&c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&c!=="autoFocus"&&(ui.hasOwnProperty(c)?i||(i=[]):(i=i||[]).push(c,null));for(c in r){var s=r[c];if(l=o!=null?o[c]:void 0,r.hasOwnProperty(c)&&s!==l&&(s!=null||l!=null))if(c==="style")if(l){for(a in l)!l.hasOwnProperty(a)||s&&s.hasOwnProperty(a)||(n||(n={}),n[a]="");for(a in s)s.hasOwnProperty(a)&&l[a]!==s[a]&&(n||(n={}),n[a]=s[a])}else n||(i||(i=[]),i.push(c,n)),n=s;else c==="dangerouslySetInnerHTML"?(s=s?s.__html:void 0,l=l?l.__html:void 0,s!=null&&l!==s&&(i=i||[]).push(c,s)):c==="children"?typeof s!="string"&&typeof s!="number"||(i=i||[]).push(c,""+s):c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&(ui.hasOwnProperty(c)?(s!=null&&c==="onScroll"&&ve("scroll",e),i||l===s||(i=[])):(i=i||[]).push(c,s))}n&&(i=i||[]).push("style",n);var c=i;(t.updateQueue=c)&&(t.flags|=4)}};Xm=function(e,t,n,r){n!==r&&(t.flags|=4)};function Do(e,t){if(!be)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function et(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var o=e.child;o!==null;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags&14680064,r|=o.flags&14680064,o.return=e,o=o.sibling;else for(o=e.child;o!==null;)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 S3(e,t,n){var r=t.pendingProps;switch(of(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return et(t),null;case 1:return mt(t.type)&&qa(),et(t),null;case 3:return r=t.stateNode,po(),me(vt),me(rt),pf(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(la(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Bt!==null&&(Jc(Bt),Bt=null))),Hc(e,t),et(t),null;case 5:hf(t);var o=cr(Ei.current);if(n=t.type,e!==null&&t.stateNode!=null)Zm(e,t,n,r,o),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(M(166));return et(t),null}if(e=cr(tn.current),la(t)){r=t.stateNode,n=t.type;var i=t.memoizedProps;switch(r[Jt]=t,r[xi]=i,e=(t.mode&1)!==0,n){case"dialog":ve("cancel",r),ve("close",r);break;case"iframe":case"object":case"embed":ve("load",r);break;case"video":case"audio":for(o=0;o<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=a.createElement(n,{is:r.is}):(e=a.createElement(n),n==="select"&&(a=e,r.multiple?a.multiple=!0:r.size&&(a.size=r.size))):e=a.createElementNS(e,n),e[Jt]=t,e[xi]=r,Qm(e,t,!1,!1),t.stateNode=e;e:{switch(a=yc(n,r),n){case"dialog":ve("cancel",e),ve("close",e),o=r;break;case"iframe":case"object":case"embed":ve("load",e),o=r;break;case"video":case"audio":for(o=0;omo&&(t.flags|=128,r=!0,Do(i,!1),t.lanes=4194304)}else{if(!r)if(e=al(a),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Do(i,!0),i.tail===null&&i.tailMode==="hidden"&&!a.alternate&&!be)return et(t),null}else 2*je()-i.renderingStartTime>mo&&n!==1073741824&&(t.flags|=128,r=!0,Do(i,!1),t.lanes=4194304);i.isBackwards?(a.sibling=t.child,t.child=a):(n=i.last,n!==null?n.sibling=a:t.child=a,i.last=a)}return i.tail!==null?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=je(),t.sibling=null,n=$e.current,pe($e,r?n&1|2:n&1),t):(et(t),null);case 22:case 23:return Sf(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?wt&1073741824&&(et(t),t.subtreeFlags&6&&(t.flags|=8192)):et(t),null;case 24:return null;case 25:return null}throw Error(M(156,t.tag))}function $3(e,t){switch(of(t),t.tag){case 1:return mt(t.type)&&qa(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return po(),me(vt),me(rt),pf(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return hf(t),null;case 13:if(me($e),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(M(340));fo()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return me($e),null;case 4:return po(),null;case 10:return cf(t.type._context),null;case 22:case 23:return Sf(),null;case 24:return null;default:return null}}var ua=!1,tt=!1,T3=typeof WeakSet=="function"?WeakSet:Set,V=null;function Xr(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Ae(e,t,r)}else n.current=null}function Wc(e,t,n){try{n()}catch(r){Ae(e,t,r)}}var mh=!1;function k3(e,t){if(kc=Qa,e=tm(),nf(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var o=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var a=0,l=-1,s=-1,c=0,f=0,u=e,d=null;t:for(;;){for(var p;u!==n||o!==0&&u.nodeType!==3||(l=a+o),u!==i||r!==0&&u.nodeType!==3||(s=a+r),u.nodeType===3&&(a+=u.nodeValue.length),(p=u.firstChild)!==null;)d=u,u=p;for(;;){if(u===e)break t;if(d===n&&++c===o&&(l=a),d===i&&++f===r&&(s=a),(p=u.nextSibling)!==null)break;u=d,d=u.parentNode}u=p}n=l===-1||s===-1?null:{start:l,end:s}}else n=null}n=n||{start:0,end:0}}else n=null;for(Rc={focusedElem:e,selectionRange:n},Qa=!1,V=t;V!==null;)if(t=V,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,V=e;else for(;V!==null;){t=V;try{var y=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(y!==null){var g=y.memoizedProps,C=y.memoizedState,v=t.stateNode,m=v.getSnapshotBeforeUpdate(t.elementType===t.type?g:Dt(t.type,g),C);v.__reactInternalSnapshotBeforeUpdate=m}break;case 3:var x=t.stateNode.containerInfo;x.nodeType===1?x.textContent="":x.nodeType===9&&x.documentElement&&x.removeChild(x.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(M(163))}}catch(E){Ae(t,t.return,E)}if(e=t.sibling,e!==null){e.return=t.return,V=e;break}V=t.return}return y=mh,mh=!1,y}function ai(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var o=r=r.next;do{if((o.tag&e)===e){var i=o.destroy;o.destroy=void 0,i!==void 0&&Wc(t,n,i)}o=o.next}while(o!==r)}}function Al(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Kc(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Jm(e){var t=e.alternate;t!==null&&(e.alternate=null,Jm(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Jt],delete t[xi],delete t[Ac],delete t[u3],delete t[f3])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function qm(e){return e.tag===5||e.tag===3||e.tag===4}function gh(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||qm(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Gc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Ja));else if(r!==4&&(e=e.child,e!==null))for(Gc(e,t,n),e=e.sibling;e!==null;)Gc(e,t,n),e=e.sibling}function Yc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Yc(e,t,n),e=e.sibling;e!==null;)Yc(e,t,n),e=e.sibling}var Qe=null,Ft=!1;function Rn(e,t,n){for(n=n.child;n!==null;)e0(e,t,n),n=n.sibling}function e0(e,t,n){if(en&&typeof en.onCommitFiberUnmount=="function")try{en.onCommitFiberUnmount(_l,n)}catch{}switch(n.tag){case 5:tt||Xr(n,t);case 6:var r=Qe,o=Ft;Qe=null,Rn(e,t,n),Qe=r,Ft=o,Qe!==null&&(Ft?(e=Qe,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Qe.removeChild(n.stateNode));break;case 18:Qe!==null&&(Ft?(e=Qe,n=n.stateNode,e.nodeType===8?Es(e.parentNode,n):e.nodeType===1&&Es(e,n),vi(e)):Es(Qe,n.stateNode));break;case 4:r=Qe,o=Ft,Qe=n.stateNode.containerInfo,Ft=!0,Rn(e,t,n),Qe=r,Ft=o;break;case 0:case 11:case 14:case 15:if(!tt&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){o=r=r.next;do{var i=o,a=i.destroy;i=i.tag,a!==void 0&&(i&2||i&4)&&Wc(n,t,a),o=o.next}while(o!==r)}Rn(e,t,n);break;case 1:if(!tt&&(Xr(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(l){Ae(n,t,l)}Rn(e,t,n);break;case 21:Rn(e,t,n);break;case 22:n.mode&1?(tt=(r=tt)||n.memoizedState!==null,Rn(e,t,n),tt=r):Rn(e,t,n);break;default:Rn(e,t,n)}}function yh(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new T3),t.forEach(function(r){var o=j3.bind(null,e,r);n.has(r)||(n.add(r),r.then(o,o))})}}function jt(e,t){var n=t.deletions;if(n!==null)for(var r=0;ro&&(o=a),r&=~i}if(r=o,r=je()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*N3(r/1960))-r,10e?16:e,jn===null)var r=!1;else{if(e=jn,jn=null,fl=0,le&6)throw Error(M(331));var o=le;for(le|=4,V=e.current;V!==null;){var i=V,a=i.child;if(V.flags&16){var l=i.deletions;if(l!==null){for(var s=0;sje()-bf?hr(e,0):Ef|=n),gt(e,t)}function s0(e,t){t===0&&(e.mode&1?(t=ta,ta<<=1,!(ta&130023424)&&(ta=4194304)):t=1);var n=lt();e=vn(e,t),e!==null&&(Mi(e,t,n),gt(e,n))}function M3(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),s0(e,n)}function j3(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,o=e.memoizedState;o!==null&&(n=o.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(M(314))}r!==null&&r.delete(t),s0(e,n)}var c0;c0=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||vt.current)pt=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return pt=!1,_3(e,t,n);pt=!!(e.flags&131072)}else pt=!1,be&&t.flags&1048576&&dm(t,nl,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Ia(e,t),e=t.pendingProps;var o=uo(t,rt.current);io(t,n),o=mf(null,t,r,e,o,n);var i=gf();return t.flags|=1,typeof o=="object"&&o!==null&&typeof o.render=="function"&&o.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,mt(r)?(i=!0,el(t)):i=!1,t.memoizedState=o.state!==null&&o.state!==void 0?o.state:null,ff(t),o.updater=Nl,t.stateNode=o,o._reactInternals=t,Dc(t,r,e,n),t=Bc(null,t,r,!0,i,n)):(t.tag=0,be&&i&&rf(t),it(null,t,o,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Ia(e,t),e=t.pendingProps,o=r._init,r=o(r._payload),t.type=r,o=t.tag=F3(r),e=Dt(r,e),o){case 0:t=zc(null,t,r,e,n);break e;case 1:t=hh(null,t,r,e,n);break e;case 11:t=fh(null,t,r,e,n);break e;case 14:t=dh(null,t,r,Dt(r.type,e),n);break e}throw Error(M(306,r,""))}return t;case 0:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Dt(r,o),zc(e,t,r,o,n);case 1:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Dt(r,o),hh(e,t,r,o,n);case 3:e:{if(Km(t),e===null)throw Error(M(387));r=t.pendingProps,i=t.memoizedState,o=i.element,mm(e,t),il(t,r,null,n);var a=t.memoizedState;if(r=a.element,i.isDehydrated)if(i={element:r,isDehydrated:!1,cache:a.cache,pendingSuspenseBoundaries:a.pendingSuspenseBoundaries,transitions:a.transitions},t.updateQueue.baseState=i,t.memoizedState=i,t.flags&256){o=vo(Error(M(423)),t),t=ph(e,t,r,n,o);break e}else if(r!==o){o=vo(Error(M(424)),t),t=ph(e,t,r,n,o);break e}else for(Ct=Bn(t.stateNode.containerInfo.firstChild),Et=t,be=!0,Bt=null,n=xm(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(fo(),r===o){t=mn(e,t,n);break e}it(e,t,r,n)}t=t.child}return t;case 5:return Cm(t),e===null&&Lc(t),r=t.type,o=t.pendingProps,i=e!==null?e.memoizedProps:null,a=o.children,Nc(r,o)?a=null:i!==null&&Nc(r,i)&&(t.flags|=32),Wm(e,t),it(e,t,a,n),t.child;case 6:return e===null&&Lc(t),null;case 13:return Gm(e,t,n);case 4:return df(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=ho(t,null,r,n):it(e,t,r,n),t.child;case 11:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Dt(r,o),fh(e,t,r,o,n);case 7:return it(e,t,t.pendingProps,n),t.child;case 8:return it(e,t,t.pendingProps.children,n),t.child;case 12:return it(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,o=t.pendingProps,i=t.memoizedProps,a=o.value,pe(rl,r._currentValue),r._currentValue=a,i!==null)if(Kt(i.value,a)){if(i.children===o.children&&!vt.current){t=mn(e,t,n);break e}}else for(i=t.child,i!==null&&(i.return=t);i!==null;){var l=i.dependencies;if(l!==null){a=i.child;for(var s=l.firstContext;s!==null;){if(s.context===r){if(i.tag===1){s=fn(-1,n&-n),s.tag=2;var c=i.updateQueue;if(c!==null){c=c.shared;var f=c.pending;f===null?s.next=s:(s.next=f.next,f.next=s),c.pending=s}}i.lanes|=n,s=i.alternate,s!==null&&(s.lanes|=n),Mc(i.return,n,t),l.lanes|=n;break}s=s.next}}else if(i.tag===10)a=i.type===t.type?null:i.child;else if(i.tag===18){if(a=i.return,a===null)throw Error(M(341));a.lanes|=n,l=a.alternate,l!==null&&(l.lanes|=n),Mc(a,n,t),a=i.sibling}else a=i.child;if(a!==null)a.return=i;else for(a=i;a!==null;){if(a===t){a=null;break}if(i=a.sibling,i!==null){i.return=a.return,a=i;break}a=a.return}i=a}it(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,r=t.pendingProps.children,io(t,n),o=Ot(o),r=r(o),t.flags|=1,it(e,t,r,n),t.child;case 14:return r=t.type,o=Dt(r,t.pendingProps),o=Dt(r.type,o),dh(e,t,r,o,n);case 15:return Vm(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Dt(r,o),Ia(e,t),t.tag=1,mt(r)?(e=!0,el(t)):e=!1,io(t,n),ym(t,r,o),Dc(t,r,o,n),Bc(null,t,r,!0,e,n);case 19:return Ym(e,t,n);case 22:return Hm(e,t,n)}throw Error(M(156,t.tag))};function u0(e,t){return Mv(e,t)}function D3(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Pt(e,t,n,r){return new D3(e,t,n,r)}function Tf(e){return e=e.prototype,!(!e||!e.isReactComponent)}function F3(e){if(typeof e=="function")return Tf(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Wu)return 11;if(e===Ku)return 14}return 2}function Wn(e,t){var n=e.alternate;return n===null?(n=Pt(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function ja(e,t,n,r,o,i){var a=2;if(r=e,typeof e=="function")Tf(e)&&(a=1);else if(typeof e=="string")a=5;else e:switch(e){case Ur:return pr(n.children,o,i,t);case Hu:a=8,o|=8;break;case sc:return e=Pt(12,n,t,o|2),e.elementType=sc,e.lanes=i,e;case cc:return e=Pt(13,n,t,o),e.elementType=cc,e.lanes=i,e;case uc:return e=Pt(19,n,t,o),e.elementType=uc,e.lanes=i,e;case wv:return Il(n,o,i,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case gv:a=10;break e;case yv:a=9;break e;case Wu:a=11;break e;case Ku:a=14;break e;case An:a=16,r=null;break e}throw Error(M(130,e==null?e:typeof e,""))}return t=Pt(a,n,t,o),t.elementType=e,t.type=r,t.lanes=i,t}function pr(e,t,n,r){return e=Pt(7,e,r,t),e.lanes=n,e}function Il(e,t,n,r){return e=Pt(22,e,r,t),e.elementType=wv,e.lanes=n,e.stateNode={isHidden:!1},e}function Ns(e,t,n){return e=Pt(6,e,null,t),e.lanes=n,e}function Ps(e,t,n){return t=Pt(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function z3(e,t,n,r,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=fs(0),this.expirationTimes=fs(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=fs(0),this.identifierPrefix=r,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function kf(e,t,n,r,o,i,a,l,s){return e=new z3(e,t,n,l,s),t===1?(t=1,i===!0&&(t|=8)):t=0,i=Pt(3,null,null,t),e.current=i,i.stateNode=e,i.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},ff(i),e}function B3(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(p0)}catch(e){console.error(e)}}p0(),dv.exports=St;var So=dv.exports;const v0=Jn(So),K3=Mu({__proto__:null,default:v0},[So]);var m0,$h=So;$h.createRoot,m0=$h.hydrateRoot;/** * @remix-run/router v1.15.1 * * Copyright (c) Remix Software Inc. @@ -46,7 +46,7 @@ Error generating stack: `+i.message+` * LICENSE.md file in the root directory of this source tree. * * @license MIT - */function Oe(){return Oe=Object.assign?Object.assign.bind():function(e){for(var t=1;t"u")throw new Error(t)}function go(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function G3(){return Math.random().toString(36).substr(2,8)}function kh(e,t){return{usr:e.state,key:e.key,idx:t}}function Ti(e,t,n,r){return n===void 0&&(n=null),Oe({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?Cn(t):t,{state:n,key:t&&t.key||r||G3()})}function Cr(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function Cn(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function Q3(e,t,n,r){r===void 0&&(r={});let{window:o=document.defaultView,v5Compat:i=!1}=r,a=o.history,l=Ie.Pop,s=null,c=f();c==null&&(c=0,a.replaceState(Oe({},a.state,{idx:c}),""));function f(){return(a.state||{idx:null}).idx}function u(){l=Ie.Pop;let C=f(),v=C==null?null:C-c;c=C,s&&s({action:l,location:g.location,delta:v})}function d(C,v){l=Ie.Push;let m=Ti(g.location,C,v);n&&n(m,C),c=f()+1;let x=kh(m,c),E=g.createHref(m);try{a.pushState(x,"",E)}catch(_){if(_ instanceof DOMException&&_.name==="DataCloneError")throw _;o.location.assign(E)}i&&s&&s({action:l,location:g.location,delta:1})}function p(C,v){l=Ie.Replace;let m=Ti(g.location,C,v);n&&n(m,C),c=f();let x=kh(m,c),E=g.createHref(m);a.replaceState(x,"",E),i&&s&&s({action:l,location:g.location,delta:0})}function y(C){let v=o.location.origin!=="null"?o.location.origin:o.location.href,m=typeof C=="string"?C:Cr(C);return m=m.replace(/ $/,"%20"),te(v,"No window.location.(origin|href) available to create URL for href: "+m),new URL(m,v)}let g={get action(){return l},get location(){return e(o,a)},listen(C){if(s)throw new Error("A history only accepts one active listener");return o.addEventListener(Th,u),s=C,()=>{o.removeEventListener(Th,u),s=null}},createHref(C){return t(o,C)},createURL:y,encodeLocation(C){let v=y(C);return{pathname:v.pathname,search:v.search,hash:v.hash}},push:d,replace:p,go(C){return a.go(C)}};return g}var Pe;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(Pe||(Pe={}));const Z3=new Set(["lazy","caseSensitive","path","id","index","children"]);function X3(e){return e.index===!0}function qc(e,t,n,r){return n===void 0&&(n=[]),r===void 0&&(r={}),e.map((o,i)=>{let a=[...n,i],l=typeof o.id=="string"?o.id:a.join("-");if(te(o.index!==!0||!o.children,"Cannot specify children on an index route"),te(!r[l],'Found a route id collision on id "'+l+`". Route id's must be globally unique within Data Router usages`),X3(o)){let s=Oe({},o,t(o),{id:l});return r[l]=s,s}else{let s=Oe({},o,t(o),{id:l,children:void 0});return r[l]=s,o.children&&(s.children=qc(o.children,t,a,r)),s}})}function ur(e,t,n){n===void 0&&(n="/");let r=typeof t=="string"?Cn(t):t,o=Sr(r.pathname||"/",n);if(o==null)return null;let i=y0(e);J3(i);let a=null;for(let l=0;a==null&&l{let s={relativePath:l===void 0?i.path||"":l,caseSensitive:i.caseSensitive===!0,childrenIndex:a,route:i};s.relativePath.startsWith("/")&&(te(s.relativePath.startsWith(r),'Absolute route path "'+s.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),s.relativePath=s.relativePath.slice(r.length));let c=dn([r,s.relativePath]),f=n.concat(s);i.children&&i.children.length>0&&(te(i.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+c+'".')),y0(i.children,t,f,c)),!(i.path==null&&!i.index)&&t.push({path:c,score:iw(c,i.index),routesMeta:f})};return e.forEach((i,a)=>{var l;if(i.path===""||!((l=i.path)!=null&&l.includes("?")))o(i,a);else for(let s of w0(i.path))o(i,a,s)}),t}function w0(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,o=n.endsWith("?"),i=n.replace(/\?$/,"");if(r.length===0)return o?[i,""]:[i];let a=w0(r.join("/")),l=[];return l.push(...a.map(s=>s===""?i:[i,s].join("/"))),o&&l.push(...a),l.map(s=>e.startsWith("/")&&s===""?"/":s)}function J3(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:aw(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const q3=/^:[\w-]+$/,ew=3,tw=2,nw=1,rw=10,ow=-2,Rh=e=>e==="*";function iw(e,t){let n=e.split("/"),r=n.length;return n.some(Rh)&&(r+=ow),t&&(r+=tw),n.filter(o=>!Rh(o)).reduce((o,i)=>o+(q3.test(i)?ew:i===""?nw:rw),r)}function aw(e,t){return e.length===t.length&&e.slice(0,-1).every((r,o)=>r===t[o])?e[e.length-1]-t[t.length-1]:0}function lw(e,t){let{routesMeta:n}=e,r={},o="/",i=[];for(let a=0;a{let{paramName:d,isOptional:p}=f;if(d==="*"){let g=l[u]||"";a=i.slice(0,i.length-g.length).replace(/(.)\/+$/,"$1")}const y=l[u];return p&&!y?c[d]=void 0:c[d]=(y||"").replace(/%2F/g,"/"),c},{}),pathname:i,pathnameBase:a,pattern:e}}function sw(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),go(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],o="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(a,l,s)=>(r.push({paramName:l,isOptional:s!=null}),s?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),o+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?o+="\\/*$":e!==""&&e!=="/"&&(o+="(?:(?=\\/|$))"),[new RegExp(o,t?void 0:"i"),r]}function cw(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return go(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function Sr(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}function uw(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:o=""}=typeof e=="string"?Cn(e):e;return{pathname:n?n.startsWith("/")?n:fw(n,t):t,search:hw(r),hash:pw(o)}}function fw(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(o=>{o===".."?n.length>1&&n.pop():o!=="."&&n.push(o)}),n.length>1?n.join("/"):"/"}function As(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in and the router will parse it for you.'}function x0(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function Af(e,t){let n=x0(e);return t?n.map((r,o)=>o===e.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function Of(e,t,n,r){r===void 0&&(r=!1);let o;typeof e=="string"?o=Cn(e):(o=Oe({},e),te(!o.pathname||!o.pathname.includes("?"),As("?","pathname","search",o)),te(!o.pathname||!o.pathname.includes("#"),As("#","pathname","hash",o)),te(!o.search||!o.search.includes("#"),As("#","search","hash",o)));let i=e===""||o.pathname==="",a=i?"/":o.pathname,l;if(a==null)l=n;else{let u=t.length-1;if(!r&&a.startsWith("..")){let d=a.split("/");for(;d[0]==="..";)d.shift(),u-=1;o.pathname=d.join("/")}l=u>=0?t[u]:"/"}let s=uw(o,l),c=a&&a!=="/"&&a.endsWith("/"),f=(i||a===".")&&n.endsWith("/");return!s.pathname.endsWith("/")&&(c||f)&&(s.pathname+="/"),s}const dn=e=>e.join("/").replace(/\/\/+/g,"/"),dw=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),hw=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,pw=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;class If{constructor(t,n,r,o){o===void 0&&(o=!1),this.status=t,this.statusText=n||"",this.internal=o,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}}function C0(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const E0=["post","put","patch","delete"],vw=new Set(E0),mw=["get",...E0],gw=new Set(mw),yw=new Set([301,302,303,307,308]),ww=new Set([307,308]),Os={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},xw={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},zo={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},b0=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Cw=e=>({hasErrorBoundary:!!e.hasErrorBoundary}),_0="remix-router-transitions";function Ew(e){const t=e.window?e.window:typeof window<"u"?window:void 0,n=typeof t<"u"&&typeof t.document<"u"&&typeof t.document.createElement<"u",r=!n;te(e.routes.length>0,"You must provide a non-empty routes array to createRouter");let o;if(e.mapRouteProperties)o=e.mapRouteProperties;else if(e.detectErrorBoundary){let T=e.detectErrorBoundary;o=R=>({hasErrorBoundary:T(R)})}else o=Cw;let i={},a=qc(e.routes,o,void 0,i),l,s=e.basename||"/",c=Oe({v7_fetcherPersist:!1,v7_normalizeFormMethod:!1,v7_partialHydration:!1,v7_prependBasename:!1,v7_relativeSplatPath:!1},e.future),f=null,u=new Set,d=null,p=null,y=null,g=e.hydrationData!=null,C=ur(a,e.history.location,s),v=null;if(C==null){let T=kt(404,{pathname:e.history.location.pathname}),{matches:R,route:A}=jh(a);C=R,v={[A.id]:T}}let m,x=C.some(T=>T.route.lazy),E=C.some(T=>T.route.loader);if(x)m=!1;else if(!E)m=!0;else if(c.v7_partialHydration){let T=e.hydrationData?e.hydrationData.loaderData:null,R=e.hydrationData?e.hydrationData.errors:null;m=C.every(A=>A.route.loader&&A.route.loader.hydrate!==!0&&(T&&T[A.route.id]!==void 0||R&&R[A.route.id]!==void 0))}else m=e.hydrationData!=null;let _,b={historyAction:e.history.action,location:e.history.location,matches:C,initialized:m,navigation:Os,restoreScrollPosition:e.hydrationData!=null?!1:null,preventScrollReset:!1,revalidation:"idle",loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||v,fetchers:new Map,blockers:new Map},S=Ie.Pop,$=!1,k,P=!1,j=new Map,L=null,D=!1,N=!1,z=[],H=[],B=new Map,O=0,F=-1,W=new Map,J=new Set,se=new Map,Ue=new Map,ge=new Set,Ne=new Map,ye=new Map,Ve=!1;function we(){if(f=e.history.listen(T=>{let{action:R,location:A,delta:U}=T;if(Ve){Ve=!1;return}go(ye.size===0||U!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let K=vd({currentLocation:b.location,nextLocation:A,historyAction:R});if(K&&U!=null){Ve=!0,e.history.go(U*-1),Yi(K,{state:"blocked",location:A,proceed(){Yi(K,{state:"proceeding",proceed:void 0,reset:void 0,location:A}),e.history.go(U)},reset(){let re=new Map(b.blockers);re.set(K,zo),Se({blockers:re})}});return}return yt(R,A)}),n){Ow(t,j);let T=()=>Iw(t,j);t.addEventListener("pagehide",T),L=()=>t.removeEventListener("pagehide",T)}return b.initialized||yt(Ie.Pop,b.location,{initialHydration:!0}),_}function _e(){f&&f(),L&&L(),u.clear(),k&&k.abort(),b.fetchers.forEach((T,R)=>Ki(R)),b.blockers.forEach((T,R)=>pd(R))}function Mt(T){return u.add(T),()=>u.delete(T)}function Se(T,R){R===void 0&&(R={}),b=Oe({},b,T);let A=[],U=[];c.v7_fetcherPersist&&b.fetchers.forEach((K,re)=>{K.state==="idle"&&(ge.has(re)?U.push(re):A.push(re))}),[...u].forEach(K=>K(b,{deletedFetchers:U,unstable_viewTransitionOpts:R.viewTransitionOpts,unstable_flushSync:R.flushSync===!0})),c.v7_fetcherPersist&&(A.forEach(K=>b.fetchers.delete(K)),U.forEach(K=>Ki(K)))}function ft(T,R,A){var U,K;let{flushSync:re}=A===void 0?{}:A,X=b.actionData!=null&&b.navigation.formMethod!=null&&zt(b.navigation.formMethod)&&b.navigation.state==="loading"&&((U=T.state)==null?void 0:U._isRedirect)!==!0,Z;R.actionData?Object.keys(R.actionData).length>0?Z=R.actionData:Z=null:X?Z=b.actionData:Z=null;let G=R.loaderData?Mh(b.loaderData,R.loaderData,R.matches||[],R.errors):b.loaderData,ie=b.blockers;ie.size>0&&(ie=new Map(ie),ie.forEach((de,Ge)=>ie.set(Ge,zo)));let He=$===!0||b.navigation.formMethod!=null&&zt(b.navigation.formMethod)&&((K=T.state)==null?void 0:K._isRedirect)!==!0;l&&(a=l,l=void 0),D||S===Ie.Pop||(S===Ie.Push?e.history.push(T,T.state):S===Ie.Replace&&e.history.replace(T,T.state));let ee;if(S===Ie.Pop){let de=j.get(b.location.pathname);de&&de.has(T.pathname)?ee={currentLocation:b.location,nextLocation:T}:j.has(T.pathname)&&(ee={currentLocation:T,nextLocation:b.location})}else if(P){let de=j.get(b.location.pathname);de?de.add(T.pathname):(de=new Set([T.pathname]),j.set(b.location.pathname,de)),ee={currentLocation:b.location,nextLocation:T}}Se(Oe({},R,{actionData:Z,loaderData:G,historyAction:S,location:T,initialized:!0,navigation:Os,revalidation:"idle",restoreScrollPosition:gd(T,R.matches||b.matches),preventScrollReset:He,blockers:ie}),{viewTransitionOpts:ee,flushSync:re===!0}),S=Ie.Pop,$=!1,P=!1,D=!1,N=!1,z=[],H=[]}async function Hi(T,R){if(typeof T=="number"){e.history.go(T);return}let A=eu(b.location,b.matches,s,c.v7_prependBasename,T,c.v7_relativeSplatPath,R==null?void 0:R.fromRouteId,R==null?void 0:R.relative),{path:U,submission:K,error:re}=Nh(c.v7_normalizeFormMethod,!1,A,R),X=b.location,Z=Ti(b.location,U,R&&R.state);Z=Oe({},Z,e.history.encodeLocation(Z));let G=R&&R.replace!=null?R.replace:void 0,ie=Ie.Push;G===!0?ie=Ie.Replace:G===!1||K!=null&&zt(K.formMethod)&&K.formAction===b.location.pathname+b.location.search&&(ie=Ie.Replace);let He=R&&"preventScrollReset"in R?R.preventScrollReset===!0:void 0,ee=(R&&R.unstable_flushSync)===!0,de=vd({currentLocation:X,nextLocation:Z,historyAction:ie});if(de){Yi(de,{state:"blocked",location:Z,proceed(){Yi(de,{state:"proceeding",proceed:void 0,reset:void 0,location:Z}),Hi(T,R)},reset(){let Ge=new Map(b.blockers);Ge.set(de,zo),Se({blockers:Ge})}});return}return await yt(ie,Z,{submission:K,pendingError:re,preventScrollReset:He,replace:R&&R.replace,enableViewTransition:R&&R.unstable_viewTransition,flushSync:ee})}function Ql(){if(es(),Se({revalidation:"loading"}),b.navigation.state!=="submitting"){if(b.navigation.state==="idle"){yt(b.historyAction,b.location,{startUninterruptedRevalidation:!0});return}yt(S||b.historyAction,b.navigation.location,{overrideNavigation:b.navigation})}}async function yt(T,R,A){k&&k.abort(),k=null,S=T,D=(A&&A.startUninterruptedRevalidation)===!0,my(b.location,b.matches),$=(A&&A.preventScrollReset)===!0,P=(A&&A.enableViewTransition)===!0;let U=l||a,K=A&&A.overrideNavigation,re=ur(U,R,s),X=(A&&A.flushSync)===!0;if(!re){let Ge=kt(404,{pathname:R.pathname}),{matches:Tt,route:We}=jh(U);ts(),ft(R,{matches:Tt,loaderData:{},errors:{[We.id]:Ge}},{flushSync:X});return}if(b.initialized&&!N&&Tw(b.location,R)&&!(A&&A.submission&&zt(A.submission.formMethod))){ft(R,{matches:re},{flushSync:X});return}k=new AbortController;let Z=Uo(e.history,R,k.signal,A&&A.submission),G,ie;if(A&&A.pendingError)ie={[ci(re).route.id]:A.pendingError};else if(A&&A.submission&&zt(A.submission.formMethod)){let Ge=await Wi(Z,R,A.submission,re,{replace:A.replace,flushSync:X});if(Ge.shortCircuited)return;G=Ge.pendingActionData,ie=Ge.pendingActionError,K=Is(R,A.submission),X=!1,Z=new Request(Z.url,{signal:Z.signal})}let{shortCircuited:He,loaderData:ee,errors:de}=await Zl(Z,R,re,K,A&&A.submission,A&&A.fetcherSubmission,A&&A.replace,A&&A.initialHydration===!0,X,G,ie);He||(k=null,ft(R,Oe({matches:re},G?{actionData:G}:{},{loaderData:ee,errors:de})))}async function Wi(T,R,A,U,K){K===void 0&&(K={}),es();let re=Pw(R,A);Se({navigation:re},{flushSync:K.flushSync===!0});let X,Z=nu(U,R);if(!Z.route.action&&!Z.route.lazy)X={type:Pe.error,error:kt(405,{method:T.method,pathname:R.pathname,routeId:Z.route.id})};else if(X=await Bo("action",T,Z,U,i,o,s,c.v7_relativeSplatPath),T.signal.aborted)return{shortCircuited:!0};if(dr(X)){let G;return K&&K.replace!=null?G=K.replace:G=X.location===b.location.pathname+b.location.search,await Gt(b,X,{submission:A,replace:G}),{shortCircuited:!0}}if(qr(X)){let G=ci(U,Z.route.id);return(K&&K.replace)!==!0&&(S=Ie.Push),{pendingActionData:{},pendingActionError:{[G.route.id]:X.error}}}if(fr(X))throw kt(400,{type:"defer-action"});return{pendingActionData:{[Z.route.id]:X.data}}}async function Zl(T,R,A,U,K,re,X,Z,G,ie,He){let ee=U||Is(R,K),de=K||re||zh(ee),Ge=l||a,[Tt,We]=Ph(e.history,b,A,de,R,c.v7_partialHydration&&Z===!0,N,z,H,ge,se,J,Ge,s,ie,He);if(ts(fe=>!(A&&A.some(xe=>xe.route.id===fe))||Tt&&Tt.some(xe=>xe.route.id===fe)),F=++O,Tt.length===0&&We.length===0){let fe=dd();return ft(R,Oe({matches:A,loaderData:{},errors:He||null},ie?{actionData:ie}:{},fe?{fetchers:new Map(b.fetchers)}:{}),{flushSync:G}),{shortCircuited:!0}}if(!D&&(!c.v7_partialHydration||!Z)){We.forEach(xe=>{let Qt=b.fetchers.get(xe.key),Qi=Vo(void 0,Qt?Qt.data:void 0);b.fetchers.set(xe.key,Qi)});let fe=ie||b.actionData;Se(Oe({navigation:ee},fe?Object.keys(fe).length===0?{actionData:null}:{actionData:fe}:{},We.length>0?{fetchers:new Map(b.fetchers)}:{}),{flushSync:G})}We.forEach(fe=>{B.has(fe.key)&&Tn(fe.key),fe.controller&&B.set(fe.key,fe.controller)});let Ar=()=>We.forEach(fe=>Tn(fe.key));k&&k.signal.addEventListener("abort",Ar);let{results:ns,loaderResults:Or,fetcherResults:kn}=await cd(b.matches,A,Tt,We,T);if(T.signal.aborted)return{shortCircuited:!0};k&&k.signal.removeEventListener("abort",Ar),We.forEach(fe=>B.delete(fe.key));let or=Dh(ns);if(or){if(or.idx>=Tt.length){let fe=We[or.idx-Tt.length].key;J.add(fe)}return await Gt(b,or.result,{replace:X}),{shortCircuited:!0}}let{loaderData:rs,errors:os}=Lh(b,A,Tt,Or,He,We,kn,Ne);Ne.forEach((fe,xe)=>{fe.subscribe(Qt=>{(Qt||fe.done)&&Ne.delete(xe)})});let is=dd(),Ir=hd(F),Gi=is||Ir||We.length>0;return Oe({loaderData:rs,errors:os},Gi?{fetchers:new Map(b.fetchers)}:{})}function Xl(T,R,A,U){if(r)throw new Error("router.fetch() was called during the server render, but it shouldn't be. You are likely calling a useFetcher() method in the body of your component. Try moving it to a useEffect or a callback.");B.has(T)&&Tn(T);let K=(U&&U.unstable_flushSync)===!0,re=l||a,X=eu(b.location,b.matches,s,c.v7_prependBasename,A,c.v7_relativeSplatPath,R,U==null?void 0:U.relative),Z=ur(re,X,s);if(!Z){Po(T,R,kt(404,{pathname:X}),{flushSync:K});return}let{path:G,submission:ie,error:He}=Nh(c.v7_normalizeFormMethod,!0,X,U);if(He){Po(T,R,He,{flushSync:K});return}let ee=nu(Z,G);if($=(U&&U.preventScrollReset)===!0,ie&&zt(ie.formMethod)){Jl(T,R,G,ee,Z,K,ie);return}se.set(T,{routeId:R,path:G}),ql(T,R,G,ee,Z,K,ie)}async function Jl(T,R,A,U,K,re,X){if(es(),se.delete(T),!U.route.action&&!U.route.lazy){let xe=kt(405,{method:X.formMethod,pathname:A,routeId:R});Po(T,R,xe,{flushSync:re});return}let Z=b.fetchers.get(T);$n(T,Aw(X,Z),{flushSync:re});let G=new AbortController,ie=Uo(e.history,A,G.signal,X);B.set(T,G);let He=O,ee=await Bo("action",ie,U,K,i,o,s,c.v7_relativeSplatPath);if(ie.signal.aborted){B.get(T)===G&&B.delete(T);return}if(c.v7_fetcherPersist&&ge.has(T)){if(dr(ee)||qr(ee)){$n(T,Nn(void 0));return}}else{if(dr(ee))if(B.delete(T),F>He){$n(T,Nn(void 0));return}else return J.add(T),$n(T,Vo(X)),Gt(b,ee,{fetcherSubmission:X});if(qr(ee)){Po(T,R,ee.error);return}}if(fr(ee))throw kt(400,{type:"defer-action"});let de=b.navigation.location||b.location,Ge=Uo(e.history,de,G.signal),Tt=l||a,We=b.navigation.state!=="idle"?ur(Tt,b.navigation.location,s):b.matches;te(We,"Didn't find any matches after fetcher action");let Ar=++O;W.set(T,Ar);let ns=Vo(X,ee.data);b.fetchers.set(T,ns);let[Or,kn]=Ph(e.history,b,We,X,de,!1,N,z,H,ge,se,J,Tt,s,{[U.route.id]:ee.data},void 0);kn.filter(xe=>xe.key!==T).forEach(xe=>{let Qt=xe.key,Qi=b.fetchers.get(Qt),yy=Vo(void 0,Qi?Qi.data:void 0);b.fetchers.set(Qt,yy),B.has(Qt)&&Tn(Qt),xe.controller&&B.set(Qt,xe.controller)}),Se({fetchers:new Map(b.fetchers)});let or=()=>kn.forEach(xe=>Tn(xe.key));G.signal.addEventListener("abort",or);let{results:rs,loaderResults:os,fetcherResults:is}=await cd(b.matches,We,Or,kn,Ge);if(G.signal.aborted)return;G.signal.removeEventListener("abort",or),W.delete(T),B.delete(T),kn.forEach(xe=>B.delete(xe.key));let Ir=Dh(rs);if(Ir){if(Ir.idx>=Or.length){let xe=kn[Ir.idx-Or.length].key;J.add(xe)}return Gt(b,Ir.result)}let{loaderData:Gi,errors:fe}=Lh(b,b.matches,Or,os,void 0,kn,is,Ne);if(b.fetchers.has(T)){let xe=Nn(ee.data);b.fetchers.set(T,xe)}hd(Ar),b.navigation.state==="loading"&&Ar>F?(te(S,"Expected pending action"),k&&k.abort(),ft(b.navigation.location,{matches:We,loaderData:Gi,errors:fe,fetchers:new Map(b.fetchers)})):(Se({errors:fe,loaderData:Mh(b.loaderData,Gi,We,fe),fetchers:new Map(b.fetchers)}),N=!1)}async function ql(T,R,A,U,K,re,X){let Z=b.fetchers.get(T);$n(T,Vo(X,Z?Z.data:void 0),{flushSync:re});let G=new AbortController,ie=Uo(e.history,A,G.signal);B.set(T,G);let He=O,ee=await Bo("loader",ie,U,K,i,o,s,c.v7_relativeSplatPath);if(fr(ee)&&(ee=await T0(ee,ie.signal,!0)||ee),B.get(T)===G&&B.delete(T),!ie.signal.aborted){if(ge.has(T)){$n(T,Nn(void 0));return}if(dr(ee))if(F>He){$n(T,Nn(void 0));return}else{J.add(T),await Gt(b,ee);return}if(qr(ee)){Po(T,R,ee.error);return}te(!fr(ee),"Unhandled fetcher deferred data"),$n(T,Nn(ee.data))}}async function Gt(T,R,A){let{submission:U,fetcherSubmission:K,replace:re}=A===void 0?{}:A;R.revalidate&&(N=!0);let X=Ti(T.location,R.location,{_isRedirect:!0});if(te(X,"Expected a location on the redirect navigation"),n){let de=!1;if(R.reloadDocument)de=!0;else if(b0.test(R.location)){const Ge=e.history.createURL(R.location);de=Ge.origin!==t.location.origin||Sr(Ge.pathname,s)==null}if(de){re?t.location.replace(R.location):t.location.assign(R.location);return}}k=null;let Z=re===!0?Ie.Replace:Ie.Push,{formMethod:G,formAction:ie,formEncType:He}=T.navigation;!U&&!K&&G&&ie&&He&&(U=zh(T.navigation));let ee=U||K;if(ww.has(R.status)&&ee&&zt(ee.formMethod))await yt(Z,X,{submission:Oe({},ee,{formAction:R.location}),preventScrollReset:$});else{let de=Is(X,U);await yt(Z,X,{overrideNavigation:de,fetcherSubmission:K,preventScrollReset:$})}}async function cd(T,R,A,U,K){let re=await Promise.all([...A.map(G=>Bo("loader",K,G,R,i,o,s,c.v7_relativeSplatPath)),...U.map(G=>G.matches&&G.match&&G.controller?Bo("loader",Uo(e.history,G.path,G.controller.signal),G.match,G.matches,i,o,s,c.v7_relativeSplatPath):{type:Pe.error,error:kt(404,{pathname:G.path})})]),X=re.slice(0,A.length),Z=re.slice(A.length);return await Promise.all([Fh(T,A,X,X.map(()=>K.signal),!1,b.loaderData),Fh(T,U.map(G=>G.match),Z,U.map(G=>G.controller?G.controller.signal:null),!0)]),{results:re,loaderResults:X,fetcherResults:Z}}function es(){N=!0,z.push(...ts()),se.forEach((T,R)=>{B.has(R)&&(H.push(R),Tn(R))})}function $n(T,R,A){A===void 0&&(A={}),b.fetchers.set(T,R),Se({fetchers:new Map(b.fetchers)},{flushSync:(A&&A.flushSync)===!0})}function Po(T,R,A,U){U===void 0&&(U={});let K=ci(b.matches,R);Ki(T),Se({errors:{[K.route.id]:A},fetchers:new Map(b.fetchers)},{flushSync:(U&&U.flushSync)===!0})}function ud(T){return c.v7_fetcherPersist&&(Ue.set(T,(Ue.get(T)||0)+1),ge.has(T)&&ge.delete(T)),b.fetchers.get(T)||xw}function Ki(T){let R=b.fetchers.get(T);B.has(T)&&!(R&&R.state==="loading"&&W.has(T))&&Tn(T),se.delete(T),W.delete(T),J.delete(T),ge.delete(T),b.fetchers.delete(T)}function hy(T){if(c.v7_fetcherPersist){let R=(Ue.get(T)||0)-1;R<=0?(Ue.delete(T),ge.add(T)):Ue.set(T,R)}else Ki(T);Se({fetchers:new Map(b.fetchers)})}function Tn(T){let R=B.get(T);te(R,"Expected fetch controller: "+T),R.abort(),B.delete(T)}function fd(T){for(let R of T){let A=ud(R),U=Nn(A.data);b.fetchers.set(R,U)}}function dd(){let T=[],R=!1;for(let A of J){let U=b.fetchers.get(A);te(U,"Expected fetcher: "+A),U.state==="loading"&&(J.delete(A),T.push(A),R=!0)}return fd(T),R}function hd(T){let R=[];for(let[A,U]of W)if(U0}function py(T,R){let A=b.blockers.get(T)||zo;return ye.get(T)!==R&&ye.set(T,R),A}function pd(T){b.blockers.delete(T),ye.delete(T)}function Yi(T,R){let A=b.blockers.get(T)||zo;te(A.state==="unblocked"&&R.state==="blocked"||A.state==="blocked"&&R.state==="blocked"||A.state==="blocked"&&R.state==="proceeding"||A.state==="blocked"&&R.state==="unblocked"||A.state==="proceeding"&&R.state==="unblocked","Invalid blocker state transition: "+A.state+" -> "+R.state);let U=new Map(b.blockers);U.set(T,R),Se({blockers:U})}function vd(T){let{currentLocation:R,nextLocation:A,historyAction:U}=T;if(ye.size===0)return;ye.size>1&&go(!1,"A router only supports one blocker at a time");let K=Array.from(ye.entries()),[re,X]=K[K.length-1],Z=b.blockers.get(re);if(!(Z&&Z.state==="proceeding")&&X({currentLocation:R,nextLocation:A,historyAction:U}))return re}function ts(T){let R=[];return Ne.forEach((A,U)=>{(!T||T(U))&&(A.cancel(),R.push(U),Ne.delete(U))}),R}function vy(T,R,A){if(d=T,y=R,p=A||null,!g&&b.navigation===Os){g=!0;let U=gd(b.location,b.matches);U!=null&&Se({restoreScrollPosition:U})}return()=>{d=null,y=null,p=null}}function md(T,R){return p&&p(T,R.map(U=>g0(U,b.loaderData)))||T.key}function my(T,R){if(d&&y){let A=md(T,R);d[A]=y()}}function gd(T,R){if(d){let A=md(T,R),U=d[A];if(typeof U=="number")return U}return null}function gy(T){i={},l=qc(T,o,void 0,i)}return _={get basename(){return s},get future(){return c},get state(){return b},get routes(){return a},get window(){return t},initialize:we,subscribe:Mt,enableScrollRestoration:vy,navigate:Hi,fetch:Xl,revalidate:Ql,createHref:T=>e.history.createHref(T),encodeLocation:T=>e.history.encodeLocation(T),getFetcher:ud,deleteFetcher:hy,dispose:_e,getBlocker:py,deleteBlocker:pd,_internalFetchControllers:B,_internalActiveDeferreds:Ne,_internalSetRoutes:gy},_}function bw(e){return e!=null&&("formData"in e&&e.formData!=null||"body"in e&&e.body!==void 0)}function eu(e,t,n,r,o,i,a,l){let s,c;if(a){s=[];for(let u of t)if(s.push(u),u.route.id===a){c=u;break}}else s=t,c=t[t.length-1];let f=Of(o||".",Af(s,i),Sr(e.pathname,n)||e.pathname,l==="path");return o==null&&(f.search=e.search,f.hash=e.hash),(o==null||o===""||o===".")&&c&&c.route.index&&!Lf(f.search)&&(f.search=f.search?f.search.replace(/^\?/,"?index&"):"?index"),r&&n!=="/"&&(f.pathname=f.pathname==="/"?n:dn([n,f.pathname])),Cr(f)}function Nh(e,t,n,r){if(!r||!bw(r))return{path:n};if(r.formMethod&&!Nw(r.formMethod))return{path:n,error:kt(405,{method:r.formMethod})};let o=()=>({path:n,error:kt(400,{type:"invalid-body"})}),i=r.formMethod||"get",a=e?i.toUpperCase():i.toLowerCase(),l=$0(n);if(r.body!==void 0){if(r.formEncType==="text/plain"){if(!zt(a))return o();let d=typeof r.body=="string"?r.body:r.body instanceof FormData||r.body instanceof URLSearchParams?Array.from(r.body.entries()).reduce((p,y)=>{let[g,C]=y;return""+p+g+"="+C+` + */function Oe(){return Oe=Object.assign?Object.assign.bind():function(e){for(var t=1;t"u")throw new Error(t)}function go(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function Y3(){return Math.random().toString(36).substr(2,8)}function kh(e,t){return{usr:e.state,key:e.key,idx:t}}function Ti(e,t,n,r){return n===void 0&&(n=null),Oe({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?Cn(t):t,{state:n,key:t&&t.key||r||Y3()})}function Cr(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function Cn(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function Q3(e,t,n,r){r===void 0&&(r={});let{window:o=document.defaultView,v5Compat:i=!1}=r,a=o.history,l=Le.Pop,s=null,c=f();c==null&&(c=0,a.replaceState(Oe({},a.state,{idx:c}),""));function f(){return(a.state||{idx:null}).idx}function u(){l=Le.Pop;let C=f(),v=C==null?null:C-c;c=C,s&&s({action:l,location:g.location,delta:v})}function d(C,v){l=Le.Push;let m=Ti(g.location,C,v);n&&n(m,C),c=f()+1;let x=kh(m,c),E=g.createHref(m);try{a.pushState(x,"",E)}catch(_){if(_ instanceof DOMException&&_.name==="DataCloneError")throw _;o.location.assign(E)}i&&s&&s({action:l,location:g.location,delta:1})}function p(C,v){l=Le.Replace;let m=Ti(g.location,C,v);n&&n(m,C),c=f();let x=kh(m,c),E=g.createHref(m);a.replaceState(x,"",E),i&&s&&s({action:l,location:g.location,delta:0})}function y(C){let v=o.location.origin!=="null"?o.location.origin:o.location.href,m=typeof C=="string"?C:Cr(C);return m=m.replace(/ $/,"%20"),te(v,"No window.location.(origin|href) available to create URL for href: "+m),new URL(m,v)}let g={get action(){return l},get location(){return e(o,a)},listen(C){if(s)throw new Error("A history only accepts one active listener");return o.addEventListener(Th,u),s=C,()=>{o.removeEventListener(Th,u),s=null}},createHref(C){return t(o,C)},createURL:y,encodeLocation(C){let v=y(C);return{pathname:v.pathname,search:v.search,hash:v.hash}},push:d,replace:p,go(C){return a.go(C)}};return g}var Pe;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(Pe||(Pe={}));const Z3=new Set(["lazy","caseSensitive","path","id","index","children"]);function X3(e){return e.index===!0}function qc(e,t,n,r){return n===void 0&&(n=[]),r===void 0&&(r={}),e.map((o,i)=>{let a=[...n,i],l=typeof o.id=="string"?o.id:a.join("-");if(te(o.index!==!0||!o.children,"Cannot specify children on an index route"),te(!r[l],'Found a route id collision on id "'+l+`". Route id's must be globally unique within Data Router usages`),X3(o)){let s=Oe({},o,t(o),{id:l});return r[l]=s,s}else{let s=Oe({},o,t(o),{id:l,children:void 0});return r[l]=s,o.children&&(s.children=qc(o.children,t,a,r)),s}})}function ur(e,t,n){n===void 0&&(n="/");let r=typeof t=="string"?Cn(t):t,o=Sr(r.pathname||"/",n);if(o==null)return null;let i=y0(e);J3(i);let a=null;for(let l=0;a==null&&l{let s={relativePath:l===void 0?i.path||"":l,caseSensitive:i.caseSensitive===!0,childrenIndex:a,route:i};s.relativePath.startsWith("/")&&(te(s.relativePath.startsWith(r),'Absolute route path "'+s.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),s.relativePath=s.relativePath.slice(r.length));let c=dn([r,s.relativePath]),f=n.concat(s);i.children&&i.children.length>0&&(te(i.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+c+'".')),y0(i.children,t,f,c)),!(i.path==null&&!i.index)&&t.push({path:c,score:iw(c,i.index),routesMeta:f})};return e.forEach((i,a)=>{var l;if(i.path===""||!((l=i.path)!=null&&l.includes("?")))o(i,a);else for(let s of w0(i.path))o(i,a,s)}),t}function w0(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,o=n.endsWith("?"),i=n.replace(/\?$/,"");if(r.length===0)return o?[i,""]:[i];let a=w0(r.join("/")),l=[];return l.push(...a.map(s=>s===""?i:[i,s].join("/"))),o&&l.push(...a),l.map(s=>e.startsWith("/")&&s===""?"/":s)}function J3(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:aw(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const q3=/^:[\w-]+$/,ew=3,tw=2,nw=1,rw=10,ow=-2,Rh=e=>e==="*";function iw(e,t){let n=e.split("/"),r=n.length;return n.some(Rh)&&(r+=ow),t&&(r+=tw),n.filter(o=>!Rh(o)).reduce((o,i)=>o+(q3.test(i)?ew:i===""?nw:rw),r)}function aw(e,t){return e.length===t.length&&e.slice(0,-1).every((r,o)=>r===t[o])?e[e.length-1]-t[t.length-1]:0}function lw(e,t){let{routesMeta:n}=e,r={},o="/",i=[];for(let a=0;a{let{paramName:d,isOptional:p}=f;if(d==="*"){let g=l[u]||"";a=i.slice(0,i.length-g.length).replace(/(.)\/+$/,"$1")}const y=l[u];return p&&!y?c[d]=void 0:c[d]=(y||"").replace(/%2F/g,"/"),c},{}),pathname:i,pathnameBase:a,pattern:e}}function sw(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),go(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],o="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(a,l,s)=>(r.push({paramName:l,isOptional:s!=null}),s?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),o+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?o+="\\/*$":e!==""&&e!=="/"&&(o+="(?:(?=\\/|$))"),[new RegExp(o,t?void 0:"i"),r]}function cw(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return go(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function Sr(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}function uw(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:o=""}=typeof e=="string"?Cn(e):e;return{pathname:n?n.startsWith("/")?n:fw(n,t):t,search:hw(r),hash:pw(o)}}function fw(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(o=>{o===".."?n.length>1&&n.pop():o!=="."&&n.push(o)}),n.length>1?n.join("/"):"/"}function As(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in and the router will parse it for you.'}function x0(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function Af(e,t){let n=x0(e);return t?n.map((r,o)=>o===e.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function Of(e,t,n,r){r===void 0&&(r=!1);let o;typeof e=="string"?o=Cn(e):(o=Oe({},e),te(!o.pathname||!o.pathname.includes("?"),As("?","pathname","search",o)),te(!o.pathname||!o.pathname.includes("#"),As("#","pathname","hash",o)),te(!o.search||!o.search.includes("#"),As("#","search","hash",o)));let i=e===""||o.pathname==="",a=i?"/":o.pathname,l;if(a==null)l=n;else{let u=t.length-1;if(!r&&a.startsWith("..")){let d=a.split("/");for(;d[0]==="..";)d.shift(),u-=1;o.pathname=d.join("/")}l=u>=0?t[u]:"/"}let s=uw(o,l),c=a&&a!=="/"&&a.endsWith("/"),f=(i||a===".")&&n.endsWith("/");return!s.pathname.endsWith("/")&&(c||f)&&(s.pathname+="/"),s}const dn=e=>e.join("/").replace(/\/\/+/g,"/"),dw=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),hw=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,pw=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;class If{constructor(t,n,r,o){o===void 0&&(o=!1),this.status=t,this.statusText=n||"",this.internal=o,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}}function C0(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const E0=["post","put","patch","delete"],vw=new Set(E0),mw=["get",...E0],gw=new Set(mw),yw=new Set([301,302,303,307,308]),ww=new Set([307,308]),Os={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},xw={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},zo={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},b0=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Cw=e=>({hasErrorBoundary:!!e.hasErrorBoundary}),_0="remix-router-transitions";function Ew(e){const t=e.window?e.window:typeof window<"u"?window:void 0,n=typeof t<"u"&&typeof t.document<"u"&&typeof t.document.createElement<"u",r=!n;te(e.routes.length>0,"You must provide a non-empty routes array to createRouter");let o;if(e.mapRouteProperties)o=e.mapRouteProperties;else if(e.detectErrorBoundary){let T=e.detectErrorBoundary;o=R=>({hasErrorBoundary:T(R)})}else o=Cw;let i={},a=qc(e.routes,o,void 0,i),l,s=e.basename||"/",c=Oe({v7_fetcherPersist:!1,v7_normalizeFormMethod:!1,v7_partialHydration:!1,v7_prependBasename:!1,v7_relativeSplatPath:!1},e.future),f=null,u=new Set,d=null,p=null,y=null,g=e.hydrationData!=null,C=ur(a,e.history.location,s),v=null;if(C==null){let T=kt(404,{pathname:e.history.location.pathname}),{matches:R,route:A}=jh(a);C=R,v={[A.id]:T}}let m,x=C.some(T=>T.route.lazy),E=C.some(T=>T.route.loader);if(x)m=!1;else if(!E)m=!0;else if(c.v7_partialHydration){let T=e.hydrationData?e.hydrationData.loaderData:null,R=e.hydrationData?e.hydrationData.errors:null;m=C.every(A=>A.route.loader&&A.route.loader.hydrate!==!0&&(T&&T[A.route.id]!==void 0||R&&R[A.route.id]!==void 0))}else m=e.hydrationData!=null;let _,b={historyAction:e.history.action,location:e.history.location,matches:C,initialized:m,navigation:Os,restoreScrollPosition:e.hydrationData!=null?!1:null,preventScrollReset:!1,revalidation:"idle",loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||v,fetchers:new Map,blockers:new Map},S=Le.Pop,$=!1,k,P=!1,j=new Map,L=null,D=!1,N=!1,z=[],H=[],B=new Map,O=0,F=-1,W=new Map,J=new Set,se=new Map,Ue=new Map,ge=new Set,Ne=new Map,ye=new Map,Ve=!1;function we(){if(f=e.history.listen(T=>{let{action:R,location:A,delta:U}=T;if(Ve){Ve=!1;return}go(ye.size===0||U!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let K=vd({currentLocation:b.location,nextLocation:A,historyAction:R});if(K&&U!=null){Ve=!0,e.history.go(U*-1),Gi(K,{state:"blocked",location:A,proceed(){Gi(K,{state:"proceeding",proceed:void 0,reset:void 0,location:A}),e.history.go(U)},reset(){let re=new Map(b.blockers);re.set(K,zo),Se({blockers:re})}});return}return yt(R,A)}),n){Ow(t,j);let T=()=>Iw(t,j);t.addEventListener("pagehide",T),L=()=>t.removeEventListener("pagehide",T)}return b.initialized||yt(Le.Pop,b.location,{initialHydration:!0}),_}function _e(){f&&f(),L&&L(),u.clear(),k&&k.abort(),b.fetchers.forEach((T,R)=>Ki(R)),b.blockers.forEach((T,R)=>pd(R))}function Mt(T){return u.add(T),()=>u.delete(T)}function Se(T,R){R===void 0&&(R={}),b=Oe({},b,T);let A=[],U=[];c.v7_fetcherPersist&&b.fetchers.forEach((K,re)=>{K.state==="idle"&&(ge.has(re)?U.push(re):A.push(re))}),[...u].forEach(K=>K(b,{deletedFetchers:U,unstable_viewTransitionOpts:R.viewTransitionOpts,unstable_flushSync:R.flushSync===!0})),c.v7_fetcherPersist&&(A.forEach(K=>b.fetchers.delete(K)),U.forEach(K=>Ki(K)))}function ft(T,R,A){var U,K;let{flushSync:re}=A===void 0?{}:A,X=b.actionData!=null&&b.navigation.formMethod!=null&&zt(b.navigation.formMethod)&&b.navigation.state==="loading"&&((U=T.state)==null?void 0:U._isRedirect)!==!0,Z;R.actionData?Object.keys(R.actionData).length>0?Z=R.actionData:Z=null:X?Z=b.actionData:Z=null;let Y=R.loaderData?Mh(b.loaderData,R.loaderData,R.matches||[],R.errors):b.loaderData,ie=b.blockers;ie.size>0&&(ie=new Map(ie),ie.forEach((de,Ye)=>ie.set(Ye,zo)));let He=$===!0||b.navigation.formMethod!=null&&zt(b.navigation.formMethod)&&((K=T.state)==null?void 0:K._isRedirect)!==!0;l&&(a=l,l=void 0),D||S===Le.Pop||(S===Le.Push?e.history.push(T,T.state):S===Le.Replace&&e.history.replace(T,T.state));let ee;if(S===Le.Pop){let de=j.get(b.location.pathname);de&&de.has(T.pathname)?ee={currentLocation:b.location,nextLocation:T}:j.has(T.pathname)&&(ee={currentLocation:T,nextLocation:b.location})}else if(P){let de=j.get(b.location.pathname);de?de.add(T.pathname):(de=new Set([T.pathname]),j.set(b.location.pathname,de)),ee={currentLocation:b.location,nextLocation:T}}Se(Oe({},R,{actionData:Z,loaderData:Y,historyAction:S,location:T,initialized:!0,navigation:Os,revalidation:"idle",restoreScrollPosition:gd(T,R.matches||b.matches),preventScrollReset:He,blockers:ie}),{viewTransitionOpts:ee,flushSync:re===!0}),S=Le.Pop,$=!1,P=!1,D=!1,N=!1,z=[],H=[]}async function Hi(T,R){if(typeof T=="number"){e.history.go(T);return}let A=eu(b.location,b.matches,s,c.v7_prependBasename,T,c.v7_relativeSplatPath,R==null?void 0:R.fromRouteId,R==null?void 0:R.relative),{path:U,submission:K,error:re}=Nh(c.v7_normalizeFormMethod,!1,A,R),X=b.location,Z=Ti(b.location,U,R&&R.state);Z=Oe({},Z,e.history.encodeLocation(Z));let Y=R&&R.replace!=null?R.replace:void 0,ie=Le.Push;Y===!0?ie=Le.Replace:Y===!1||K!=null&&zt(K.formMethod)&&K.formAction===b.location.pathname+b.location.search&&(ie=Le.Replace);let He=R&&"preventScrollReset"in R?R.preventScrollReset===!0:void 0,ee=(R&&R.unstable_flushSync)===!0,de=vd({currentLocation:X,nextLocation:Z,historyAction:ie});if(de){Gi(de,{state:"blocked",location:Z,proceed(){Gi(de,{state:"proceeding",proceed:void 0,reset:void 0,location:Z}),Hi(T,R)},reset(){let Ye=new Map(b.blockers);Ye.set(de,zo),Se({blockers:Ye})}});return}return await yt(ie,Z,{submission:K,pendingError:re,preventScrollReset:He,replace:R&&R.replace,enableViewTransition:R&&R.unstable_viewTransition,flushSync:ee})}function Ql(){if(es(),Se({revalidation:"loading"}),b.navigation.state!=="submitting"){if(b.navigation.state==="idle"){yt(b.historyAction,b.location,{startUninterruptedRevalidation:!0});return}yt(S||b.historyAction,b.navigation.location,{overrideNavigation:b.navigation})}}async function yt(T,R,A){k&&k.abort(),k=null,S=T,D=(A&&A.startUninterruptedRevalidation)===!0,my(b.location,b.matches),$=(A&&A.preventScrollReset)===!0,P=(A&&A.enableViewTransition)===!0;let U=l||a,K=A&&A.overrideNavigation,re=ur(U,R,s),X=(A&&A.flushSync)===!0;if(!re){let Ye=kt(404,{pathname:R.pathname}),{matches:Tt,route:We}=jh(U);ts(),ft(R,{matches:Tt,loaderData:{},errors:{[We.id]:Ye}},{flushSync:X});return}if(b.initialized&&!N&&Tw(b.location,R)&&!(A&&A.submission&&zt(A.submission.formMethod))){ft(R,{matches:re},{flushSync:X});return}k=new AbortController;let Z=Uo(e.history,R,k.signal,A&&A.submission),Y,ie;if(A&&A.pendingError)ie={[ci(re).route.id]:A.pendingError};else if(A&&A.submission&&zt(A.submission.formMethod)){let Ye=await Wi(Z,R,A.submission,re,{replace:A.replace,flushSync:X});if(Ye.shortCircuited)return;Y=Ye.pendingActionData,ie=Ye.pendingActionError,K=Is(R,A.submission),X=!1,Z=new Request(Z.url,{signal:Z.signal})}let{shortCircuited:He,loaderData:ee,errors:de}=await Zl(Z,R,re,K,A&&A.submission,A&&A.fetcherSubmission,A&&A.replace,A&&A.initialHydration===!0,X,Y,ie);He||(k=null,ft(R,Oe({matches:re},Y?{actionData:Y}:{},{loaderData:ee,errors:de})))}async function Wi(T,R,A,U,K){K===void 0&&(K={}),es();let re=Pw(R,A);Se({navigation:re},{flushSync:K.flushSync===!0});let X,Z=nu(U,R);if(!Z.route.action&&!Z.route.lazy)X={type:Pe.error,error:kt(405,{method:T.method,pathname:R.pathname,routeId:Z.route.id})};else if(X=await Bo("action",T,Z,U,i,o,s,c.v7_relativeSplatPath),T.signal.aborted)return{shortCircuited:!0};if(dr(X)){let Y;return K&&K.replace!=null?Y=K.replace:Y=X.location===b.location.pathname+b.location.search,await Yt(b,X,{submission:A,replace:Y}),{shortCircuited:!0}}if(qr(X)){let Y=ci(U,Z.route.id);return(K&&K.replace)!==!0&&(S=Le.Push),{pendingActionData:{},pendingActionError:{[Y.route.id]:X.error}}}if(fr(X))throw kt(400,{type:"defer-action"});return{pendingActionData:{[Z.route.id]:X.data}}}async function Zl(T,R,A,U,K,re,X,Z,Y,ie,He){let ee=U||Is(R,K),de=K||re||zh(ee),Ye=l||a,[Tt,We]=Ph(e.history,b,A,de,R,c.v7_partialHydration&&Z===!0,N,z,H,ge,se,J,Ye,s,ie,He);if(ts(fe=>!(A&&A.some(xe=>xe.route.id===fe))||Tt&&Tt.some(xe=>xe.route.id===fe)),F=++O,Tt.length===0&&We.length===0){let fe=dd();return ft(R,Oe({matches:A,loaderData:{},errors:He||null},ie?{actionData:ie}:{},fe?{fetchers:new Map(b.fetchers)}:{}),{flushSync:Y}),{shortCircuited:!0}}if(!D&&(!c.v7_partialHydration||!Z)){We.forEach(xe=>{let Qt=b.fetchers.get(xe.key),Qi=Vo(void 0,Qt?Qt.data:void 0);b.fetchers.set(xe.key,Qi)});let fe=ie||b.actionData;Se(Oe({navigation:ee},fe?Object.keys(fe).length===0?{actionData:null}:{actionData:fe}:{},We.length>0?{fetchers:new Map(b.fetchers)}:{}),{flushSync:Y})}We.forEach(fe=>{B.has(fe.key)&&Tn(fe.key),fe.controller&&B.set(fe.key,fe.controller)});let Ar=()=>We.forEach(fe=>Tn(fe.key));k&&k.signal.addEventListener("abort",Ar);let{results:ns,loaderResults:Or,fetcherResults:kn}=await cd(b.matches,A,Tt,We,T);if(T.signal.aborted)return{shortCircuited:!0};k&&k.signal.removeEventListener("abort",Ar),We.forEach(fe=>B.delete(fe.key));let or=Dh(ns);if(or){if(or.idx>=Tt.length){let fe=We[or.idx-Tt.length].key;J.add(fe)}return await Yt(b,or.result,{replace:X}),{shortCircuited:!0}}let{loaderData:rs,errors:os}=Lh(b,A,Tt,Or,He,We,kn,Ne);Ne.forEach((fe,xe)=>{fe.subscribe(Qt=>{(Qt||fe.done)&&Ne.delete(xe)})});let is=dd(),Ir=hd(F),Yi=is||Ir||We.length>0;return Oe({loaderData:rs,errors:os},Yi?{fetchers:new Map(b.fetchers)}:{})}function Xl(T,R,A,U){if(r)throw new Error("router.fetch() was called during the server render, but it shouldn't be. You are likely calling a useFetcher() method in the body of your component. Try moving it to a useEffect or a callback.");B.has(T)&&Tn(T);let K=(U&&U.unstable_flushSync)===!0,re=l||a,X=eu(b.location,b.matches,s,c.v7_prependBasename,A,c.v7_relativeSplatPath,R,U==null?void 0:U.relative),Z=ur(re,X,s);if(!Z){Po(T,R,kt(404,{pathname:X}),{flushSync:K});return}let{path:Y,submission:ie,error:He}=Nh(c.v7_normalizeFormMethod,!0,X,U);if(He){Po(T,R,He,{flushSync:K});return}let ee=nu(Z,Y);if($=(U&&U.preventScrollReset)===!0,ie&&zt(ie.formMethod)){Jl(T,R,Y,ee,Z,K,ie);return}se.set(T,{routeId:R,path:Y}),ql(T,R,Y,ee,Z,K,ie)}async function Jl(T,R,A,U,K,re,X){if(es(),se.delete(T),!U.route.action&&!U.route.lazy){let xe=kt(405,{method:X.formMethod,pathname:A,routeId:R});Po(T,R,xe,{flushSync:re});return}let Z=b.fetchers.get(T);$n(T,Aw(X,Z),{flushSync:re});let Y=new AbortController,ie=Uo(e.history,A,Y.signal,X);B.set(T,Y);let He=O,ee=await Bo("action",ie,U,K,i,o,s,c.v7_relativeSplatPath);if(ie.signal.aborted){B.get(T)===Y&&B.delete(T);return}if(c.v7_fetcherPersist&&ge.has(T)){if(dr(ee)||qr(ee)){$n(T,Nn(void 0));return}}else{if(dr(ee))if(B.delete(T),F>He){$n(T,Nn(void 0));return}else return J.add(T),$n(T,Vo(X)),Yt(b,ee,{fetcherSubmission:X});if(qr(ee)){Po(T,R,ee.error);return}}if(fr(ee))throw kt(400,{type:"defer-action"});let de=b.navigation.location||b.location,Ye=Uo(e.history,de,Y.signal),Tt=l||a,We=b.navigation.state!=="idle"?ur(Tt,b.navigation.location,s):b.matches;te(We,"Didn't find any matches after fetcher action");let Ar=++O;W.set(T,Ar);let ns=Vo(X,ee.data);b.fetchers.set(T,ns);let[Or,kn]=Ph(e.history,b,We,X,de,!1,N,z,H,ge,se,J,Tt,s,{[U.route.id]:ee.data},void 0);kn.filter(xe=>xe.key!==T).forEach(xe=>{let Qt=xe.key,Qi=b.fetchers.get(Qt),yy=Vo(void 0,Qi?Qi.data:void 0);b.fetchers.set(Qt,yy),B.has(Qt)&&Tn(Qt),xe.controller&&B.set(Qt,xe.controller)}),Se({fetchers:new Map(b.fetchers)});let or=()=>kn.forEach(xe=>Tn(xe.key));Y.signal.addEventListener("abort",or);let{results:rs,loaderResults:os,fetcherResults:is}=await cd(b.matches,We,Or,kn,Ye);if(Y.signal.aborted)return;Y.signal.removeEventListener("abort",or),W.delete(T),B.delete(T),kn.forEach(xe=>B.delete(xe.key));let Ir=Dh(rs);if(Ir){if(Ir.idx>=Or.length){let xe=kn[Ir.idx-Or.length].key;J.add(xe)}return Yt(b,Ir.result)}let{loaderData:Yi,errors:fe}=Lh(b,b.matches,Or,os,void 0,kn,is,Ne);if(b.fetchers.has(T)){let xe=Nn(ee.data);b.fetchers.set(T,xe)}hd(Ar),b.navigation.state==="loading"&&Ar>F?(te(S,"Expected pending action"),k&&k.abort(),ft(b.navigation.location,{matches:We,loaderData:Yi,errors:fe,fetchers:new Map(b.fetchers)})):(Se({errors:fe,loaderData:Mh(b.loaderData,Yi,We,fe),fetchers:new Map(b.fetchers)}),N=!1)}async function ql(T,R,A,U,K,re,X){let Z=b.fetchers.get(T);$n(T,Vo(X,Z?Z.data:void 0),{flushSync:re});let Y=new AbortController,ie=Uo(e.history,A,Y.signal);B.set(T,Y);let He=O,ee=await Bo("loader",ie,U,K,i,o,s,c.v7_relativeSplatPath);if(fr(ee)&&(ee=await T0(ee,ie.signal,!0)||ee),B.get(T)===Y&&B.delete(T),!ie.signal.aborted){if(ge.has(T)){$n(T,Nn(void 0));return}if(dr(ee))if(F>He){$n(T,Nn(void 0));return}else{J.add(T),await Yt(b,ee);return}if(qr(ee)){Po(T,R,ee.error);return}te(!fr(ee),"Unhandled fetcher deferred data"),$n(T,Nn(ee.data))}}async function Yt(T,R,A){let{submission:U,fetcherSubmission:K,replace:re}=A===void 0?{}:A;R.revalidate&&(N=!0);let X=Ti(T.location,R.location,{_isRedirect:!0});if(te(X,"Expected a location on the redirect navigation"),n){let de=!1;if(R.reloadDocument)de=!0;else if(b0.test(R.location)){const Ye=e.history.createURL(R.location);de=Ye.origin!==t.location.origin||Sr(Ye.pathname,s)==null}if(de){re?t.location.replace(R.location):t.location.assign(R.location);return}}k=null;let Z=re===!0?Le.Replace:Le.Push,{formMethod:Y,formAction:ie,formEncType:He}=T.navigation;!U&&!K&&Y&&ie&&He&&(U=zh(T.navigation));let ee=U||K;if(ww.has(R.status)&&ee&&zt(ee.formMethod))await yt(Z,X,{submission:Oe({},ee,{formAction:R.location}),preventScrollReset:$});else{let de=Is(X,U);await yt(Z,X,{overrideNavigation:de,fetcherSubmission:K,preventScrollReset:$})}}async function cd(T,R,A,U,K){let re=await Promise.all([...A.map(Y=>Bo("loader",K,Y,R,i,o,s,c.v7_relativeSplatPath)),...U.map(Y=>Y.matches&&Y.match&&Y.controller?Bo("loader",Uo(e.history,Y.path,Y.controller.signal),Y.match,Y.matches,i,o,s,c.v7_relativeSplatPath):{type:Pe.error,error:kt(404,{pathname:Y.path})})]),X=re.slice(0,A.length),Z=re.slice(A.length);return await Promise.all([Fh(T,A,X,X.map(()=>K.signal),!1,b.loaderData),Fh(T,U.map(Y=>Y.match),Z,U.map(Y=>Y.controller?Y.controller.signal:null),!0)]),{results:re,loaderResults:X,fetcherResults:Z}}function es(){N=!0,z.push(...ts()),se.forEach((T,R)=>{B.has(R)&&(H.push(R),Tn(R))})}function $n(T,R,A){A===void 0&&(A={}),b.fetchers.set(T,R),Se({fetchers:new Map(b.fetchers)},{flushSync:(A&&A.flushSync)===!0})}function Po(T,R,A,U){U===void 0&&(U={});let K=ci(b.matches,R);Ki(T),Se({errors:{[K.route.id]:A},fetchers:new Map(b.fetchers)},{flushSync:(U&&U.flushSync)===!0})}function ud(T){return c.v7_fetcherPersist&&(Ue.set(T,(Ue.get(T)||0)+1),ge.has(T)&&ge.delete(T)),b.fetchers.get(T)||xw}function Ki(T){let R=b.fetchers.get(T);B.has(T)&&!(R&&R.state==="loading"&&W.has(T))&&Tn(T),se.delete(T),W.delete(T),J.delete(T),ge.delete(T),b.fetchers.delete(T)}function hy(T){if(c.v7_fetcherPersist){let R=(Ue.get(T)||0)-1;R<=0?(Ue.delete(T),ge.add(T)):Ue.set(T,R)}else Ki(T);Se({fetchers:new Map(b.fetchers)})}function Tn(T){let R=B.get(T);te(R,"Expected fetch controller: "+T),R.abort(),B.delete(T)}function fd(T){for(let R of T){let A=ud(R),U=Nn(A.data);b.fetchers.set(R,U)}}function dd(){let T=[],R=!1;for(let A of J){let U=b.fetchers.get(A);te(U,"Expected fetcher: "+A),U.state==="loading"&&(J.delete(A),T.push(A),R=!0)}return fd(T),R}function hd(T){let R=[];for(let[A,U]of W)if(U0}function py(T,R){let A=b.blockers.get(T)||zo;return ye.get(T)!==R&&ye.set(T,R),A}function pd(T){b.blockers.delete(T),ye.delete(T)}function Gi(T,R){let A=b.blockers.get(T)||zo;te(A.state==="unblocked"&&R.state==="blocked"||A.state==="blocked"&&R.state==="blocked"||A.state==="blocked"&&R.state==="proceeding"||A.state==="blocked"&&R.state==="unblocked"||A.state==="proceeding"&&R.state==="unblocked","Invalid blocker state transition: "+A.state+" -> "+R.state);let U=new Map(b.blockers);U.set(T,R),Se({blockers:U})}function vd(T){let{currentLocation:R,nextLocation:A,historyAction:U}=T;if(ye.size===0)return;ye.size>1&&go(!1,"A router only supports one blocker at a time");let K=Array.from(ye.entries()),[re,X]=K[K.length-1],Z=b.blockers.get(re);if(!(Z&&Z.state==="proceeding")&&X({currentLocation:R,nextLocation:A,historyAction:U}))return re}function ts(T){let R=[];return Ne.forEach((A,U)=>{(!T||T(U))&&(A.cancel(),R.push(U),Ne.delete(U))}),R}function vy(T,R,A){if(d=T,y=R,p=A||null,!g&&b.navigation===Os){g=!0;let U=gd(b.location,b.matches);U!=null&&Se({restoreScrollPosition:U})}return()=>{d=null,y=null,p=null}}function md(T,R){return p&&p(T,R.map(U=>g0(U,b.loaderData)))||T.key}function my(T,R){if(d&&y){let A=md(T,R);d[A]=y()}}function gd(T,R){if(d){let A=md(T,R),U=d[A];if(typeof U=="number")return U}return null}function gy(T){i={},l=qc(T,o,void 0,i)}return _={get basename(){return s},get future(){return c},get state(){return b},get routes(){return a},get window(){return t},initialize:we,subscribe:Mt,enableScrollRestoration:vy,navigate:Hi,fetch:Xl,revalidate:Ql,createHref:T=>e.history.createHref(T),encodeLocation:T=>e.history.encodeLocation(T),getFetcher:ud,deleteFetcher:hy,dispose:_e,getBlocker:py,deleteBlocker:pd,_internalFetchControllers:B,_internalActiveDeferreds:Ne,_internalSetRoutes:gy},_}function bw(e){return e!=null&&("formData"in e&&e.formData!=null||"body"in e&&e.body!==void 0)}function eu(e,t,n,r,o,i,a,l){let s,c;if(a){s=[];for(let u of t)if(s.push(u),u.route.id===a){c=u;break}}else s=t,c=t[t.length-1];let f=Of(o||".",Af(s,i),Sr(e.pathname,n)||e.pathname,l==="path");return o==null&&(f.search=e.search,f.hash=e.hash),(o==null||o===""||o===".")&&c&&c.route.index&&!Lf(f.search)&&(f.search=f.search?f.search.replace(/^\?/,"?index&"):"?index"),r&&n!=="/"&&(f.pathname=f.pathname==="/"?n:dn([n,f.pathname])),Cr(f)}function Nh(e,t,n,r){if(!r||!bw(r))return{path:n};if(r.formMethod&&!Nw(r.formMethod))return{path:n,error:kt(405,{method:r.formMethod})};let o=()=>({path:n,error:kt(400,{type:"invalid-body"})}),i=r.formMethod||"get",a=e?i.toUpperCase():i.toLowerCase(),l=$0(n);if(r.body!==void 0){if(r.formEncType==="text/plain"){if(!zt(a))return o();let d=typeof r.body=="string"?r.body:r.body instanceof FormData||r.body instanceof URLSearchParams?Array.from(r.body.entries()).reduce((p,y)=>{let[g,C]=y;return""+p+g+"="+C+` `},""):String(r.body);return{path:n,submission:{formMethod:a,formAction:l,formEncType:r.formEncType,formData:void 0,json:void 0,text:d}}}else if(r.formEncType==="application/json"){if(!zt(a))return o();try{let d=typeof r.body=="string"?JSON.parse(r.body):r.body;return{path:n,submission:{formMethod:a,formAction:l,formEncType:r.formEncType,formData:void 0,json:d,text:void 0}}}catch{return o()}}}te(typeof FormData=="function","FormData is not available in this environment");let s,c;if(r.formData)s=tu(r.formData),c=r.formData;else if(r.body instanceof FormData)s=tu(r.body),c=r.body;else if(r.body instanceof URLSearchParams)s=r.body,c=Ih(s);else if(r.body==null)s=new URLSearchParams,c=new FormData;else try{s=new URLSearchParams(r.body),c=Ih(s)}catch{return o()}let f={formMethod:a,formAction:l,formEncType:r&&r.formEncType||"application/x-www-form-urlencoded",formData:c,json:void 0,text:void 0};if(zt(f.formMethod))return{path:n,submission:f};let u=Cn(n);return t&&u.search&&Lf(u.search)&&s.append("index",""),u.search="?"+s,{path:Cr(u),submission:f}}function _w(e,t){let n=e;if(t){let r=e.findIndex(o=>o.route.id===t);r>=0&&(n=e.slice(0,r))}return n}function Ph(e,t,n,r,o,i,a,l,s,c,f,u,d,p,y,g){let C=g?Object.values(g)[0]:y?Object.values(y)[0]:void 0,v=e.createURL(t.location),m=e.createURL(o),x=g?Object.keys(g)[0]:void 0,_=_w(n,x).filter((S,$)=>{let{route:k}=S;if(k.lazy)return!0;if(k.loader==null)return!1;if(i)return k.loader.hydrate?!0:t.loaderData[k.id]===void 0&&(!t.errors||t.errors[k.id]===void 0);if(Sw(t.loaderData,t.matches[$],S)||l.some(L=>L===S.route.id))return!0;let P=t.matches[$],j=S;return Ah(S,Oe({currentUrl:v,currentParams:P.params,nextUrl:m,nextParams:j.params},r,{actionResult:C,defaultShouldRevalidate:a||v.pathname+v.search===m.pathname+m.search||v.search!==m.search||S0(P,j)}))}),b=[];return f.forEach((S,$)=>{if(i||!n.some(D=>D.route.id===S.routeId)||c.has($))return;let k=ur(d,S.path,p);if(!k){b.push({key:$,routeId:S.routeId,path:S.path,matches:null,match:null,controller:null});return}let P=t.fetchers.get($),j=nu(k,S.path),L=!1;u.has($)?L=!1:s.includes($)?L=!0:P&&P.state!=="idle"&&P.data===void 0?L=a:L=Ah(j,Oe({currentUrl:v,currentParams:t.matches[t.matches.length-1].params,nextUrl:m,nextParams:n[n.length-1].params},r,{actionResult:C,defaultShouldRevalidate:a})),L&&b.push({key:$,routeId:S.routeId,path:S.path,matches:k,match:j,controller:new AbortController})}),[_,b]}function Sw(e,t,n){let r=!t||n.route.id!==t.route.id,o=e[n.route.id]===void 0;return r||o}function S0(e,t){let n=e.route.path;return e.pathname!==t.pathname||n!=null&&n.endsWith("*")&&e.params["*"]!==t.params["*"]}function Ah(e,t){if(e.route.shouldRevalidate){let n=e.route.shouldRevalidate(t);if(typeof n=="boolean")return n}return t.defaultShouldRevalidate}async function Oh(e,t,n){if(!e.lazy)return;let r=await e.lazy();if(!e.lazy)return;let o=n[e.id];te(o,"No route found in manifest");let i={};for(let a in r){let s=o[a]!==void 0&&a!=="hasErrorBoundary";go(!s,'Route "'+o.id+'" has a static property "'+a+'" defined but its lazy function is also returning a value for this property. '+('The lazy route property "'+a+'" will be ignored.')),!s&&!Z3.has(a)&&(i[a]=r[a])}Object.assign(o,i),Object.assign(o,Oe({},t(o),{lazy:void 0}))}async function Bo(e,t,n,r,o,i,a,l,s){s===void 0&&(s={});let c,f,u,d=g=>{let C,v=new Promise((m,x)=>C=x);return u=()=>C(),t.signal.addEventListener("abort",u),Promise.race([g({request:t,params:n.params,context:s.requestContext}),v])};try{let g=n.route[e];if(n.route.lazy)if(g){let C,v=await Promise.all([d(g).catch(m=>{C=m}),Oh(n.route,i,o)]);if(C)throw C;f=v[0]}else if(await Oh(n.route,i,o),g=n.route[e],g)f=await d(g);else if(e==="action"){let C=new URL(t.url),v=C.pathname+C.search;throw kt(405,{method:t.method,pathname:v,routeId:n.route.id})}else return{type:Pe.data,data:void 0};else if(g)f=await d(g);else{let C=new URL(t.url),v=C.pathname+C.search;throw kt(404,{pathname:v})}te(f!==void 0,"You defined "+(e==="action"?"an action":"a loader")+" for route "+('"'+n.route.id+"\" but didn't return anything from your `"+e+"` ")+"function. Please return a value or `null`.")}catch(g){c=Pe.error,f=g}finally{u&&t.signal.removeEventListener("abort",u)}if(Rw(f)){let g=f.status;if(yw.has(g)){let v=f.headers.get("Location");if(te(v,"Redirects returned/thrown from loaders/actions must have a Location header"),!b0.test(v))v=eu(new URL(t.url),r.slice(0,r.indexOf(n)+1),a,!0,v,l);else if(!s.isStaticRequest){let m=new URL(t.url),x=v.startsWith("//")?new URL(m.protocol+v):new URL(v),E=Sr(x.pathname,a)!=null;x.origin===m.origin&&E&&(v=x.pathname+x.search+x.hash)}if(s.isStaticRequest)throw f.headers.set("Location",v),f;return{type:Pe.redirect,status:g,location:v,revalidate:f.headers.get("X-Remix-Revalidate")!==null,reloadDocument:f.headers.get("X-Remix-Reload-Document")!==null}}if(s.isRouteRequest)throw{type:c===Pe.error?Pe.error:Pe.data,response:f};let C;try{let v=f.headers.get("Content-Type");v&&/\bapplication\/json\b/.test(v)?f.body==null?C=null:C=await f.json():C=await f.text()}catch(v){return{type:Pe.error,error:v}}return c===Pe.error?{type:c,error:new If(g,f.statusText,C),headers:f.headers}:{type:Pe.data,data:C,statusCode:f.status,headers:f.headers}}if(c===Pe.error)return{type:c,error:f};if(kw(f)){var p,y;return{type:Pe.deferred,deferredData:f,statusCode:(p=f.init)==null?void 0:p.status,headers:((y=f.init)==null?void 0:y.headers)&&new Headers(f.init.headers)}}return{type:Pe.data,data:f}}function Uo(e,t,n,r){let o=e.createURL($0(t)).toString(),i={signal:n};if(r&&zt(r.formMethod)){let{formMethod:a,formEncType:l}=r;i.method=a.toUpperCase(),l==="application/json"?(i.headers=new Headers({"Content-Type":l}),i.body=JSON.stringify(r.json)):l==="text/plain"?i.body=r.text:l==="application/x-www-form-urlencoded"&&r.formData?i.body=tu(r.formData):i.body=r.formData}return new Request(o,i)}function tu(e){let t=new URLSearchParams;for(let[n,r]of e.entries())t.append(n,typeof r=="string"?r:r.name);return t}function Ih(e){let t=new FormData;for(let[n,r]of e.entries())t.append(n,r);return t}function $w(e,t,n,r,o){let i={},a=null,l,s=!1,c={};return n.forEach((f,u)=>{let d=t[u].route.id;if(te(!dr(f),"Cannot handle redirect results in processLoaderData"),qr(f)){let p=ci(e,d),y=f.error;r&&(y=Object.values(r)[0],r=void 0),a=a||{},a[p.route.id]==null&&(a[p.route.id]=y),i[d]=void 0,s||(s=!0,l=C0(f.error)?f.error.status:500),f.headers&&(c[d]=f.headers)}else fr(f)?(o.set(d,f.deferredData),i[d]=f.deferredData.data):i[d]=f.data,f.statusCode!=null&&f.statusCode!==200&&!s&&(l=f.statusCode),f.headers&&(c[d]=f.headers)}),r&&(a=r,i[Object.keys(r)[0]]=void 0),{loaderData:i,errors:a,statusCode:l||200,loaderHeaders:c}}function Lh(e,t,n,r,o,i,a,l){let{loaderData:s,errors:c}=$w(t,n,r,o,l);for(let f=0;fr.route.id===t)+1):[...e]).reverse().find(r=>r.route.hasErrorBoundary===!0)||e[0]}function jh(e){let t=e.length===1?e[0]:e.find(n=>n.index||!n.path||n.path==="/")||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:t}],route:t}}function kt(e,t){let{pathname:n,routeId:r,method:o,type:i}=t===void 0?{}:t,a="Unknown Server Error",l="Unknown @remix-run/router error";return e===400?(a="Bad Request",o&&n&&r?l="You made a "+o+' request to "'+n+'" but '+('did not provide a `loader` for route "'+r+'", ')+"so there is no way to handle the request.":i==="defer-action"?l="defer() is not supported in actions":i==="invalid-body"&&(l="Unable to encode submission body")):e===403?(a="Forbidden",l='Route "'+r+'" does not match URL "'+n+'"'):e===404?(a="Not Found",l='No route matches URL "'+n+'"'):e===405&&(a="Method Not Allowed",o&&n&&r?l="You made a "+o.toUpperCase()+' request to "'+n+'" but '+('did not provide an `action` for route "'+r+'", ')+"so there is no way to handle the request.":o&&(l='Invalid request method "'+o.toUpperCase()+'"')),new If(e||500,a,new Error(l),!0)}function Dh(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(dr(n))return{result:n,idx:t}}}function $0(e){let t=typeof e=="string"?Cn(e):e;return Cr(Oe({},t,{hash:""}))}function Tw(e,t){return e.pathname!==t.pathname||e.search!==t.search?!1:e.hash===""?t.hash!=="":e.hash===t.hash?!0:t.hash!==""}function fr(e){return e.type===Pe.deferred}function qr(e){return e.type===Pe.error}function dr(e){return(e&&e.type)===Pe.redirect}function kw(e){let t=e;return t&&typeof t=="object"&&typeof t.data=="object"&&typeof t.subscribe=="function"&&typeof t.cancel=="function"&&typeof t.resolveData=="function"}function Rw(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.headers=="object"&&typeof e.body<"u"}function Nw(e){return gw.has(e.toLowerCase())}function zt(e){return vw.has(e.toLowerCase())}async function Fh(e,t,n,r,o,i){for(let a=0;au.route.id===s.route.id),f=c!=null&&!S0(c,s)&&(i&&i[s.route.id])!==void 0;if(fr(l)&&(o||f)){let u=r[a];te(u,"Expected an AbortSignal for revalidating fetcher deferred result"),await T0(l,u,o).then(d=>{d&&(n[a]=d||n[a])})}}}async function T0(e,t,n){if(n===void 0&&(n=!1),!await e.deferredData.resolveData(t)){if(n)try{return{type:Pe.data,data:e.deferredData.unwrappedData}}catch(o){return{type:Pe.error,error:o}}return{type:Pe.data,data:e.deferredData.data}}}function Lf(e){return new URLSearchParams(e).getAll("index").some(t=>t==="")}function nu(e,t){let n=typeof t=="string"?Cn(t).search:t.search;if(e[e.length-1].route.index&&Lf(n||""))return e[e.length-1];let r=x0(e);return r[r.length-1]}function zh(e){let{formMethod:t,formAction:n,formEncType:r,text:o,formData:i,json:a}=e;if(!(!t||!n||!r)){if(o!=null)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:void 0,text:o};if(i!=null)return{formMethod:t,formAction:n,formEncType:r,formData:i,json:void 0,text:void 0};if(a!==void 0)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:a,text:void 0}}}function Is(e,t){return t?{state:"loading",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}:{state:"loading",location:e,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function Pw(e,t){return{state:"submitting",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}}function Vo(e,t){return e?{state:"loading",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t}:{state:"loading",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:t}}function Aw(e,t){return{state:"submitting",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t?t.data:void 0}}function Nn(e){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function Ow(e,t){try{let n=e.sessionStorage.getItem(_0);if(n){let r=JSON.parse(n);for(let[o,i]of Object.entries(r||{}))i&&Array.isArray(i)&&t.set(o,new Set(i||[]))}}catch{}}function Iw(e,t){if(t.size>0){let n={};for(let[r,o]of t)n[r]=[...o];try{e.sessionStorage.setItem(_0,JSON.stringify(n))}catch(r){go(!1,"Failed to save applied view transitions in sessionStorage ("+r+").")}}}/** * React Router v6.22.1 * @@ -56,7 +56,7 @@ Error generating stack: `+i.message+` * LICENSE.md file in the root directory of this source tree. * * @license MIT - */function ki(){return ki=Object.assign?Object.assign.bind():function(e){for(var t=1;tFl(e,t),[t,e])}function R0(e){h.useContext(nr).static||h.useLayoutEffect(e)}function jf(){let{isDataRoute:e}=h.useContext($r);return e?Qw():jw()}function jw(){$o()||te(!1);let e=h.useContext(zi),{basename:t,future:n,navigator:r}=h.useContext(nr),{matches:o}=h.useContext($r),{pathname:i}=Re(),a=JSON.stringify(Af(o,n.v7_relativeSplatPath)),l=h.useRef(!1);return R0(()=>{l.current=!0}),h.useCallback(function(c,f){if(f===void 0&&(f={}),!l.current)return;if(typeof c=="number"){r.go(c);return}let u=Of(c,JSON.parse(a),i,f.relative==="path");e==null&&t!=="/"&&(u.pathname=u.pathname==="/"?t:dn([t,u.pathname])),(f.replace?r.replace:r.push)(u,f.state,f)},[t,r,a,i,e])}function N0(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=h.useContext(nr),{matches:o}=h.useContext($r),{pathname:i}=Re(),a=JSON.stringify(Af(o,r.v7_relativeSplatPath));return h.useMemo(()=>Of(e,JSON.parse(a),i,n==="path"),[e,a,i,n])}function Dw(e,t,n,r){$o()||te(!1);let{navigator:o}=h.useContext(nr),{matches:i}=h.useContext($r),a=i[i.length-1],l=a?a.params:{};a&&a.pathname;let s=a?a.pathnameBase:"/";a&&a.route;let c=Re(),f;if(t){var u;let C=typeof t=="string"?Cn(t):t;s==="/"||(u=C.pathname)!=null&&u.startsWith(s)||te(!1),f=C}else f=c;let d=f.pathname||"/",p=d;if(s!=="/"){let C=s.replace(/^\//,"").split("/");p="/"+d.replace(/^\//,"").split("/").slice(C.length).join("/")}let y=ur(e,{pathname:p}),g=Vw(y&&y.map(C=>Object.assign({},C,{params:Object.assign({},l,C.params),pathname:dn([s,o.encodeLocation?o.encodeLocation(C.pathname).pathname:C.pathname]),pathnameBase:C.pathnameBase==="/"?s:dn([s,o.encodeLocation?o.encodeLocation(C.pathnameBase).pathname:C.pathnameBase])})),i,n,r);return t&&g?h.createElement(zl.Provider,{value:{location:ki({pathname:"/",search:"",hash:"",state:null,key:"default"},f),navigationType:Ie.Pop}},g):g}function Fw(){let e=Gw(),t=C0(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,o={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return h.createElement(h.Fragment,null,h.createElement("h2",null,"Unexpected Application Error!"),h.createElement("h3",{style:{fontStyle:"italic"}},t),n?h.createElement("pre",{style:o},n):null,null)}const zw=h.createElement(Fw,null);class Bw extends h.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?h.createElement($r.Provider,{value:this.props.routeContext},h.createElement(k0.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Uw(e){let{routeContext:t,match:n,children:r}=e,o=h.useContext(zi);return o&&o.static&&o.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=n.route.id),h.createElement($r.Provider,{value:t},r)}function Vw(e,t,n,r){var o;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var i;if((i=n)!=null&&i.errors)e=n.matches;else return null}let a=e,l=(o=n)==null?void 0:o.errors;if(l!=null){let f=a.findIndex(u=>u.route.id&&(l==null?void 0:l[u.route.id]));f>=0||te(!1),a=a.slice(0,Math.min(a.length,f+1))}let s=!1,c=-1;if(n&&r&&r.v7_partialHydration)for(let f=0;f=0?a=a.slice(0,c+1):a=[a[0]];break}}}return a.reduceRight((f,u,d)=>{let p,y=!1,g=null,C=null;n&&(p=l&&u.route.id?l[u.route.id]:void 0,g=u.route.errorElement||zw,s&&(c<0&&d===0?(Zw("route-fallback",!1),y=!0,C=null):c===d&&(y=!0,C=u.route.hydrateFallbackElement||null)));let v=t.concat(a.slice(0,d+1)),m=()=>{let x;return p?x=g:y?x=C:u.route.Component?x=h.createElement(u.route.Component,null):u.route.element?x=u.route.element:x=f,h.createElement(Uw,{match:u,routeContext:{outlet:f,matches:v,isDataRoute:n!=null},children:x})};return n&&(u.route.ErrorBoundary||u.route.errorElement||d===0)?h.createElement(Bw,{location:n.location,revalidation:n.revalidation,component:g,error:p,children:m(),routeContext:{outlet:null,matches:v,isDataRoute:!0}}):m()},null)}var P0=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(P0||{}),yo=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(yo||{});function Hw(e){let t=h.useContext(zi);return t||te(!1),t}function Df(e){let t=h.useContext(Mf);return t||te(!1),t}function Ww(e){let t=h.useContext($r);return t||te(!1),t}function A0(e){let t=Ww(),n=t.matches[t.matches.length-1];return n.route.id||te(!1),n.route.id}function Kw(){return Df(yo.UseNavigation).navigation}function Yw(){let{matches:e,loaderData:t}=Df(yo.UseMatches);return h.useMemo(()=>e.map(n=>g0(n,t)),[e,t])}function Gw(){var e;let t=h.useContext(k0),n=Df(yo.UseRouteError),r=A0(yo.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function Qw(){let{router:e}=Hw(P0.UseNavigateStable),t=A0(yo.UseNavigateStable),n=h.useRef(!1);return R0(()=>{n.current=!0}),h.useCallback(function(o,i){i===void 0&&(i={}),n.current&&(typeof o=="number"?e.navigate(o):e.navigate(o,ki({fromRouteId:t},i)))},[e,t])}const Bh={};function Zw(e,t,n){!t&&!Bh[e]&&(Bh[e]=!0)}function Xw(e){let{basename:t="/",children:n=null,location:r,navigationType:o=Ie.Pop,navigator:i,static:a=!1,future:l}=e;$o()&&te(!1);let s=t.replace(/^\/*/,"/"),c=h.useMemo(()=>({basename:s,navigator:i,static:a,future:ki({v7_relativeSplatPath:!1},l)}),[s,l,i,a]);typeof r=="string"&&(r=Cn(r));let{pathname:f="/",search:u="",hash:d="",state:p=null,key:y="default"}=r,g=h.useMemo(()=>{let C=Sr(f,s);return C==null?null:{location:{pathname:C,search:u,hash:d,state:p,key:y},navigationType:o}},[s,f,u,d,p,y,o]);return g==null?null:h.createElement(nr.Provider,{value:c},h.createElement(zl.Provider,{children:n,value:g}))}new Promise(()=>{});function Jw(e){let t={hasErrorBoundary:e.ErrorBoundary!=null||e.errorElement!=null};return e.Component&&Object.assign(t,{element:h.createElement(e.Component),Component:void 0}),e.HydrateFallback&&Object.assign(t,{hydrateFallbackElement:h.createElement(e.HydrateFallback),HydrateFallback:void 0}),e.ErrorBoundary&&Object.assign(t,{errorElement:h.createElement(e.ErrorBoundary),ErrorBoundary:void 0}),t}/** + */function ki(){return ki=Object.assign?Object.assign.bind():function(e){for(var t=1;tFl(e,t),[t,e])}function R0(e){h.useContext(nr).static||h.useLayoutEffect(e)}function jf(){let{isDataRoute:e}=h.useContext($r);return e?Qw():jw()}function jw(){$o()||te(!1);let e=h.useContext(zi),{basename:t,future:n,navigator:r}=h.useContext(nr),{matches:o}=h.useContext($r),{pathname:i}=Re(),a=JSON.stringify(Af(o,n.v7_relativeSplatPath)),l=h.useRef(!1);return R0(()=>{l.current=!0}),h.useCallback(function(c,f){if(f===void 0&&(f={}),!l.current)return;if(typeof c=="number"){r.go(c);return}let u=Of(c,JSON.parse(a),i,f.relative==="path");e==null&&t!=="/"&&(u.pathname=u.pathname==="/"?t:dn([t,u.pathname])),(f.replace?r.replace:r.push)(u,f.state,f)},[t,r,a,i,e])}function N0(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=h.useContext(nr),{matches:o}=h.useContext($r),{pathname:i}=Re(),a=JSON.stringify(Af(o,r.v7_relativeSplatPath));return h.useMemo(()=>Of(e,JSON.parse(a),i,n==="path"),[e,a,i,n])}function Dw(e,t,n,r){$o()||te(!1);let{navigator:o}=h.useContext(nr),{matches:i}=h.useContext($r),a=i[i.length-1],l=a?a.params:{};a&&a.pathname;let s=a?a.pathnameBase:"/";a&&a.route;let c=Re(),f;if(t){var u;let C=typeof t=="string"?Cn(t):t;s==="/"||(u=C.pathname)!=null&&u.startsWith(s)||te(!1),f=C}else f=c;let d=f.pathname||"/",p=d;if(s!=="/"){let C=s.replace(/^\//,"").split("/");p="/"+d.replace(/^\//,"").split("/").slice(C.length).join("/")}let y=ur(e,{pathname:p}),g=Vw(y&&y.map(C=>Object.assign({},C,{params:Object.assign({},l,C.params),pathname:dn([s,o.encodeLocation?o.encodeLocation(C.pathname).pathname:C.pathname]),pathnameBase:C.pathnameBase==="/"?s:dn([s,o.encodeLocation?o.encodeLocation(C.pathnameBase).pathname:C.pathnameBase])})),i,n,r);return t&&g?h.createElement(zl.Provider,{value:{location:ki({pathname:"/",search:"",hash:"",state:null,key:"default"},f),navigationType:Le.Pop}},g):g}function Fw(){let e=Yw(),t=C0(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,o={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return h.createElement(h.Fragment,null,h.createElement("h2",null,"Unexpected Application Error!"),h.createElement("h3",{style:{fontStyle:"italic"}},t),n?h.createElement("pre",{style:o},n):null,null)}const zw=h.createElement(Fw,null);class Bw extends h.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?h.createElement($r.Provider,{value:this.props.routeContext},h.createElement(k0.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Uw(e){let{routeContext:t,match:n,children:r}=e,o=h.useContext(zi);return o&&o.static&&o.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=n.route.id),h.createElement($r.Provider,{value:t},r)}function Vw(e,t,n,r){var o;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var i;if((i=n)!=null&&i.errors)e=n.matches;else return null}let a=e,l=(o=n)==null?void 0:o.errors;if(l!=null){let f=a.findIndex(u=>u.route.id&&(l==null?void 0:l[u.route.id]));f>=0||te(!1),a=a.slice(0,Math.min(a.length,f+1))}let s=!1,c=-1;if(n&&r&&r.v7_partialHydration)for(let f=0;f=0?a=a.slice(0,c+1):a=[a[0]];break}}}return a.reduceRight((f,u,d)=>{let p,y=!1,g=null,C=null;n&&(p=l&&u.route.id?l[u.route.id]:void 0,g=u.route.errorElement||zw,s&&(c<0&&d===0?(Zw("route-fallback",!1),y=!0,C=null):c===d&&(y=!0,C=u.route.hydrateFallbackElement||null)));let v=t.concat(a.slice(0,d+1)),m=()=>{let x;return p?x=g:y?x=C:u.route.Component?x=h.createElement(u.route.Component,null):u.route.element?x=u.route.element:x=f,h.createElement(Uw,{match:u,routeContext:{outlet:f,matches:v,isDataRoute:n!=null},children:x})};return n&&(u.route.ErrorBoundary||u.route.errorElement||d===0)?h.createElement(Bw,{location:n.location,revalidation:n.revalidation,component:g,error:p,children:m(),routeContext:{outlet:null,matches:v,isDataRoute:!0}}):m()},null)}var P0=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(P0||{}),yo=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(yo||{});function Hw(e){let t=h.useContext(zi);return t||te(!1),t}function Df(e){let t=h.useContext(Mf);return t||te(!1),t}function Ww(e){let t=h.useContext($r);return t||te(!1),t}function A0(e){let t=Ww(),n=t.matches[t.matches.length-1];return n.route.id||te(!1),n.route.id}function Kw(){return Df(yo.UseNavigation).navigation}function Gw(){let{matches:e,loaderData:t}=Df(yo.UseMatches);return h.useMemo(()=>e.map(n=>g0(n,t)),[e,t])}function Yw(){var e;let t=h.useContext(k0),n=Df(yo.UseRouteError),r=A0(yo.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function Qw(){let{router:e}=Hw(P0.UseNavigateStable),t=A0(yo.UseNavigateStable),n=h.useRef(!1);return R0(()=>{n.current=!0}),h.useCallback(function(o,i){i===void 0&&(i={}),n.current&&(typeof o=="number"?e.navigate(o):e.navigate(o,ki({fromRouteId:t},i)))},[e,t])}const Bh={};function Zw(e,t,n){!t&&!Bh[e]&&(Bh[e]=!0)}function Xw(e){let{basename:t="/",children:n=null,location:r,navigationType:o=Le.Pop,navigator:i,static:a=!1,future:l}=e;$o()&&te(!1);let s=t.replace(/^\/*/,"/"),c=h.useMemo(()=>({basename:s,navigator:i,static:a,future:ki({v7_relativeSplatPath:!1},l)}),[s,l,i,a]);typeof r=="string"&&(r=Cn(r));let{pathname:f="/",search:u="",hash:d="",state:p=null,key:y="default"}=r,g=h.useMemo(()=>{let C=Sr(f,s);return C==null?null:{location:{pathname:C,search:u,hash:d,state:p,key:y},navigationType:o}},[s,f,u,d,p,y,o]);return g==null?null:h.createElement(nr.Provider,{value:c},h.createElement(zl.Provider,{children:n,value:g}))}new Promise(()=>{});function Jw(e){let t={hasErrorBoundary:e.ErrorBoundary!=null||e.errorElement!=null};return e.Component&&Object.assign(t,{element:h.createElement(e.Component),Component:void 0}),e.HydrateFallback&&Object.assign(t,{hydrateFallbackElement:h.createElement(e.HydrateFallback),HydrateFallback:void 0}),e.ErrorBoundary&&Object.assign(t,{errorElement:h.createElement(e.ErrorBoundary),ErrorBoundary:void 0}),t}/** * React Router DOM v6.22.1 * * Copyright (c) Remix Software Inc. @@ -65,7 +65,7 @@ Error generating stack: `+i.message+` * LICENSE.md file in the root directory of this source tree. * * @license MIT - */function wo(){return wo=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(n[o]=e[o]);return n}function ex(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function tx(e,t){return e.button===0&&(!t||t==="_self")&&!ex(e)}const nx=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","unstable_viewTransition"],rx="6";try{window.__reactRouterVersion=rx}catch{}function ox(e,t){return Ew({basename:t==null?void 0:t.basename,future:wo({},t==null?void 0:t.future,{v7_prependBasename:!0}),history:Y3({window:t==null?void 0:t.window}),hydrationData:(t==null?void 0:t.hydrationData)||ix(),routes:e,mapRouteProperties:Jw,window:t==null?void 0:t.window}).initialize()}function ix(){var e;let t=(e=window)==null?void 0:e.__staticRouterHydrationData;return t&&t.errors&&(t=wo({},t,{errors:ax(t.errors)})),t}function ax(e){if(!e)return null;let t=Object.entries(e),n={};for(let[r,o]of t)if(o&&o.__type==="RouteErrorResponse")n[r]=new If(o.status,o.statusText,o.data,o.internal===!0);else if(o&&o.__type==="Error"){if(o.__subType){let i=window[o.__subType];if(typeof i=="function")try{let a=new i(o.message);a.stack="",n[r]=a}catch{}}if(n[r]==null){let i=new Error(o.message);i.stack="",n[r]=i}}else n[r]=o;return n}const lx=h.createContext({isTransitioning:!1}),sx=h.createContext(new Map),cx="startTransition",Uh=bl[cx],ux="flushSync",Vh=K3[ux];function fx(e){Uh?Uh(e):e()}function Ho(e){Vh?Vh(e):e()}class dx{constructor(){this.status="pending",this.promise=new Promise((t,n)=>{this.resolve=r=>{this.status==="pending"&&(this.status="resolved",t(r))},this.reject=r=>{this.status==="pending"&&(this.status="rejected",n(r))}})}}function hx(e){let{fallbackElement:t,router:n,future:r}=e,[o,i]=h.useState(n.state),[a,l]=h.useState(),[s,c]=h.useState({isTransitioning:!1}),[f,u]=h.useState(),[d,p]=h.useState(),[y,g]=h.useState(),C=h.useRef(new Map),{v7_startTransition:v}=r||{},m=h.useCallback(S=>{v?fx(S):S()},[v]),x=h.useCallback((S,$)=>{let{deletedFetchers:k,unstable_flushSync:P,unstable_viewTransitionOpts:j}=$;k.forEach(D=>C.current.delete(D)),S.fetchers.forEach((D,N)=>{D.data!==void 0&&C.current.set(N,D.data)});let L=n.window==null||typeof n.window.document.startViewTransition!="function";if(!j||L){P?Ho(()=>i(S)):m(()=>i(S));return}if(P){Ho(()=>{d&&(f&&f.resolve(),d.skipTransition()),c({isTransitioning:!0,flushSync:!0,currentLocation:j.currentLocation,nextLocation:j.nextLocation})});let D=n.window.document.startViewTransition(()=>{Ho(()=>i(S))});D.finished.finally(()=>{Ho(()=>{u(void 0),p(void 0),l(void 0),c({isTransitioning:!1})})}),Ho(()=>p(D));return}d?(f&&f.resolve(),d.skipTransition(),g({state:S,currentLocation:j.currentLocation,nextLocation:j.nextLocation})):(l(S),c({isTransitioning:!0,flushSync:!1,currentLocation:j.currentLocation,nextLocation:j.nextLocation}))},[n.window,d,f,C,m]);h.useLayoutEffect(()=>n.subscribe(x),[n,x]),h.useEffect(()=>{s.isTransitioning&&!s.flushSync&&u(new dx)},[s]),h.useEffect(()=>{if(f&&a&&n.window){let S=a,$=f.promise,k=n.window.document.startViewTransition(async()=>{m(()=>i(S)),await $});k.finished.finally(()=>{u(void 0),p(void 0),l(void 0),c({isTransitioning:!1})}),p(k)}},[m,a,f,n.window]),h.useEffect(()=>{f&&a&&o.location.key===a.location.key&&f.resolve()},[f,d,o.location,a]),h.useEffect(()=>{!s.isTransitioning&&y&&(l(y.state),c({isTransitioning:!0,flushSync:!1,currentLocation:y.currentLocation,nextLocation:y.nextLocation}),g(void 0))},[s.isTransitioning,y]),h.useEffect(()=>{},[]);let E=h.useMemo(()=>({createHref:n.createHref,encodeLocation:n.encodeLocation,go:S=>n.navigate(S),push:(S,$,k)=>n.navigate(S,{state:$,preventScrollReset:k==null?void 0:k.preventScrollReset}),replace:(S,$,k)=>n.navigate(S,{replace:!0,state:$,preventScrollReset:k==null?void 0:k.preventScrollReset})}),[n]),_=n.basename||"/",b=h.useMemo(()=>({router:n,navigator:E,static:!1,basename:_}),[n,E,_]);return h.createElement(h.Fragment,null,h.createElement(zi.Provider,{value:b},h.createElement(Mf.Provider,{value:o},h.createElement(sx.Provider,{value:C.current},h.createElement(lx.Provider,{value:s},h.createElement(Xw,{basename:_,location:o.location,navigationType:o.historyAction,navigator:E,future:{v7_relativeSplatPath:n.future.v7_relativeSplatPath}},o.initialized||n.future.v7_partialHydration?h.createElement(px,{routes:n.routes,future:n.future,state:o}):t))))),null)}function px(e){let{routes:t,future:n,state:r}=e;return Dw(t,void 0,r,n)}const vx=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",mx=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,O0=h.forwardRef(function(t,n){let{onClick:r,relative:o,reloadDocument:i,replace:a,state:l,target:s,to:c,preventScrollReset:f,unstable_viewTransition:u}=t,d=qw(t,nx),{basename:p}=h.useContext(nr),y,g=!1;if(typeof c=="string"&&mx.test(c)&&(y=c,vx))try{let x=new URL(window.location.href),E=c.startsWith("//")?new URL(x.protocol+c):new URL(c),_=Sr(E.pathname,p);E.origin===x.origin&&_!=null?c=_+E.search+E.hash:g=!0}catch{}let C=Lw(c,{relative:o}),v=xx(c,{replace:a,state:l,target:s,preventScrollReset:f,relative:o,unstable_viewTransition:u});function m(x){r&&r(x),x.defaultPrevented||v(x)}return h.createElement("a",wo({},d,{href:y||C,onClick:g||i?r:m,ref:n,target:s}))});function gx(e){let{getKey:t,storageKey:n}=e;return Cx({getKey:t,storageKey:n}),null}var ru;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(ru||(ru={}));var ou;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(ou||(ou={}));function yx(e){let t=h.useContext(zi);return t||te(!1),t}function wx(e){let t=h.useContext(Mf);return t||te(!1),t}function xx(e,t){let{target:n,replace:r,state:o,preventScrollReset:i,relative:a,unstable_viewTransition:l}=t===void 0?{}:t,s=jf(),c=Re(),f=N0(e,{relative:a});return h.useCallback(u=>{if(tx(u,n)){u.preventDefault();let d=r!==void 0?r:Cr(c)===Cr(f);s(e,{replace:d,state:o,preventScrollReset:i,relative:a,unstable_viewTransition:l})}},[c,s,f,r,o,n,e,i,a,l])}const Hh="react-router-scroll-positions";let ha={};function Cx(e){let{getKey:t,storageKey:n}=e===void 0?{}:e,{router:r}=yx(ru.UseScrollRestoration),{restoreScrollPosition:o,preventScrollReset:i}=wx(ou.UseScrollRestoration),{basename:a}=h.useContext(nr),l=Re(),s=Yw(),c=Kw();h.useEffect(()=>(window.history.scrollRestoration="manual",()=>{window.history.scrollRestoration="auto"}),[]),Ex(h.useCallback(()=>{if(c.state==="idle"){let f=(t?t(l,s):null)||l.key;ha[f]=window.scrollY}try{sessionStorage.setItem(n||Hh,JSON.stringify(ha))}catch{}window.history.scrollRestoration="auto"},[n,t,c.state,l,s])),typeof document<"u"&&(h.useLayoutEffect(()=>{try{let f=sessionStorage.getItem(n||Hh);f&&(ha=JSON.parse(f))}catch{}},[n]),h.useLayoutEffect(()=>{let f=t&&a!=="/"?(d,p)=>t(wo({},d,{pathname:Sr(d.pathname,a)||d.pathname}),p):t,u=r==null?void 0:r.enableScrollRestoration(ha,()=>window.scrollY,f);return()=>u&&u()},[r,a,t]),h.useLayoutEffect(()=>{if(o!==!1){if(typeof o=="number"){window.scrollTo(0,o);return}if(l.hash){let f=document.getElementById(decodeURIComponent(l.hash.slice(1)));if(f){f.scrollIntoView();return}}i!==!0&&window.scrollTo(0,0)}},[l,o,i]))}function Ex(e,t){let{capture:n}=t||{};h.useEffect(()=>{let r=n!=null?{capture:n}:void 0;return window.addEventListener("pagehide",e,r),()=>{window.removeEventListener("pagehide",e,r)}},[e,n])}const I0={blogDir:"./pages/blog",rootDir:"docs",title:"Home",titleTemplate:"%s – Home",basePath:"/portfolio",theme:{colorScheme:"dark",variables:{color:{white:{light:"rgba(255 255 255 / 100%)",dark:"rgba(255 255 255 / 100%)"},black:{light:"rgba(0 0 0 / 100%)",dark:"rgba(0 0 0 / 100%)"},background:{light:"#232225",dark:"#232225"},background2:{light:"#2b292d",dark:"#2b292d"},background3:{light:"#2e2c31",dark:"#2e2c31"},background4:{light:"#323035",dark:"#323035"},background5:{light:"#3c393f",dark:"#3c393f"},backgroundAccent:{light:"#5b5bd6",dark:"#5b5bd6"},backgroundAccentHover:{light:"#5b5bd6",dark:"#5b5bd6"},backgroundAccentText:{light:"rgba(255 255 255 / 100%)",dark:"rgba(255 255 255 / 100%)"},backgroundBlueTint:{light:"#008ff519",dark:"#008ff519"},backgroundDark:{light:"#1e1d1f",dark:"#1e1d1f"},backgroundGreenTint:{light:"#00a43319",dark:"#00a43319"},backgroundGreenTint2:{light:"#00a83829",dark:"#00a83829"},backgroundIrisTint:{light:"#000bff19",dark:"#000bff19"},backgroundRedTint:{light:"#f3000d14",dark:"#f3000d14"},backgroundRedTint2:{light:"#ff000824",dark:"#ff000824"},backgroundYellowTint:{light:"#f4dd0016",dark:"#f4dd0016"},border:{light:"#3c393f",dark:"#3c393f"},border2:{light:"#6f6d78",dark:"#6f6d78"},borderAccent:{light:"#6e6ade",dark:"#6e6ade"},borderBlue:{light:"#009eff2a",dark:"#009eff2a"},borderGreen:{light:"#019c393b",dark:"#019c393b"},borderIris:{light:"#303374",dark:"#303374"},borderRed:{light:"#ff000824",dark:"#ff000824"},borderYellow:{light:"#f4dd0016",dark:"#f4dd0016"},heading:{light:"#e9e9ea",dark:"#e9e9ea"},inverted:{light:"rgba(255 255 255 / 100%)",dark:"rgba(255 255 255 / 100%)"},shadow:{light:"#00000000",dark:"#00000000"},shadow2:{light:"rgba(0, 0, 0, 0.05)",dark:"rgba(0, 0, 0, 0.05)"},text:{light:"#cfcfcf",dark:"#cfcfcf"},text2:{light:"#bdbdbe",dark:"#bdbdbe"},text3:{light:"#a7a7a8",dark:"#a7a7a8"},text4:{light:"#656567",dark:"#656567"},textAccent:{light:"#b1a9ff",dark:"#b1a9ff"},textAccentHover:{light:"#6e6ade",dark:"#6e6ade"},textBlue:{light:"#70b8ff",dark:"#70b8ff"},textBlueHover:{light:"#3b9eff",dark:"#3b9eff"},textGreen:{light:"#3dd68c",dark:"#3dd68c"},textGreenHover:{light:"#33b074",dark:"#33b074"},textIris:{light:"#b1a9ff",dark:"#b1a9ff"},textIrisHover:{light:"#6e6ade",dark:"#6e6ade"},textRed:{light:"#ff9592",dark:"#ff9592"},textRedHover:{light:"#ec5d5e",dark:"#ec5d5e"},textYellow:{light:"#f5e147",dark:"#f5e147"},textYellowHover:{light:"#e2a336",dark:"#e2a336"},title:{light:"rgba(255 255 255 / 100%)",dark:"rgba(255 255 255 / 100%)"}},content:{horizontalPadding:"40px",verticalPadding:"80px"}}},topNav:[{text:"CV",link:"/CV",id:32,items:[]},{text:"Blog",link:"/blog",id:33,items:[]}],sidebar:[{text:"Projects",link:"/projects"},{text:"SomaVarDB",link:"/projects/somavardb"},{text:"GermlineVarDB",link:"/projects/germlinevardb"}],markdown:{code:{themes:{dark:"github-dark-dimmed",light:"github-light"}}},socials:[],vite:{base:"/portfolio"}},L0=h.createContext(I0);function M0(){return typeof window<"u",I0}function bx({children:e,config:t}){const[n,r]=h.useState(()=>t||M0());return h.useEffect(()=>{},[]),h.useEffect(()=>{typeof window<"u"},[n]),w.jsx(L0.Provider,{value:n,children:e})}function ot(){return h.useContext(L0)}const _x="modulepreload",Sx=function(e){return"/portfolio/"+e},Wh={},De=function(t,n,r){let o=Promise.resolve();if(n&&n.length>0){const i=document.getElementsByTagName("link");o=Promise.all(n.map(a=>{if(a=Sx(a),a in Wh)return;Wh[a]=!0;const l=a.endsWith(".css"),s=l?'[rel="stylesheet"]':"";if(!!r)for(let u=i.length-1;u>=0;u--){const d=i[u];if(d.href===a&&(!l||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${a}"]${s}`))return;const f=document.createElement("link");if(f.rel=l?"stylesheet":_x,l||(f.as="script",f.crossOrigin=""),f.href=a,document.head.appendChild(f),l)return new Promise((u,d)=>{f.addEventListener("load",u),f.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${a}`)))})}))}return o.then(()=>t()).catch(i=>{const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=i,window.dispatchEvent(a),!a.defaultPrevented)throw i})},Ff=[{lazy:()=>De(()=>import("./index-jTd-SdNy.js"),__vite__mapDeps([])),path:"/",type:"mdx",filePath:"index.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./index-Ce7lYH_A.js"),__vite__mapDeps([0,1,2])),path:"/CV",type:"mdx",filePath:"CV/index.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./index-Ce7lYH_A.js"),__vite__mapDeps([0,1,2])),path:"/CV.html",type:"mdx",filePath:"CV/index.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./react-groupedlist-C3IDjQ-a.js"),__vite__mapDeps([])),path:"/CV/react-groupedlist",type:"jsx",filePath:"CV/react-groupedlist.jsx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./react-groupedlist-C3IDjQ-a.js"),__vite__mapDeps([])),path:"/CV/react-groupedlist.html",type:"jsx",filePath:"CV/react-groupedlist.jsx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./react-timeline-BQRPMqgc.js"),__vite__mapDeps([1,2])),path:"/CV/react-timeline",type:"jsx",filePath:"CV/react-timeline.jsx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./react-timeline-BQRPMqgc.js"),__vite__mapDeps([1,2])),path:"/CV/react-timeline.html",type:"jsx",filePath:"CV/react-timeline.jsx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./expdesign-5536fBV5.js"),__vite__mapDeps([])),path:"/blog/expdesign",type:"mdx",filePath:"blog/expdesign.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./expdesign-5536fBV5.js"),__vite__mapDeps([])),path:"/blog/expdesign.html",type:"mdx",filePath:"blog/expdesign.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./gsea-CNheLLXB.js"),__vite__mapDeps([])),path:"/blog/gsea",type:"mdx",filePath:"blog/gsea.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./gsea-CNheLLXB.js"),__vite__mapDeps([])),path:"/blog/gsea.html",type:"mdx",filePath:"blog/gsea.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./index-C7UbjirX.js"),__vite__mapDeps([])),path:"/blog",type:"mdx",filePath:"blog/index.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./index-C7UbjirX.js"),__vite__mapDeps([])),path:"/blog.html",type:"mdx",filePath:"blog/index.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./germlinevardb-BAxt0Ab1.js"),__vite__mapDeps([])),path:"/projects/germlinevardb",type:"mdx",filePath:"projects/germlinevardb.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./germlinevardb-BAxt0Ab1.js"),__vite__mapDeps([])),path:"/projects/germlinevardb.html",type:"mdx",filePath:"projects/germlinevardb.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./index-BDI8MtUd.js"),__vite__mapDeps([])),path:"/projects",type:"mdx",filePath:"projects/index.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./index-BDI8MtUd.js"),__vite__mapDeps([])),path:"/projects.html",type:"mdx",filePath:"projects/index.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./somavardb-GiTomQGC.js"),__vite__mapDeps([])),path:"/projects/somavardb",type:"mdx",filePath:"projects/somavardb.mdx",lastUpdatedAt:1708970665e3},{lazy:()=>De(()=>import("./somavardb-GiTomQGC.js"),__vite__mapDeps([])),path:"/projects/somavardb.html",type:"mdx",filePath:"projects/somavardb.mdx",lastUpdatedAt:1708970665e3}];var Ls={horizontalPadding:"var(--vocs-content_horizontalPadding)",verticalPadding:"var(--vocs-content_verticalPadding)",width:"var(--vocs-content_width)"},$x={default:"system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif",mono:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},Tx={default:"var(--vocs-fontFamily_default)",mono:"var(--vocs-fontFamily_mono)"},Kh={white:"var(--vocs-color_white)",black:"var(--vocs-color_black)",background:"var(--vocs-color_background)",background2:"var(--vocs-color_background2)",background3:"var(--vocs-color_background3)",background4:"var(--vocs-color_background4)",background5:"var(--vocs-color_background5)",backgroundAccent:"var(--vocs-color_backgroundAccent)",backgroundAccentHover:"var(--vocs-color_backgroundAccentHover)",backgroundAccentText:"var(--vocs-color_backgroundAccentText)",backgroundBlueTint:"var(--vocs-color_backgroundBlueTint)",backgroundDark:"var(--vocs-color_backgroundDark)",backgroundGreenTint:"var(--vocs-color_backgroundGreenTint)",backgroundGreenTint2:"var(--vocs-color_backgroundGreenTint2)",backgroundIrisTint:"var(--vocs-color_backgroundIrisTint)",backgroundRedTint:"var(--vocs-color_backgroundRedTint)",backgroundRedTint2:"var(--vocs-color_backgroundRedTint2)",backgroundYellowTint:"var(--vocs-color_backgroundYellowTint)",border:"var(--vocs-color_border)",border2:"var(--vocs-color_border2)",borderAccent:"var(--vocs-color_borderAccent)",borderBlue:"var(--vocs-color_borderBlue)",borderGreen:"var(--vocs-color_borderGreen)",borderIris:"var(--vocs-color_borderIris)",borderRed:"var(--vocs-color_borderRed)",borderYellow:"var(--vocs-color_borderYellow)",heading:"var(--vocs-color_heading)",inverted:"var(--vocs-color_inverted)",shadow:"var(--vocs-color_shadow)",shadow2:"var(--vocs-color_shadow2)",text:"var(--vocs-color_text)",text2:"var(--vocs-color_text2)",text3:"var(--vocs-color_text3)",text4:"var(--vocs-color_text4)",textAccent:"var(--vocs-color_textAccent)",textAccentHover:"var(--vocs-color_textAccentHover)",textBlue:"var(--vocs-color_textBlue)",textBlueHover:"var(--vocs-color_textBlueHover)",textGreen:"var(--vocs-color_textGreen)",textGreenHover:"var(--vocs-color_textGreenHover)",textIris:"var(--vocs-color_textIris)",textIrisHover:"var(--vocs-color_textIrisHover)",textRed:"var(--vocs-color_textRed)",textRedHover:"var(--vocs-color_textRedHover)",textYellow:"var(--vocs-color_textYellow)",textYellowHover:"var(--vocs-color_textYellowHover)",title:"var(--vocs-color_title)"},Ms={0:"var(--vocs-space_0)",1:"var(--vocs-space_1)",2:"var(--vocs-space_2)",3:"var(--vocs-space_3)",4:"var(--vocs-space_4)",6:"var(--vocs-space_6)",8:"var(--vocs-space_8)",12:"var(--vocs-space_12)",14:"var(--vocs-space_14)",16:"var(--vocs-space_16)",18:"var(--vocs-space_18)",20:"var(--vocs-space_20)",22:"var(--vocs-space_22)",24:"var(--vocs-space_24)",28:"var(--vocs-space_28)",32:"var(--vocs-space_32)",36:"var(--vocs-space_36)",40:"var(--vocs-space_40)",44:"var(--vocs-space_44)",48:"var(--vocs-space_48)",56:"var(--vocs-space_56)",64:"var(--vocs-space_64)",72:"var(--vocs-space_72)",80:"var(--vocs-space_80)"};function j0(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t ")," does not exist in object"));n=n[r]}return n}function D0(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],r=e.constructor();for(var o in e){var i=e[o],a=[...n,o];typeof i=="string"||typeof i=="number"||i==null?r[o]=t(i,a):typeof i=="object"&&!Array.isArray(i)?r[o]=D0(i,t,a):console.warn('Skipping invalid key "'.concat(a.join("."),'". Should be a string, number, null or object. Received: "').concat(Array.isArray(i)?"Array":typeof i,'"'))}return r}function Yt(e,t){var n={};if(typeof t=="object"){var r=e;D0(t,(l,s)=>{if(l!=null){var c=kx(r,s);n[Yh(c)]=String(l)}})}else{var o=e;for(var i in o){var a=o[i];a!=null&&(n[Yh(i)]=a)}}return Object.defineProperty(n,"toString",{value:function(){return Object.keys(this).map(s=>"".concat(s,":").concat(this[s])).join(";")},writable:!1}),n}var Rx="var(--vocs_ExternalLink_iconUrl)",Nx="vocs_ExternalLink";const Px=h.forwardRef(({className:e,children:t,hideExternalIcon:n,href:r,...o},i)=>{const{basePath:a}=ot(),l=a;return w.jsx("a",{ref:i,className:I(e,n||typeof t!="string"?void 0:Nx),href:r,target:"_blank",rel:"noopener noreferrer",style:Yt({[Rx]:`url(${l}/.vocs/icons/arrow-diagonal.svg)`}),...o,children:t})});var Gh="vocs_Link_accent_underlined",Qh="vocs_Link",Zh="vocs_Link_styleless",iu=new Map,pa=new WeakMap,Xh=0,Ax=void 0;function Ox(e){return e?(pa.has(e)||(Xh+=1,pa.set(e,Xh.toString())),pa.get(e)):"0"}function Ix(e){return Object.keys(e).sort().filter(t=>e[t]!==void 0).map(t=>`${t}_${t==="root"?Ox(e.root):e[t]}`).toString()}function Lx(e){const t=Ix(e);let n=iu.get(t);if(!n){const r=new Map;let o;const i=new IntersectionObserver(a=>{a.forEach(l=>{var s;const c=l.isIntersecting&&o.some(f=>l.intersectionRatio>=f);e.trackVisibility&&typeof l.isVisible>"u"&&(l.isVisible=c),(s=r.get(l.target))==null||s.forEach(f=>{f(c,l)})})},e);o=i.thresholds||(Array.isArray(e.threshold)?e.threshold:[e.threshold||0]),n={id:t,observer:i,elements:r},iu.set(t,n)}return n}function Mx(e,t,n={},r=Ax){if(typeof window.IntersectionObserver>"u"&&r!==void 0){const s=e.getBoundingClientRect();return t(r,{isIntersecting:r,target:e,intersectionRatio:typeof n.threshold=="number"?n.threshold:0,time:0,boundingClientRect:s,intersectionRect:s,rootBounds:s}),()=>{}}const{id:o,observer:i,elements:a}=Lx(n),l=a.get(e)||[];return a.has(e)||a.set(e,l),l.push(t),i.observe(e),function(){l.splice(l.indexOf(t),1),l.length===0&&(a.delete(e),i.unobserve(e)),a.size===0&&(i.disconnect(),iu.delete(o))}}function F0({threshold:e,delay:t,trackVisibility:n,rootMargin:r,root:o,triggerOnce:i,skip:a,initialInView:l,fallbackInView:s,onChange:c}={}){var f;const[u,d]=h.useState(null),p=h.useRef(),[y,g]=h.useState({inView:!!l,entry:void 0});p.current=c,h.useEffect(()=>{if(a||!u)return;let x;return x=Mx(u,(E,_)=>{g({inView:E,entry:_}),p.current&&p.current(E,_),_.isIntersecting&&i&&x&&(x(),x=void 0)},{root:o,rootMargin:r,threshold:e,trackVisibility:n,delay:t},s),()=>{x&&x()}},[Array.isArray(e)?e.toString():e,u,o,r,i,a,n,s,t]);const C=(f=y.entry)==null?void 0:f.target,v=h.useRef();!u&&C&&!i&&!a&&v.current!==C&&(v.current=C,g({inView:!!l,entry:void 0}));const m=[d,y.inView,y.entry];return m.ref=m[0],m.inView=m[1],m.entry=m[2],m}function jx(...e){return t=>{Dx(t,...e)}}function Dx(e,...t){t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}const Gn=h.forwardRef((e,t)=>{const n=()=>{var i;return(i=Ff.find(a=>a.path===e.to))==null?void 0:i.lazy()},{ref:r,inView:o}=F0();return h.useEffect(()=>{o&&n()},[o,n]),w.jsx(O0,{ref:jx(t,r),...e})}),nn=h.forwardRef((e,t)=>{const{href:n,variant:r="accent underlined"}=e,{pathname:o}=Re();if(n!=null&&n.match(/^(www|https?)/))return w.jsx(Px,{...e,ref:t,className:I(e.className,Qh,r==="accent underlined"&&Gh,r==="styleless"&&Zh),hideExternalIcon:e.hideExternalIcon});const[i,a]=(n||"").split("#"),l=`${i||o}${a?`#${a}`:""}`;return w.jsx(Gn,{...e,ref:t,className:I(e.className,Qh,r==="accent underlined"&&Gh,r==="styleless"&&Zh),to:l})});var Fx="vocs_NotFound_divider",zx="vocs_NotFound",Bx="vocs_H1",z0="vocs_Heading",B0="vocs_Heading_slugTarget";function To({level:e,...t}){const n=`h${e}`;return w.jsxs(n,{...t,id:void 0,className:I(t.className,z0),children:[w.jsx("div",{id:t.id,className:B0}),t.children]})}function U0(e){return w.jsx(To,{...e,className:I(e.className,Bx),level:1})}var Ux="vocs_Paragraph";function V0(e){return w.jsx("p",{...e,className:I(e.className,Ux)})}function Vx(){return w.jsxs("div",{className:zx,children:[w.jsx(U0,{children:"Page Not Found"}),w.jsx("div",{style:{height:Ms[24]}}),w.jsx("hr",{className:Fx}),w.jsx("div",{style:{height:Ms[24]}}),w.jsx(V0,{children:"The page you were looking for could not be found."}),w.jsx("div",{style:{height:Ms[8]}}),w.jsx(nn,{href:"/",children:"Go to Home Page"})]})}var Hx="var(--vocs_Banner_bannerBackgroundColor)",Wx="var(--vocs_Banner_bannerHeight)",Kx="var(--vocs_Banner_bannerTextColor)",Yx="vocs_Banner_closeButton",Gx="vocs_Banner_content",Qx="vocs_Banner_inner",Zx="vocs_Banner";const Xx=Object.getPrototypeOf(Jx).constructor;async function Jx(e,t){return new Xx(String(e))(t)}function qx(e,t){return new Function(String(e))(t)}function Tr(e,t){if(e==null)return{};var n={},r=Object.keys(e),o,i;for(i=0;i=0)&&(n[o]=e[o]);return n}var e5=["color"],t5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,e5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M6.85355 3.14645C7.04882 3.34171 7.04882 3.65829 6.85355 3.85355L3.70711 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H3.70711L6.85355 11.1464C7.04882 11.3417 7.04882 11.6583 6.85355 11.8536C6.65829 12.0488 6.34171 12.0488 6.14645 11.8536L2.14645 7.85355C1.95118 7.65829 1.95118 7.34171 2.14645 7.14645L6.14645 3.14645C6.34171 2.95118 6.65829 2.95118 6.85355 3.14645Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),n5=["color"],r5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,n5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M6.1584 3.13508C6.35985 2.94621 6.67627 2.95642 6.86514 3.15788L10.6151 7.15788C10.7954 7.3502 10.7954 7.64949 10.6151 7.84182L6.86514 11.8418C6.67627 12.0433 6.35985 12.0535 6.1584 11.8646C5.95694 11.6757 5.94673 11.3593 6.1356 11.1579L9.565 7.49985L6.1356 3.84182C5.94673 3.64036 5.95694 3.32394 6.1584 3.13508Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),o5=["color"],i5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,o5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M12.8536 2.85355C13.0488 2.65829 13.0488 2.34171 12.8536 2.14645C12.6583 1.95118 12.3417 1.95118 12.1464 2.14645L7.5 6.79289L2.85355 2.14645C2.65829 1.95118 2.34171 1.95118 2.14645 2.14645C1.95118 2.34171 1.95118 2.65829 2.14645 2.85355L6.79289 7.5L2.14645 12.1464C1.95118 12.3417 1.95118 12.6583 2.14645 12.8536C2.34171 13.0488 2.65829 13.0488 2.85355 12.8536L7.5 8.20711L12.1464 12.8536C12.3417 13.0488 12.6583 13.0488 12.8536 12.8536C13.0488 12.6583 13.0488 12.3417 12.8536 12.1464L8.20711 7.5L12.8536 2.85355Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),a5=["color"],l5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,a5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M3.5 2C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V6H8.5C8.22386 6 8 5.77614 8 5.5V2H3.5ZM9 2.70711L11.2929 5H9V2.70711ZM2 2.5C2 1.67157 2.67157 1 3.5 1H8.5C8.63261 1 8.75979 1.05268 8.85355 1.14645L12.8536 5.14645C12.9473 5.24021 13 5.36739 13 5.5V12.5C13 13.3284 12.3284 14 11.5 14H3.5C2.67157 14 2 13.3284 2 12.5V2.5Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),s5=["color"],c5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,s5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M1.5 5.25C1.91421 5.25 2.25 4.91421 2.25 4.5C2.25 4.08579 1.91421 3.75 1.5 3.75C1.08579 3.75 0.75 4.08579 0.75 4.5C0.75 4.91421 1.08579 5.25 1.5 5.25ZM4 4.5C4 4.22386 4.22386 4 4.5 4H13.5C13.7761 4 14 4.22386 14 4.5C14 4.77614 13.7761 5 13.5 5H4.5C4.22386 5 4 4.77614 4 4.5ZM4.5 7C4.22386 7 4 7.22386 4 7.5C4 7.77614 4.22386 8 4.5 8H13.5C13.7761 8 14 7.77614 14 7.5C14 7.22386 13.7761 7 13.5 7H4.5ZM4.5 10C4.22386 10 4 10.2239 4 10.5C4 10.7761 4.22386 11 4.5 11H13.5C13.7761 11 14 10.7761 14 10.5C14 10.2239 13.7761 10 13.5 10H4.5ZM2.25 7.5C2.25 7.91421 1.91421 8.25 1.5 8.25C1.08579 8.25 0.75 7.91421 0.75 7.5C0.75 7.08579 1.08579 6.75 1.5 6.75C1.91421 6.75 2.25 7.08579 2.25 7.5ZM1.5 11.25C1.91421 11.25 2.25 10.9142 2.25 10.5C2.25 10.0858 1.91421 9.75 1.5 9.75C1.08579 9.75 0.75 10.0858 0.75 10.5C0.75 10.9142 1.08579 11.25 1.5 11.25Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),u5=["color"],zf=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,u5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M10 6.5C10 8.433 8.433 10 6.5 10C4.567 10 3 8.433 3 6.5C3 4.567 4.567 3 6.5 3C8.433 3 10 4.567 10 6.5ZM9.30884 10.0159C8.53901 10.6318 7.56251 11 6.5 11C4.01472 11 2 8.98528 2 6.5C2 4.01472 4.01472 2 6.5 2C8.98528 2 11 4.01472 11 6.5C11 7.56251 10.6318 8.53901 10.0159 9.30884L12.8536 12.1464C13.0488 12.3417 13.0488 12.6583 12.8536 12.8536C12.6583 13.0488 12.3417 13.0488 12.1464 12.8536L9.30884 10.0159Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),f5=["color"],d5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,f5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M12.1464 1.14645C12.3417 0.951184 12.6583 0.951184 12.8535 1.14645L14.8535 3.14645C15.0488 3.34171 15.0488 3.65829 14.8535 3.85355L10.9109 7.79618C10.8349 7.87218 10.7471 7.93543 10.651 7.9835L6.72359 9.94721C6.53109 10.0435 6.29861 10.0057 6.14643 9.85355C5.99425 9.70137 5.95652 9.46889 6.05277 9.27639L8.01648 5.34897C8.06455 5.25283 8.1278 5.16507 8.2038 5.08907L12.1464 1.14645ZM12.5 2.20711L8.91091 5.79618L7.87266 7.87267L8.12731 8.12732L10.2038 7.08907L13.7929 3.5L12.5 2.20711ZM9.99998 2L8.99998 3H4.9C4.47171 3 4.18056 3.00039 3.95552 3.01877C3.73631 3.03668 3.62421 3.06915 3.54601 3.10899C3.35785 3.20487 3.20487 3.35785 3.10899 3.54601C3.06915 3.62421 3.03669 3.73631 3.01878 3.95552C3.00039 4.18056 3 4.47171 3 4.9V11.1C3 11.5283 3.00039 11.8194 3.01878 12.0445C3.03669 12.2637 3.06915 12.3758 3.10899 12.454C3.20487 12.6422 3.35785 12.7951 3.54601 12.891C3.62421 12.9309 3.73631 12.9633 3.95552 12.9812C4.18056 12.9996 4.47171 13 4.9 13H11.1C11.5283 13 11.8194 12.9996 12.0445 12.9812C12.2637 12.9633 12.3758 12.9309 12.454 12.891C12.6422 12.7951 12.7951 12.6422 12.891 12.454C12.9309 12.3758 12.9633 12.2637 12.9812 12.0445C12.9996 11.8194 13 11.5283 13 11.1V6.99998L14 5.99998V11.1V11.1207C14 11.5231 14 11.8553 13.9779 12.1259C13.9549 12.407 13.9057 12.6653 13.782 12.908C13.5903 13.2843 13.2843 13.5903 12.908 13.782C12.6653 13.9057 12.407 13.9549 12.1259 13.9779C11.8553 14 11.5231 14 11.1207 14H11.1H4.9H4.87934C4.47686 14 4.14468 14 3.87409 13.9779C3.59304 13.9549 3.33469 13.9057 3.09202 13.782C2.7157 13.5903 2.40973 13.2843 2.21799 12.908C2.09434 12.6653 2.04506 12.407 2.0221 12.1259C1.99999 11.8553 1.99999 11.5231 2 11.1207V11.1206V11.1V4.9V4.87935V4.87932V4.87931C1.99999 4.47685 1.99999 4.14468 2.0221 3.87409C2.04506 3.59304 2.09434 3.33469 2.21799 3.09202C2.40973 2.71569 2.7157 2.40973 3.09202 2.21799C3.33469 2.09434 3.59304 2.04506 3.87409 2.0221C4.14468 1.99999 4.47685 1.99999 4.87932 2H4.87935H4.9H9.99998Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))});function au(e,t){if(typeof e!="object"||e===null)return e;if(Array.isArray(e))return e.map((r,o)=>au(r,o));const n=e.props.children?{...e.props,children:au(e.props.children)}:e.props;return Q.createElement(e.type,{...n,key:t})}function h5({hide:e}){const{banner:t}=ot(),n=h.useMemo(()=>{const r=(t==null?void 0:t.content)??"";if(!r)return null;if(typeof r!="string")return()=>au(r);const{default:o}=qx(r,{...Uy,Fragment:h.Fragment});return o},[t]);return n?w.jsx("div",{className:I(Zx),style:Yt({[Hx]:t==null?void 0:t.backgroundColor,[Kx]:t==null?void 0:t.textColor}),children:w.jsxs("div",{className:I(Qx),children:[w.jsx("div",{className:I(Gx),children:w.jsx(n,{})}),(t==null?void 0:t.dismissable)!=="false"&&w.jsx("button",{className:I(Yx),onClick:e,type:"button",children:w.jsx(i5,{width:14,height:14})})]})}):null}var p5="vocs_Content";function H0({children:e,className:t}){return w.jsx("article",{className:I(t,p5),children:e})}function W0({items:e,pathname:t}){const n=t.replace(/\.html$/,""),r=[];for(const o of e)(o.link&&n.startsWith(o.match||o.link)||o.items&&W0({items:o.items,pathname:t}).length>0)&&r.push(o.id);return r}function Bi({items:e,pathname:t}){return h.useMemo(()=>W0({items:e,pathname:t}),[e,t])}function kr(){const e=h.useContext(K0);if(!e)throw new Error("`usePageData` must be used within `PageDataContext.Provider`.");return e}const K0=h.createContext(void 0);function Bl(){const{pathname:e}=Re(),t=ot(),{sidebar:n}=t;if(!n)return{items:[]};if(Array.isArray(n))return{items:n};const r=h.useMemo(()=>{const o=Object.keys(n).filter(i=>e.startsWith(i));return o[o.length-1]},[n,e]);return r?Array.isArray(n[r])?{key:r,items:n[r]}:{...n[r],key:r}:{items:[]}}function Rr(){const e=Bl(),{frontmatter:t}=kr(),{layout:n,showLogo:r,showOutline:o,showSidebar:i,showTopNav:a}=t||{},l=n??"docs";return{layout:l,get showLogo(){return typeof r<"u"?r:!0},get showOutline(){return typeof o<"u"?o:l==="docs"},get showSidebar(){return e.items.length===0?!1:typeof i<"u"?i:!(l==="minimal"||l==="landing")},get showTopNav(){return typeof a<"u"?a:!0}}}function v5(){const[e,t]=h.useState(()=>{if(!(typeof window>"u")){if(localStorage.getItem("vocs.theme")){const n=localStorage.getItem("vocs.theme");if(n)return n}return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}});return h.useEffect(()=>{e&&localStorage.setItem("vocs.theme",e),e==="dark"?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")},[e]),{theme:e,toggle(){t(n=>n==="light"?"dark":"light")}}}var m5="vocs_utils_visibleDark",g5="vocs_utils_visibleLight",Y0="vocs_utils_visuallyHidden";function Y(){return Y=Object.assign?Object.assign.bind():function(e){for(var t=1;te.forEach(n=>y5(n,t))}function Be(...e){return h.useCallback(G0(...e),e)}function En(e,t=[]){let n=[];function r(i,a){const l=h.createContext(a),s=n.length;n=[...n,a];function c(u){const{scope:d,children:p,...y}=u,g=(d==null?void 0:d[e][s])||l,C=h.useMemo(()=>y,Object.values(y));return h.createElement(g.Provider,{value:C},p)}function f(u,d){const p=(d==null?void 0:d[e][s])||l,y=h.useContext(p);if(y)return y;if(a!==void 0)return a;throw new Error(`\`${u}\` must be used within \`${i}\``)}return c.displayName=i+"Provider",[c,f]}const o=()=>{const i=n.map(a=>h.createContext(a));return function(l){const s=(l==null?void 0:l[e])||i;return h.useMemo(()=>({[`__scope${e}`]:{...l,[e]:s}}),[l,s])}};return o.scopeName=e,[r,w5(o,...t)]}function w5(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const a=r.reduce((l,{useScope:s,scopeName:c})=>{const u=s(i)[`__scope${c}`];return{...l,...u}},{});return h.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return n.scopeName=t.scopeName,n}const gn=globalThis!=null&&globalThis.document?h.useLayoutEffect:()=>{},x5=bl.useId||(()=>{});let C5=0;function rn(e){const[t,n]=h.useState(x5());return gn(()=>{e||n(r=>r??String(C5++))},[e]),e||(t?`radix-${t}`:"")}function at(e){const t=h.useRef(e);return h.useEffect(()=>{t.current=e}),h.useMemo(()=>(...n)=>{var r;return(r=t.current)===null||r===void 0?void 0:r.call(t,...n)},[])}function rr({prop:e,defaultProp:t,onChange:n=()=>{}}){const[r,o]=E5({defaultProp:t,onChange:n}),i=e!==void 0,a=i?e:r,l=at(n),s=h.useCallback(c=>{if(i){const u=typeof c=="function"?c(e):c;u!==e&&l(u)}else o(c)},[i,e,o,l]);return[a,s]}function E5({defaultProp:e,onChange:t}){const n=h.useState(e),[r]=n,o=h.useRef(r),i=at(t);return h.useEffect(()=>{o.current!==r&&(i(r),o.current=r)},[r,o,i]),n}const xo=h.forwardRef((e,t)=>{const{children:n,...r}=e,o=h.Children.toArray(n),i=o.find(_5);if(i){const a=i.props.children,l=o.map(s=>s===i?h.Children.count(a)>1?h.Children.only(null):h.isValidElement(a)?a.props.children:null:s);return h.createElement(lu,Y({},r,{ref:t}),h.isValidElement(a)?h.cloneElement(a,void 0,l):null)}return h.createElement(lu,Y({},r,{ref:t}),n)});xo.displayName="Slot";const lu=h.forwardRef((e,t)=>{const{children:n,...r}=e;return h.isValidElement(n)?h.cloneElement(n,{...S5(r,n.props),ref:t?G0(t,n.ref):n.ref}):h.Children.count(n)>1?h.Children.only(null):null});lu.displayName="SlotClone";const b5=({children:e})=>h.createElement(h.Fragment,null,e);function _5(e){return h.isValidElement(e)&&e.type===b5}function S5(e,t){const n={...t};for(const r in t){const o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...l)=>{i(...l),o(...l)}:o&&(n[r]=o):r==="style"?n[r]={...o,...i}:r==="className"&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}const $5=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],ue=$5.reduce((e,t)=>{const n=h.forwardRef((r,o)=>{const{asChild:i,...a}=r,l=i?xo:t;return h.useEffect(()=>{window[Symbol.for("radix-ui")]=!0},[]),h.createElement(l,Y({},a,{ref:o}))});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function su(e,t){e&&So.flushSync(()=>e.dispatchEvent(t))}function T5(e,t=globalThis==null?void 0:globalThis.document){const n=at(e);h.useEffect(()=>{const r=o=>{o.key==="Escape"&&n(o)};return t.addEventListener("keydown",r),()=>t.removeEventListener("keydown",r)},[n,t])}const cu="dismissableLayer.update",k5="dismissableLayer.pointerDownOutside",R5="dismissableLayer.focusOutside";let Jh;const N5=h.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Bf=h.forwardRef((e,t)=>{var n;const{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:o,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:l,onDismiss:s,...c}=e,f=h.useContext(N5),[u,d]=h.useState(null),p=(n=u==null?void 0:u.ownerDocument)!==null&&n!==void 0?n:globalThis==null?void 0:globalThis.document,[,y]=h.useState({}),g=Be(t,$=>d($)),C=Array.from(f.layers),[v]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),m=C.indexOf(v),x=u?C.indexOf(u):-1,E=f.layersWithOutsidePointerEventsDisabled.size>0,_=x>=m,b=P5($=>{const k=$.target,P=[...f.branches].some(j=>j.contains(k));!_||P||(i==null||i($),l==null||l($),$.defaultPrevented||s==null||s())},p),S=A5($=>{const k=$.target;[...f.branches].some(j=>j.contains(k))||(a==null||a($),l==null||l($),$.defaultPrevented||s==null||s())},p);return T5($=>{x===f.layers.size-1&&(o==null||o($),!$.defaultPrevented&&s&&($.preventDefault(),s()))},p),h.useEffect(()=>{if(u)return r&&(f.layersWithOutsidePointerEventsDisabled.size===0&&(Jh=p.body.style.pointerEvents,p.body.style.pointerEvents="none"),f.layersWithOutsidePointerEventsDisabled.add(u)),f.layers.add(u),qh(),()=>{r&&f.layersWithOutsidePointerEventsDisabled.size===1&&(p.body.style.pointerEvents=Jh)}},[u,p,r,f]),h.useEffect(()=>()=>{u&&(f.layers.delete(u),f.layersWithOutsidePointerEventsDisabled.delete(u),qh())},[u,f]),h.useEffect(()=>{const $=()=>y({});return document.addEventListener(cu,$),()=>document.removeEventListener(cu,$)},[]),h.createElement(ue.div,Y({},c,{ref:g,style:{pointerEvents:E?_?"auto":"none":void 0,...e.style},onFocusCapture:ae(e.onFocusCapture,S.onFocusCapture),onBlurCapture:ae(e.onBlurCapture,S.onBlurCapture),onPointerDownCapture:ae(e.onPointerDownCapture,b.onPointerDownCapture)}))});function P5(e,t=globalThis==null?void 0:globalThis.document){const n=at(e),r=h.useRef(!1),o=h.useRef(()=>{});return h.useEffect(()=>{const i=l=>{if(l.target&&!r.current){let c=function(){Q0(k5,n,s,{discrete:!0})};const s={originalEvent:l};l.pointerType==="touch"?(t.removeEventListener("click",o.current),o.current=c,t.addEventListener("click",o.current,{once:!0})):c()}else t.removeEventListener("click",o.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener("pointerdown",i)},0);return()=>{window.clearTimeout(a),t.removeEventListener("pointerdown",i),t.removeEventListener("click",o.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function A5(e,t=globalThis==null?void 0:globalThis.document){const n=at(e),r=h.useRef(!1);return h.useEffect(()=>{const o=i=>{i.target&&!r.current&&Q0(R5,n,{originalEvent:i},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function qh(){const e=new CustomEvent(cu);document.dispatchEvent(e)}function Q0(e,t,n,{discrete:r}){const o=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?su(o,i):o.dispatchEvent(i)}const js="focusScope.autoFocusOnMount",Ds="focusScope.autoFocusOnUnmount",ep={bubbles:!1,cancelable:!0},Z0=h.forwardRef((e,t)=>{const{loop:n=!1,trapped:r=!1,onMountAutoFocus:o,onUnmountAutoFocus:i,...a}=e,[l,s]=h.useState(null),c=at(o),f=at(i),u=h.useRef(null),d=Be(t,g=>s(g)),p=h.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;h.useEffect(()=>{if(r){let g=function(x){if(p.paused||!l)return;const E=x.target;l.contains(E)?u.current=E:Pn(u.current,{select:!0})},C=function(x){if(p.paused||!l)return;const E=x.relatedTarget;E!==null&&(l.contains(E)||Pn(u.current,{select:!0}))},v=function(x){if(document.activeElement===document.body)for(const _ of x)_.removedNodes.length>0&&Pn(l)};document.addEventListener("focusin",g),document.addEventListener("focusout",C);const m=new MutationObserver(v);return l&&m.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",g),document.removeEventListener("focusout",C),m.disconnect()}}},[r,l,p.paused]),h.useEffect(()=>{if(l){np.add(p);const g=document.activeElement;if(!l.contains(g)){const v=new CustomEvent(js,ep);l.addEventListener(js,c),l.dispatchEvent(v),v.defaultPrevented||(O5(D5(X0(l)),{select:!0}),document.activeElement===g&&Pn(l))}return()=>{l.removeEventListener(js,c),setTimeout(()=>{const v=new CustomEvent(Ds,ep);l.addEventListener(Ds,f),l.dispatchEvent(v),v.defaultPrevented||Pn(g??document.body,{select:!0}),l.removeEventListener(Ds,f),np.remove(p)},0)}}},[l,c,f,p]);const y=h.useCallback(g=>{if(!n&&!r||p.paused)return;const C=g.key==="Tab"&&!g.altKey&&!g.ctrlKey&&!g.metaKey,v=document.activeElement;if(C&&v){const m=g.currentTarget,[x,E]=I5(m);x&&E?!g.shiftKey&&v===E?(g.preventDefault(),n&&Pn(x,{select:!0})):g.shiftKey&&v===x&&(g.preventDefault(),n&&Pn(E,{select:!0})):v===m&&g.preventDefault()}},[n,r,p.paused]);return h.createElement(ue.div,Y({tabIndex:-1},a,{ref:d,onKeyDown:y}))});function O5(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(Pn(r,{select:t}),document.activeElement!==n)return}function I5(e){const t=X0(e),n=tp(t,e),r=tp(t.reverse(),e);return[n,r]}function X0(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function tp(e,t){for(const n of e)if(!L5(n,{upTo:t}))return n}function L5(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function M5(e){return e instanceof HTMLInputElement&&"select"in e}function Pn(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&M5(e)&&t&&e.select()}}const np=j5();function j5(){let e=[];return{add(t){const n=e[0];t!==n&&(n==null||n.pause()),e=rp(e,t),e.unshift(t)},remove(t){var n;e=rp(e,t),(n=e[0])===null||n===void 0||n.resume()}}}function rp(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function D5(e){return e.filter(t=>t.tagName!=="A")}const J0=h.forwardRef((e,t)=>{var n;const{container:r=globalThis==null||(n=globalThis.document)===null||n===void 0?void 0:n.body,...o}=e;return r?v0.createPortal(h.createElement(ue.div,Y({},o,{ref:t})),r):null});function F5(e,t){return h.useReducer((n,r)=>{const o=t[n][r];return o??n},e)}const bn=e=>{const{present:t,children:n}=e,r=z5(t),o=typeof n=="function"?n({present:r.isPresent}):h.Children.only(n),i=Be(r.ref,o.ref);return typeof n=="function"||r.isPresent?h.cloneElement(o,{ref:i}):null};bn.displayName="Presence";function z5(e){const[t,n]=h.useState(),r=h.useRef({}),o=h.useRef(e),i=h.useRef("none"),a=e?"mounted":"unmounted",[l,s]=F5(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return h.useEffect(()=>{const c=va(r.current);i.current=l==="mounted"?c:"none"},[l]),gn(()=>{const c=r.current,f=o.current;if(f!==e){const d=i.current,p=va(c);e?s("MOUNT"):p==="none"||(c==null?void 0:c.display)==="none"?s("UNMOUNT"):s(f&&d!==p?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,s]),gn(()=>{if(t){const c=u=>{const p=va(r.current).includes(u.animationName);u.target===t&&p&&So.flushSync(()=>s("ANIMATION_END"))},f=u=>{u.target===t&&(i.current=va(r.current))};return t.addEventListener("animationstart",f),t.addEventListener("animationcancel",c),t.addEventListener("animationend",c),()=>{t.removeEventListener("animationstart",f),t.removeEventListener("animationcancel",c),t.removeEventListener("animationend",c)}}else s("ANIMATION_END")},[t,s]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:h.useCallback(c=>{c&&(r.current=getComputedStyle(c)),n(c)},[])}}function va(e){return(e==null?void 0:e.animationName)||"none"}let Fs=0;function q0(){h.useEffect(()=>{var e,t;const n=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",(e=n[0])!==null&&e!==void 0?e:op()),document.body.insertAdjacentElement("beforeend",(t=n[1])!==null&&t!==void 0?t:op()),Fs++,()=>{Fs===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(r=>r.remove()),Fs--}},[])}function op(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.cssText="outline: none; opacity: 0; position: fixed; pointer-events: none",e}var qt=function(){return qt=Object.assign||function(t){for(var n,r=1,o=arguments.length;r"u")return n4;var t=r4(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},i4=rg(),a4=function(e,t,n,r){var o=e.left,i=e.top,a=e.right,l=e.gap;return n===void 0&&(n="margin"),` + */function wo(){return wo=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(n[o]=e[o]);return n}function ex(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function tx(e,t){return e.button===0&&(!t||t==="_self")&&!ex(e)}const nx=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","unstable_viewTransition"],rx="6";try{window.__reactRouterVersion=rx}catch{}function ox(e,t){return Ew({basename:t==null?void 0:t.basename,future:wo({},t==null?void 0:t.future,{v7_prependBasename:!0}),history:G3({window:t==null?void 0:t.window}),hydrationData:(t==null?void 0:t.hydrationData)||ix(),routes:e,mapRouteProperties:Jw,window:t==null?void 0:t.window}).initialize()}function ix(){var e;let t=(e=window)==null?void 0:e.__staticRouterHydrationData;return t&&t.errors&&(t=wo({},t,{errors:ax(t.errors)})),t}function ax(e){if(!e)return null;let t=Object.entries(e),n={};for(let[r,o]of t)if(o&&o.__type==="RouteErrorResponse")n[r]=new If(o.status,o.statusText,o.data,o.internal===!0);else if(o&&o.__type==="Error"){if(o.__subType){let i=window[o.__subType];if(typeof i=="function")try{let a=new i(o.message);a.stack="",n[r]=a}catch{}}if(n[r]==null){let i=new Error(o.message);i.stack="",n[r]=i}}else n[r]=o;return n}const lx=h.createContext({isTransitioning:!1}),sx=h.createContext(new Map),cx="startTransition",Uh=bl[cx],ux="flushSync",Vh=K3[ux];function fx(e){Uh?Uh(e):e()}function Ho(e){Vh?Vh(e):e()}class dx{constructor(){this.status="pending",this.promise=new Promise((t,n)=>{this.resolve=r=>{this.status==="pending"&&(this.status="resolved",t(r))},this.reject=r=>{this.status==="pending"&&(this.status="rejected",n(r))}})}}function hx(e){let{fallbackElement:t,router:n,future:r}=e,[o,i]=h.useState(n.state),[a,l]=h.useState(),[s,c]=h.useState({isTransitioning:!1}),[f,u]=h.useState(),[d,p]=h.useState(),[y,g]=h.useState(),C=h.useRef(new Map),{v7_startTransition:v}=r||{},m=h.useCallback(S=>{v?fx(S):S()},[v]),x=h.useCallback((S,$)=>{let{deletedFetchers:k,unstable_flushSync:P,unstable_viewTransitionOpts:j}=$;k.forEach(D=>C.current.delete(D)),S.fetchers.forEach((D,N)=>{D.data!==void 0&&C.current.set(N,D.data)});let L=n.window==null||typeof n.window.document.startViewTransition!="function";if(!j||L){P?Ho(()=>i(S)):m(()=>i(S));return}if(P){Ho(()=>{d&&(f&&f.resolve(),d.skipTransition()),c({isTransitioning:!0,flushSync:!0,currentLocation:j.currentLocation,nextLocation:j.nextLocation})});let D=n.window.document.startViewTransition(()=>{Ho(()=>i(S))});D.finished.finally(()=>{Ho(()=>{u(void 0),p(void 0),l(void 0),c({isTransitioning:!1})})}),Ho(()=>p(D));return}d?(f&&f.resolve(),d.skipTransition(),g({state:S,currentLocation:j.currentLocation,nextLocation:j.nextLocation})):(l(S),c({isTransitioning:!0,flushSync:!1,currentLocation:j.currentLocation,nextLocation:j.nextLocation}))},[n.window,d,f,C,m]);h.useLayoutEffect(()=>n.subscribe(x),[n,x]),h.useEffect(()=>{s.isTransitioning&&!s.flushSync&&u(new dx)},[s]),h.useEffect(()=>{if(f&&a&&n.window){let S=a,$=f.promise,k=n.window.document.startViewTransition(async()=>{m(()=>i(S)),await $});k.finished.finally(()=>{u(void 0),p(void 0),l(void 0),c({isTransitioning:!1})}),p(k)}},[m,a,f,n.window]),h.useEffect(()=>{f&&a&&o.location.key===a.location.key&&f.resolve()},[f,d,o.location,a]),h.useEffect(()=>{!s.isTransitioning&&y&&(l(y.state),c({isTransitioning:!0,flushSync:!1,currentLocation:y.currentLocation,nextLocation:y.nextLocation}),g(void 0))},[s.isTransitioning,y]),h.useEffect(()=>{},[]);let E=h.useMemo(()=>({createHref:n.createHref,encodeLocation:n.encodeLocation,go:S=>n.navigate(S),push:(S,$,k)=>n.navigate(S,{state:$,preventScrollReset:k==null?void 0:k.preventScrollReset}),replace:(S,$,k)=>n.navigate(S,{replace:!0,state:$,preventScrollReset:k==null?void 0:k.preventScrollReset})}),[n]),_=n.basename||"/",b=h.useMemo(()=>({router:n,navigator:E,static:!1,basename:_}),[n,E,_]);return h.createElement(h.Fragment,null,h.createElement(zi.Provider,{value:b},h.createElement(Mf.Provider,{value:o},h.createElement(sx.Provider,{value:C.current},h.createElement(lx.Provider,{value:s},h.createElement(Xw,{basename:_,location:o.location,navigationType:o.historyAction,navigator:E,future:{v7_relativeSplatPath:n.future.v7_relativeSplatPath}},o.initialized||n.future.v7_partialHydration?h.createElement(px,{routes:n.routes,future:n.future,state:o}):t))))),null)}function px(e){let{routes:t,future:n,state:r}=e;return Dw(t,void 0,r,n)}const vx=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",mx=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,O0=h.forwardRef(function(t,n){let{onClick:r,relative:o,reloadDocument:i,replace:a,state:l,target:s,to:c,preventScrollReset:f,unstable_viewTransition:u}=t,d=qw(t,nx),{basename:p}=h.useContext(nr),y,g=!1;if(typeof c=="string"&&mx.test(c)&&(y=c,vx))try{let x=new URL(window.location.href),E=c.startsWith("//")?new URL(x.protocol+c):new URL(c),_=Sr(E.pathname,p);E.origin===x.origin&&_!=null?c=_+E.search+E.hash:g=!0}catch{}let C=Lw(c,{relative:o}),v=xx(c,{replace:a,state:l,target:s,preventScrollReset:f,relative:o,unstable_viewTransition:u});function m(x){r&&r(x),x.defaultPrevented||v(x)}return h.createElement("a",wo({},d,{href:y||C,onClick:g||i?r:m,ref:n,target:s}))});function gx(e){let{getKey:t,storageKey:n}=e;return Cx({getKey:t,storageKey:n}),null}var ru;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(ru||(ru={}));var ou;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(ou||(ou={}));function yx(e){let t=h.useContext(zi);return t||te(!1),t}function wx(e){let t=h.useContext(Mf);return t||te(!1),t}function xx(e,t){let{target:n,replace:r,state:o,preventScrollReset:i,relative:a,unstable_viewTransition:l}=t===void 0?{}:t,s=jf(),c=Re(),f=N0(e,{relative:a});return h.useCallback(u=>{if(tx(u,n)){u.preventDefault();let d=r!==void 0?r:Cr(c)===Cr(f);s(e,{replace:d,state:o,preventScrollReset:i,relative:a,unstable_viewTransition:l})}},[c,s,f,r,o,n,e,i,a,l])}const Hh="react-router-scroll-positions";let ha={};function Cx(e){let{getKey:t,storageKey:n}=e===void 0?{}:e,{router:r}=yx(ru.UseScrollRestoration),{restoreScrollPosition:o,preventScrollReset:i}=wx(ou.UseScrollRestoration),{basename:a}=h.useContext(nr),l=Re(),s=Gw(),c=Kw();h.useEffect(()=>(window.history.scrollRestoration="manual",()=>{window.history.scrollRestoration="auto"}),[]),Ex(h.useCallback(()=>{if(c.state==="idle"){let f=(t?t(l,s):null)||l.key;ha[f]=window.scrollY}try{sessionStorage.setItem(n||Hh,JSON.stringify(ha))}catch{}window.history.scrollRestoration="auto"},[n,t,c.state,l,s])),typeof document<"u"&&(h.useLayoutEffect(()=>{try{let f=sessionStorage.getItem(n||Hh);f&&(ha=JSON.parse(f))}catch{}},[n]),h.useLayoutEffect(()=>{let f=t&&a!=="/"?(d,p)=>t(wo({},d,{pathname:Sr(d.pathname,a)||d.pathname}),p):t,u=r==null?void 0:r.enableScrollRestoration(ha,()=>window.scrollY,f);return()=>u&&u()},[r,a,t]),h.useLayoutEffect(()=>{if(o!==!1){if(typeof o=="number"){window.scrollTo(0,o);return}if(l.hash){let f=document.getElementById(decodeURIComponent(l.hash.slice(1)));if(f){f.scrollIntoView();return}}i!==!0&&window.scrollTo(0,0)}},[l,o,i]))}function Ex(e,t){let{capture:n}=t||{};h.useEffect(()=>{let r=n!=null?{capture:n}:void 0;return window.addEventListener("pagehide",e,r),()=>{window.removeEventListener("pagehide",e,r)}},[e,n])}const I0={blogDir:"./pages/blog",rootDir:"docs",title:"Home",titleTemplate:"%s – Home",basePath:"/portfolio",theme:{colorScheme:"dark",variables:{color:{white:{light:"rgba(255 255 255 / 100%)",dark:"rgba(255 255 255 / 100%)"},black:{light:"rgba(0 0 0 / 100%)",dark:"rgba(0 0 0 / 100%)"},background:{light:"#232225",dark:"#232225"},background2:{light:"#2b292d",dark:"#2b292d"},background3:{light:"#2e2c31",dark:"#2e2c31"},background4:{light:"#323035",dark:"#323035"},background5:{light:"#3c393f",dark:"#3c393f"},backgroundAccent:{light:"#5b5bd6",dark:"#5b5bd6"},backgroundAccentHover:{light:"#5b5bd6",dark:"#5b5bd6"},backgroundAccentText:{light:"rgba(255 255 255 / 100%)",dark:"rgba(255 255 255 / 100%)"},backgroundBlueTint:{light:"#008ff519",dark:"#008ff519"},backgroundDark:{light:"#1e1d1f",dark:"#1e1d1f"},backgroundGreenTint:{light:"#00a43319",dark:"#00a43319"},backgroundGreenTint2:{light:"#00a83829",dark:"#00a83829"},backgroundIrisTint:{light:"#000bff19",dark:"#000bff19"},backgroundRedTint:{light:"#f3000d14",dark:"#f3000d14"},backgroundRedTint2:{light:"#ff000824",dark:"#ff000824"},backgroundYellowTint:{light:"#f4dd0016",dark:"#f4dd0016"},border:{light:"#3c393f",dark:"#3c393f"},border2:{light:"#6f6d78",dark:"#6f6d78"},borderAccent:{light:"#6e6ade",dark:"#6e6ade"},borderBlue:{light:"#009eff2a",dark:"#009eff2a"},borderGreen:{light:"#019c393b",dark:"#019c393b"},borderIris:{light:"#303374",dark:"#303374"},borderRed:{light:"#ff000824",dark:"#ff000824"},borderYellow:{light:"#f4dd0016",dark:"#f4dd0016"},heading:{light:"#e9e9ea",dark:"#e9e9ea"},inverted:{light:"rgba(255 255 255 / 100%)",dark:"rgba(255 255 255 / 100%)"},shadow:{light:"#00000000",dark:"#00000000"},shadow2:{light:"rgba(0, 0, 0, 0.05)",dark:"rgba(0, 0, 0, 0.05)"},text:{light:"#cfcfcf",dark:"#cfcfcf"},text2:{light:"#bdbdbe",dark:"#bdbdbe"},text3:{light:"#a7a7a8",dark:"#a7a7a8"},text4:{light:"#656567",dark:"#656567"},textAccent:{light:"#b1a9ff",dark:"#b1a9ff"},textAccentHover:{light:"#6e6ade",dark:"#6e6ade"},textBlue:{light:"#70b8ff",dark:"#70b8ff"},textBlueHover:{light:"#3b9eff",dark:"#3b9eff"},textGreen:{light:"#3dd68c",dark:"#3dd68c"},textGreenHover:{light:"#33b074",dark:"#33b074"},textIris:{light:"#b1a9ff",dark:"#b1a9ff"},textIrisHover:{light:"#6e6ade",dark:"#6e6ade"},textRed:{light:"#ff9592",dark:"#ff9592"},textRedHover:{light:"#ec5d5e",dark:"#ec5d5e"},textYellow:{light:"#f5e147",dark:"#f5e147"},textYellowHover:{light:"#e2a336",dark:"#e2a336"},title:{light:"rgba(255 255 255 / 100%)",dark:"rgba(255 255 255 / 100%)"}},content:{horizontalPadding:"40px",verticalPadding:"80px"}}},topNav:[{text:"CV",link:"/CV",id:34,items:[]},{text:"Blog",link:"/blog",id:35,items:[]}],sidebar:[{text:"Projects",link:"/projects"},{text:"SomaVarDB",link:"/projects/somavardb"},{text:"GermlineVarDB",link:"/projects/germlinevardb"}],markdown:{code:{themes:{dark:"github-dark-dimmed",light:"github-light"}}},socials:[],vite:{base:"/portfolio"}},L0=h.createContext(I0);function M0(){return typeof window<"u",I0}function bx({children:e,config:t}){const[n,r]=h.useState(()=>t||M0());return h.useEffect(()=>{},[]),h.useEffect(()=>{typeof window<"u"},[n]),w.jsx(L0.Provider,{value:n,children:e})}function ot(){return h.useContext(L0)}const _x="modulepreload",Sx=function(e){return"/portfolio/"+e},Wh={},Ie=function(t,n,r){let o=Promise.resolve();if(n&&n.length>0){const i=document.getElementsByTagName("link");o=Promise.all(n.map(a=>{if(a=Sx(a),a in Wh)return;Wh[a]=!0;const l=a.endsWith(".css"),s=l?'[rel="stylesheet"]':"";if(!!r)for(let u=i.length-1;u>=0;u--){const d=i[u];if(d.href===a&&(!l||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${a}"]${s}`))return;const f=document.createElement("link");if(f.rel=l?"stylesheet":_x,l||(f.as="script",f.crossOrigin=""),f.href=a,document.head.appendChild(f),l)return new Promise((u,d)=>{f.addEventListener("load",u),f.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${a}`)))})}))}return o.then(()=>t()).catch(i=>{const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=i,window.dispatchEvent(a),!a.defaultPrevented)throw i})},Ff=[{lazy:()=>Ie(()=>import("./index-BNKID4UK.js"),__vite__mapDeps([])),path:"/",type:"mdx",filePath:"index.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./index-D7r4s9iC.js"),__vite__mapDeps([0,1,2])),path:"/CV",type:"mdx",filePath:"CV/index.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./index-D7r4s9iC.js"),__vite__mapDeps([0,1,2])),path:"/CV.html",type:"mdx",filePath:"CV/index.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./react-groupedlist-CIMAK46-.js"),__vite__mapDeps([])),path:"/CV/react-groupedlist",type:"jsx",filePath:"CV/react-groupedlist.jsx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./react-groupedlist-CIMAK46-.js"),__vite__mapDeps([])),path:"/CV/react-groupedlist.html",type:"jsx",filePath:"CV/react-groupedlist.jsx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./react-timeline-D6hmopBv.js"),__vite__mapDeps([1,2])),path:"/CV/react-timeline",type:"jsx",filePath:"CV/react-timeline.jsx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./react-timeline-D6hmopBv.js"),__vite__mapDeps([1,2])),path:"/CV/react-timeline.html",type:"jsx",filePath:"CV/react-timeline.jsx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./cutonestrand-mMqmQ38Y.js"),__vite__mapDeps([])),path:"/blog/cutonestrand",type:"mdx",filePath:"blog/cutonestrand.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./cutonestrand-mMqmQ38Y.js"),__vite__mapDeps([])),path:"/blog/cutonestrand.html",type:"mdx",filePath:"blog/cutonestrand.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./expdesign-BV4_cdNM.js"),__vite__mapDeps([])),path:"/blog/expdesign",type:"mdx",filePath:"blog/expdesign.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./expdesign-BV4_cdNM.js"),__vite__mapDeps([])),path:"/blog/expdesign.html",type:"mdx",filePath:"blog/expdesign.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./gsea-kOLEqhgC.js"),__vite__mapDeps([])),path:"/blog/gsea",type:"mdx",filePath:"blog/gsea.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./gsea-kOLEqhgC.js"),__vite__mapDeps([])),path:"/blog/gsea.html",type:"mdx",filePath:"blog/gsea.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./index-7hivevq9.js"),__vite__mapDeps([])),path:"/blog",type:"mdx",filePath:"blog/index.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./index-7hivevq9.js"),__vite__mapDeps([])),path:"/blog.html",type:"mdx",filePath:"blog/index.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./germlinevardb-XcNTVQb9.js"),__vite__mapDeps([])),path:"/projects/germlinevardb",type:"mdx",filePath:"projects/germlinevardb.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./germlinevardb-XcNTVQb9.js"),__vite__mapDeps([])),path:"/projects/germlinevardb.html",type:"mdx",filePath:"projects/germlinevardb.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./index-XCvjYk2T.js"),__vite__mapDeps([])),path:"/projects",type:"mdx",filePath:"projects/index.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./index-XCvjYk2T.js"),__vite__mapDeps([])),path:"/projects.html",type:"mdx",filePath:"projects/index.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./somavardb-CGR6l3Uz.js"),__vite__mapDeps([])),path:"/projects/somavardb",type:"mdx",filePath:"projects/somavardb.mdx",lastUpdatedAt:1722432034e3},{lazy:()=>Ie(()=>import("./somavardb-CGR6l3Uz.js"),__vite__mapDeps([])),path:"/projects/somavardb.html",type:"mdx",filePath:"projects/somavardb.mdx",lastUpdatedAt:1722432034e3}];var Ls={horizontalPadding:"var(--vocs-content_horizontalPadding)",verticalPadding:"var(--vocs-content_verticalPadding)",width:"var(--vocs-content_width)"},$x={default:"system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif",mono:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},Tx={default:"var(--vocs-fontFamily_default)",mono:"var(--vocs-fontFamily_mono)"},Kh={white:"var(--vocs-color_white)",black:"var(--vocs-color_black)",background:"var(--vocs-color_background)",background2:"var(--vocs-color_background2)",background3:"var(--vocs-color_background3)",background4:"var(--vocs-color_background4)",background5:"var(--vocs-color_background5)",backgroundAccent:"var(--vocs-color_backgroundAccent)",backgroundAccentHover:"var(--vocs-color_backgroundAccentHover)",backgroundAccentText:"var(--vocs-color_backgroundAccentText)",backgroundBlueTint:"var(--vocs-color_backgroundBlueTint)",backgroundDark:"var(--vocs-color_backgroundDark)",backgroundGreenTint:"var(--vocs-color_backgroundGreenTint)",backgroundGreenTint2:"var(--vocs-color_backgroundGreenTint2)",backgroundIrisTint:"var(--vocs-color_backgroundIrisTint)",backgroundRedTint:"var(--vocs-color_backgroundRedTint)",backgroundRedTint2:"var(--vocs-color_backgroundRedTint2)",backgroundYellowTint:"var(--vocs-color_backgroundYellowTint)",border:"var(--vocs-color_border)",border2:"var(--vocs-color_border2)",borderAccent:"var(--vocs-color_borderAccent)",borderBlue:"var(--vocs-color_borderBlue)",borderGreen:"var(--vocs-color_borderGreen)",borderIris:"var(--vocs-color_borderIris)",borderRed:"var(--vocs-color_borderRed)",borderYellow:"var(--vocs-color_borderYellow)",heading:"var(--vocs-color_heading)",inverted:"var(--vocs-color_inverted)",shadow:"var(--vocs-color_shadow)",shadow2:"var(--vocs-color_shadow2)",text:"var(--vocs-color_text)",text2:"var(--vocs-color_text2)",text3:"var(--vocs-color_text3)",text4:"var(--vocs-color_text4)",textAccent:"var(--vocs-color_textAccent)",textAccentHover:"var(--vocs-color_textAccentHover)",textBlue:"var(--vocs-color_textBlue)",textBlueHover:"var(--vocs-color_textBlueHover)",textGreen:"var(--vocs-color_textGreen)",textGreenHover:"var(--vocs-color_textGreenHover)",textIris:"var(--vocs-color_textIris)",textIrisHover:"var(--vocs-color_textIrisHover)",textRed:"var(--vocs-color_textRed)",textRedHover:"var(--vocs-color_textRedHover)",textYellow:"var(--vocs-color_textYellow)",textYellowHover:"var(--vocs-color_textYellowHover)",title:"var(--vocs-color_title)"},Ms={0:"var(--vocs-space_0)",1:"var(--vocs-space_1)",2:"var(--vocs-space_2)",3:"var(--vocs-space_3)",4:"var(--vocs-space_4)",6:"var(--vocs-space_6)",8:"var(--vocs-space_8)",12:"var(--vocs-space_12)",14:"var(--vocs-space_14)",16:"var(--vocs-space_16)",18:"var(--vocs-space_18)",20:"var(--vocs-space_20)",22:"var(--vocs-space_22)",24:"var(--vocs-space_24)",28:"var(--vocs-space_28)",32:"var(--vocs-space_32)",36:"var(--vocs-space_36)",40:"var(--vocs-space_40)",44:"var(--vocs-space_44)",48:"var(--vocs-space_48)",56:"var(--vocs-space_56)",64:"var(--vocs-space_64)",72:"var(--vocs-space_72)",80:"var(--vocs-space_80)"};function j0(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t ")," does not exist in object"));n=n[r]}return n}function D0(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],r=e.constructor();for(var o in e){var i=e[o],a=[...n,o];typeof i=="string"||typeof i=="number"||i==null?r[o]=t(i,a):typeof i=="object"&&!Array.isArray(i)?r[o]=D0(i,t,a):console.warn('Skipping invalid key "'.concat(a.join("."),'". Should be a string, number, null or object. Received: "').concat(Array.isArray(i)?"Array":typeof i,'"'))}return r}function Gt(e,t){var n={};if(typeof t=="object"){var r=e;D0(t,(l,s)=>{if(l!=null){var c=kx(r,s);n[Gh(c)]=String(l)}})}else{var o=e;for(var i in o){var a=o[i];a!=null&&(n[Gh(i)]=a)}}return Object.defineProperty(n,"toString",{value:function(){return Object.keys(this).map(s=>"".concat(s,":").concat(this[s])).join(";")},writable:!1}),n}var Rx="var(--vocs_ExternalLink_iconUrl)",Nx="vocs_ExternalLink";const Px=h.forwardRef(({className:e,children:t,hideExternalIcon:n,href:r,...o},i)=>{const{basePath:a}=ot(),l=a;return w.jsx("a",{ref:i,className:I(e,n||typeof t!="string"?void 0:Nx),href:r,target:"_blank",rel:"noopener noreferrer",style:Gt({[Rx]:`url(${l}/.vocs/icons/arrow-diagonal.svg)`}),...o,children:t})});var Yh="vocs_Link_accent_underlined",Qh="vocs_Link",Zh="vocs_Link_styleless",iu=new Map,pa=new WeakMap,Xh=0,Ax=void 0;function Ox(e){return e?(pa.has(e)||(Xh+=1,pa.set(e,Xh.toString())),pa.get(e)):"0"}function Ix(e){return Object.keys(e).sort().filter(t=>e[t]!==void 0).map(t=>`${t}_${t==="root"?Ox(e.root):e[t]}`).toString()}function Lx(e){const t=Ix(e);let n=iu.get(t);if(!n){const r=new Map;let o;const i=new IntersectionObserver(a=>{a.forEach(l=>{var s;const c=l.isIntersecting&&o.some(f=>l.intersectionRatio>=f);e.trackVisibility&&typeof l.isVisible>"u"&&(l.isVisible=c),(s=r.get(l.target))==null||s.forEach(f=>{f(c,l)})})},e);o=i.thresholds||(Array.isArray(e.threshold)?e.threshold:[e.threshold||0]),n={id:t,observer:i,elements:r},iu.set(t,n)}return n}function Mx(e,t,n={},r=Ax){if(typeof window.IntersectionObserver>"u"&&r!==void 0){const s=e.getBoundingClientRect();return t(r,{isIntersecting:r,target:e,intersectionRatio:typeof n.threshold=="number"?n.threshold:0,time:0,boundingClientRect:s,intersectionRect:s,rootBounds:s}),()=>{}}const{id:o,observer:i,elements:a}=Lx(n),l=a.get(e)||[];return a.has(e)||a.set(e,l),l.push(t),i.observe(e),function(){l.splice(l.indexOf(t),1),l.length===0&&(a.delete(e),i.unobserve(e)),a.size===0&&(i.disconnect(),iu.delete(o))}}function F0({threshold:e,delay:t,trackVisibility:n,rootMargin:r,root:o,triggerOnce:i,skip:a,initialInView:l,fallbackInView:s,onChange:c}={}){var f;const[u,d]=h.useState(null),p=h.useRef(),[y,g]=h.useState({inView:!!l,entry:void 0});p.current=c,h.useEffect(()=>{if(a||!u)return;let x;return x=Mx(u,(E,_)=>{g({inView:E,entry:_}),p.current&&p.current(E,_),_.isIntersecting&&i&&x&&(x(),x=void 0)},{root:o,rootMargin:r,threshold:e,trackVisibility:n,delay:t},s),()=>{x&&x()}},[Array.isArray(e)?e.toString():e,u,o,r,i,a,n,s,t]);const C=(f=y.entry)==null?void 0:f.target,v=h.useRef();!u&&C&&!i&&!a&&v.current!==C&&(v.current=C,g({inView:!!l,entry:void 0}));const m=[d,y.inView,y.entry];return m.ref=m[0],m.inView=m[1],m.entry=m[2],m}function jx(...e){return t=>{Dx(t,...e)}}function Dx(e,...t){t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}const Yn=h.forwardRef((e,t)=>{const n=()=>{var i;return(i=Ff.find(a=>a.path===e.to))==null?void 0:i.lazy()},{ref:r,inView:o}=F0();return h.useEffect(()=>{o&&n()},[o,n]),w.jsx(O0,{ref:jx(t,r),...e})}),nn=h.forwardRef((e,t)=>{const{href:n,variant:r="accent underlined"}=e,{pathname:o}=Re();if(n!=null&&n.match(/^(www|https?)/))return w.jsx(Px,{...e,ref:t,className:I(e.className,Qh,r==="accent underlined"&&Yh,r==="styleless"&&Zh),hideExternalIcon:e.hideExternalIcon});const[i,a]=(n||"").split("#"),l=`${i||o}${a?`#${a}`:""}`;return w.jsx(Yn,{...e,ref:t,className:I(e.className,Qh,r==="accent underlined"&&Yh,r==="styleless"&&Zh),to:l})});var Fx="vocs_NotFound_divider",zx="vocs_NotFound",Bx="vocs_H1",z0="vocs_Heading",B0="vocs_Heading_slugTarget";function To({level:e,...t}){const n=`h${e}`;return w.jsxs(n,{...t,id:void 0,className:I(t.className,z0),children:[w.jsx("div",{id:t.id,className:B0}),t.children]})}function U0(e){return w.jsx(To,{...e,className:I(e.className,Bx),level:1})}var Ux="vocs_Paragraph";function V0(e){return w.jsx("p",{...e,className:I(e.className,Ux)})}function Vx(){return w.jsxs("div",{className:zx,children:[w.jsx(U0,{children:"Page Not Found"}),w.jsx("div",{style:{height:Ms[24]}}),w.jsx("hr",{className:Fx}),w.jsx("div",{style:{height:Ms[24]}}),w.jsx(V0,{children:"The page you were looking for could not be found."}),w.jsx("div",{style:{height:Ms[8]}}),w.jsx(nn,{href:"/",children:"Go to Home Page"})]})}var Hx="var(--vocs_Banner_bannerBackgroundColor)",Wx="var(--vocs_Banner_bannerHeight)",Kx="var(--vocs_Banner_bannerTextColor)",Gx="vocs_Banner_closeButton",Yx="vocs_Banner_content",Qx="vocs_Banner_inner",Zx="vocs_Banner";const Xx=Object.getPrototypeOf(Jx).constructor;async function Jx(e,t){return new Xx(String(e))(t)}function qx(e,t){return new Function(String(e))(t)}function Tr(e,t){if(e==null)return{};var n={},r=Object.keys(e),o,i;for(i=0;i=0)&&(n[o]=e[o]);return n}var e5=["color"],t5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,e5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M6.85355 3.14645C7.04882 3.34171 7.04882 3.65829 6.85355 3.85355L3.70711 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H3.70711L6.85355 11.1464C7.04882 11.3417 7.04882 11.6583 6.85355 11.8536C6.65829 12.0488 6.34171 12.0488 6.14645 11.8536L2.14645 7.85355C1.95118 7.65829 1.95118 7.34171 2.14645 7.14645L6.14645 3.14645C6.34171 2.95118 6.65829 2.95118 6.85355 3.14645Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),n5=["color"],r5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,n5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M6.1584 3.13508C6.35985 2.94621 6.67627 2.95642 6.86514 3.15788L10.6151 7.15788C10.7954 7.3502 10.7954 7.64949 10.6151 7.84182L6.86514 11.8418C6.67627 12.0433 6.35985 12.0535 6.1584 11.8646C5.95694 11.6757 5.94673 11.3593 6.1356 11.1579L9.565 7.49985L6.1356 3.84182C5.94673 3.64036 5.95694 3.32394 6.1584 3.13508Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),o5=["color"],i5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,o5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M12.8536 2.85355C13.0488 2.65829 13.0488 2.34171 12.8536 2.14645C12.6583 1.95118 12.3417 1.95118 12.1464 2.14645L7.5 6.79289L2.85355 2.14645C2.65829 1.95118 2.34171 1.95118 2.14645 2.14645C1.95118 2.34171 1.95118 2.65829 2.14645 2.85355L6.79289 7.5L2.14645 12.1464C1.95118 12.3417 1.95118 12.6583 2.14645 12.8536C2.34171 13.0488 2.65829 13.0488 2.85355 12.8536L7.5 8.20711L12.1464 12.8536C12.3417 13.0488 12.6583 13.0488 12.8536 12.8536C13.0488 12.6583 13.0488 12.3417 12.8536 12.1464L8.20711 7.5L12.8536 2.85355Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),a5=["color"],l5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,a5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M3.5 2C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V6H8.5C8.22386 6 8 5.77614 8 5.5V2H3.5ZM9 2.70711L11.2929 5H9V2.70711ZM2 2.5C2 1.67157 2.67157 1 3.5 1H8.5C8.63261 1 8.75979 1.05268 8.85355 1.14645L12.8536 5.14645C12.9473 5.24021 13 5.36739 13 5.5V12.5C13 13.3284 12.3284 14 11.5 14H3.5C2.67157 14 2 13.3284 2 12.5V2.5Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),s5=["color"],c5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,s5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M1.5 5.25C1.91421 5.25 2.25 4.91421 2.25 4.5C2.25 4.08579 1.91421 3.75 1.5 3.75C1.08579 3.75 0.75 4.08579 0.75 4.5C0.75 4.91421 1.08579 5.25 1.5 5.25ZM4 4.5C4 4.22386 4.22386 4 4.5 4H13.5C13.7761 4 14 4.22386 14 4.5C14 4.77614 13.7761 5 13.5 5H4.5C4.22386 5 4 4.77614 4 4.5ZM4.5 7C4.22386 7 4 7.22386 4 7.5C4 7.77614 4.22386 8 4.5 8H13.5C13.7761 8 14 7.77614 14 7.5C14 7.22386 13.7761 7 13.5 7H4.5ZM4.5 10C4.22386 10 4 10.2239 4 10.5C4 10.7761 4.22386 11 4.5 11H13.5C13.7761 11 14 10.7761 14 10.5C14 10.2239 13.7761 10 13.5 10H4.5ZM2.25 7.5C2.25 7.91421 1.91421 8.25 1.5 8.25C1.08579 8.25 0.75 7.91421 0.75 7.5C0.75 7.08579 1.08579 6.75 1.5 6.75C1.91421 6.75 2.25 7.08579 2.25 7.5ZM1.5 11.25C1.91421 11.25 2.25 10.9142 2.25 10.5C2.25 10.0858 1.91421 9.75 1.5 9.75C1.08579 9.75 0.75 10.0858 0.75 10.5C0.75 10.9142 1.08579 11.25 1.5 11.25Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),u5=["color"],zf=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,u5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M10 6.5C10 8.433 8.433 10 6.5 10C4.567 10 3 8.433 3 6.5C3 4.567 4.567 3 6.5 3C8.433 3 10 4.567 10 6.5ZM9.30884 10.0159C8.53901 10.6318 7.56251 11 6.5 11C4.01472 11 2 8.98528 2 6.5C2 4.01472 4.01472 2 6.5 2C8.98528 2 11 4.01472 11 6.5C11 7.56251 10.6318 8.53901 10.0159 9.30884L12.8536 12.1464C13.0488 12.3417 13.0488 12.6583 12.8536 12.8536C12.6583 13.0488 12.3417 13.0488 12.1464 12.8536L9.30884 10.0159Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),f5=["color"],d5=h.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=Tr(e,f5);return h.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),h.createElement("path",{d:"M12.1464 1.14645C12.3417 0.951184 12.6583 0.951184 12.8535 1.14645L14.8535 3.14645C15.0488 3.34171 15.0488 3.65829 14.8535 3.85355L10.9109 7.79618C10.8349 7.87218 10.7471 7.93543 10.651 7.9835L6.72359 9.94721C6.53109 10.0435 6.29861 10.0057 6.14643 9.85355C5.99425 9.70137 5.95652 9.46889 6.05277 9.27639L8.01648 5.34897C8.06455 5.25283 8.1278 5.16507 8.2038 5.08907L12.1464 1.14645ZM12.5 2.20711L8.91091 5.79618L7.87266 7.87267L8.12731 8.12732L10.2038 7.08907L13.7929 3.5L12.5 2.20711ZM9.99998 2L8.99998 3H4.9C4.47171 3 4.18056 3.00039 3.95552 3.01877C3.73631 3.03668 3.62421 3.06915 3.54601 3.10899C3.35785 3.20487 3.20487 3.35785 3.10899 3.54601C3.06915 3.62421 3.03669 3.73631 3.01878 3.95552C3.00039 4.18056 3 4.47171 3 4.9V11.1C3 11.5283 3.00039 11.8194 3.01878 12.0445C3.03669 12.2637 3.06915 12.3758 3.10899 12.454C3.20487 12.6422 3.35785 12.7951 3.54601 12.891C3.62421 12.9309 3.73631 12.9633 3.95552 12.9812C4.18056 12.9996 4.47171 13 4.9 13H11.1C11.5283 13 11.8194 12.9996 12.0445 12.9812C12.2637 12.9633 12.3758 12.9309 12.454 12.891C12.6422 12.7951 12.7951 12.6422 12.891 12.454C12.9309 12.3758 12.9633 12.2637 12.9812 12.0445C12.9996 11.8194 13 11.5283 13 11.1V6.99998L14 5.99998V11.1V11.1207C14 11.5231 14 11.8553 13.9779 12.1259C13.9549 12.407 13.9057 12.6653 13.782 12.908C13.5903 13.2843 13.2843 13.5903 12.908 13.782C12.6653 13.9057 12.407 13.9549 12.1259 13.9779C11.8553 14 11.5231 14 11.1207 14H11.1H4.9H4.87934C4.47686 14 4.14468 14 3.87409 13.9779C3.59304 13.9549 3.33469 13.9057 3.09202 13.782C2.7157 13.5903 2.40973 13.2843 2.21799 12.908C2.09434 12.6653 2.04506 12.407 2.0221 12.1259C1.99999 11.8553 1.99999 11.5231 2 11.1207V11.1206V11.1V4.9V4.87935V4.87932V4.87931C1.99999 4.47685 1.99999 4.14468 2.0221 3.87409C2.04506 3.59304 2.09434 3.33469 2.21799 3.09202C2.40973 2.71569 2.7157 2.40973 3.09202 2.21799C3.33469 2.09434 3.59304 2.04506 3.87409 2.0221C4.14468 1.99999 4.47685 1.99999 4.87932 2H4.87935H4.9H9.99998Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))});function au(e,t){if(typeof e!="object"||e===null)return e;if(Array.isArray(e))return e.map((r,o)=>au(r,o));const n=e.props.children?{...e.props,children:au(e.props.children)}:e.props;return Q.createElement(e.type,{...n,key:t})}function h5({hide:e}){const{banner:t}=ot(),n=h.useMemo(()=>{const r=(t==null?void 0:t.content)??"";if(!r)return null;if(typeof r!="string")return()=>au(r);const{default:o}=qx(r,{...Uy,Fragment:h.Fragment});return o},[t]);return n?w.jsx("div",{className:I(Zx),style:Gt({[Hx]:t==null?void 0:t.backgroundColor,[Kx]:t==null?void 0:t.textColor}),children:w.jsxs("div",{className:I(Qx),children:[w.jsx("div",{className:I(Yx),children:w.jsx(n,{})}),(t==null?void 0:t.dismissable)!=="false"&&w.jsx("button",{className:I(Gx),onClick:e,type:"button",children:w.jsx(i5,{width:14,height:14})})]})}):null}var p5="vocs_Content";function H0({children:e,className:t}){return w.jsx("article",{className:I(t,p5),children:e})}function W0({items:e,pathname:t}){const n=t.replace(/\.html$/,""),r=[];for(const o of e)(o.link&&n.startsWith(o.match||o.link)||o.items&&W0({items:o.items,pathname:t}).length>0)&&r.push(o.id);return r}function Bi({items:e,pathname:t}){return h.useMemo(()=>W0({items:e,pathname:t}),[e,t])}function kr(){const e=h.useContext(K0);if(!e)throw new Error("`usePageData` must be used within `PageDataContext.Provider`.");return e}const K0=h.createContext(void 0);function Bl(){const{pathname:e}=Re(),t=ot(),{sidebar:n}=t;if(!n)return{items:[]};if(Array.isArray(n))return{items:n};const r=h.useMemo(()=>{const o=Object.keys(n).filter(i=>e.startsWith(i));return o[o.length-1]},[n,e]);return r?Array.isArray(n[r])?{key:r,items:n[r]}:{...n[r],key:r}:{items:[]}}function Rr(){const e=Bl(),{frontmatter:t}=kr(),{layout:n,showLogo:r,showOutline:o,showSidebar:i,showTopNav:a}=t||{},l=n??"docs";return{layout:l,get showLogo(){return typeof r<"u"?r:!0},get showOutline(){return typeof o<"u"?o:l==="docs"},get showSidebar(){return e.items.length===0?!1:typeof i<"u"?i:!(l==="minimal"||l==="landing")},get showTopNav(){return typeof a<"u"?a:!0}}}function v5(){const[e,t]=h.useState(()=>{if(!(typeof window>"u")){if(localStorage.getItem("vocs.theme")){const n=localStorage.getItem("vocs.theme");if(n)return n}return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}});return h.useEffect(()=>{e&&localStorage.setItem("vocs.theme",e),e==="dark"?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")},[e]),{theme:e,toggle(){t(n=>n==="light"?"dark":"light")}}}var m5="vocs_utils_visibleDark",g5="vocs_utils_visibleLight",G0="vocs_utils_visuallyHidden";function G(){return G=Object.assign?Object.assign.bind():function(e){for(var t=1;te.forEach(n=>y5(n,t))}function Be(...e){return h.useCallback(Y0(...e),e)}function En(e,t=[]){let n=[];function r(i,a){const l=h.createContext(a),s=n.length;n=[...n,a];function c(u){const{scope:d,children:p,...y}=u,g=(d==null?void 0:d[e][s])||l,C=h.useMemo(()=>y,Object.values(y));return h.createElement(g.Provider,{value:C},p)}function f(u,d){const p=(d==null?void 0:d[e][s])||l,y=h.useContext(p);if(y)return y;if(a!==void 0)return a;throw new Error(`\`${u}\` must be used within \`${i}\``)}return c.displayName=i+"Provider",[c,f]}const o=()=>{const i=n.map(a=>h.createContext(a));return function(l){const s=(l==null?void 0:l[e])||i;return h.useMemo(()=>({[`__scope${e}`]:{...l,[e]:s}}),[l,s])}};return o.scopeName=e,[r,w5(o,...t)]}function w5(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const a=r.reduce((l,{useScope:s,scopeName:c})=>{const u=s(i)[`__scope${c}`];return{...l,...u}},{});return h.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return n.scopeName=t.scopeName,n}const gn=globalThis!=null&&globalThis.document?h.useLayoutEffect:()=>{},x5=bl.useId||(()=>{});let C5=0;function rn(e){const[t,n]=h.useState(x5());return gn(()=>{e||n(r=>r??String(C5++))},[e]),e||(t?`radix-${t}`:"")}function at(e){const t=h.useRef(e);return h.useEffect(()=>{t.current=e}),h.useMemo(()=>(...n)=>{var r;return(r=t.current)===null||r===void 0?void 0:r.call(t,...n)},[])}function rr({prop:e,defaultProp:t,onChange:n=()=>{}}){const[r,o]=E5({defaultProp:t,onChange:n}),i=e!==void 0,a=i?e:r,l=at(n),s=h.useCallback(c=>{if(i){const u=typeof c=="function"?c(e):c;u!==e&&l(u)}else o(c)},[i,e,o,l]);return[a,s]}function E5({defaultProp:e,onChange:t}){const n=h.useState(e),[r]=n,o=h.useRef(r),i=at(t);return h.useEffect(()=>{o.current!==r&&(i(r),o.current=r)},[r,o,i]),n}const xo=h.forwardRef((e,t)=>{const{children:n,...r}=e,o=h.Children.toArray(n),i=o.find(_5);if(i){const a=i.props.children,l=o.map(s=>s===i?h.Children.count(a)>1?h.Children.only(null):h.isValidElement(a)?a.props.children:null:s);return h.createElement(lu,G({},r,{ref:t}),h.isValidElement(a)?h.cloneElement(a,void 0,l):null)}return h.createElement(lu,G({},r,{ref:t}),n)});xo.displayName="Slot";const lu=h.forwardRef((e,t)=>{const{children:n,...r}=e;return h.isValidElement(n)?h.cloneElement(n,{...S5(r,n.props),ref:t?Y0(t,n.ref):n.ref}):h.Children.count(n)>1?h.Children.only(null):null});lu.displayName="SlotClone";const b5=({children:e})=>h.createElement(h.Fragment,null,e);function _5(e){return h.isValidElement(e)&&e.type===b5}function S5(e,t){const n={...t};for(const r in t){const o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...l)=>{i(...l),o(...l)}:o&&(n[r]=o):r==="style"?n[r]={...o,...i}:r==="className"&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}const $5=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],ue=$5.reduce((e,t)=>{const n=h.forwardRef((r,o)=>{const{asChild:i,...a}=r,l=i?xo:t;return h.useEffect(()=>{window[Symbol.for("radix-ui")]=!0},[]),h.createElement(l,G({},a,{ref:o}))});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function su(e,t){e&&So.flushSync(()=>e.dispatchEvent(t))}function T5(e,t=globalThis==null?void 0:globalThis.document){const n=at(e);h.useEffect(()=>{const r=o=>{o.key==="Escape"&&n(o)};return t.addEventListener("keydown",r),()=>t.removeEventListener("keydown",r)},[n,t])}const cu="dismissableLayer.update",k5="dismissableLayer.pointerDownOutside",R5="dismissableLayer.focusOutside";let Jh;const N5=h.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Bf=h.forwardRef((e,t)=>{var n;const{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:o,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:l,onDismiss:s,...c}=e,f=h.useContext(N5),[u,d]=h.useState(null),p=(n=u==null?void 0:u.ownerDocument)!==null&&n!==void 0?n:globalThis==null?void 0:globalThis.document,[,y]=h.useState({}),g=Be(t,$=>d($)),C=Array.from(f.layers),[v]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),m=C.indexOf(v),x=u?C.indexOf(u):-1,E=f.layersWithOutsidePointerEventsDisabled.size>0,_=x>=m,b=P5($=>{const k=$.target,P=[...f.branches].some(j=>j.contains(k));!_||P||(i==null||i($),l==null||l($),$.defaultPrevented||s==null||s())},p),S=A5($=>{const k=$.target;[...f.branches].some(j=>j.contains(k))||(a==null||a($),l==null||l($),$.defaultPrevented||s==null||s())},p);return T5($=>{x===f.layers.size-1&&(o==null||o($),!$.defaultPrevented&&s&&($.preventDefault(),s()))},p),h.useEffect(()=>{if(u)return r&&(f.layersWithOutsidePointerEventsDisabled.size===0&&(Jh=p.body.style.pointerEvents,p.body.style.pointerEvents="none"),f.layersWithOutsidePointerEventsDisabled.add(u)),f.layers.add(u),qh(),()=>{r&&f.layersWithOutsidePointerEventsDisabled.size===1&&(p.body.style.pointerEvents=Jh)}},[u,p,r,f]),h.useEffect(()=>()=>{u&&(f.layers.delete(u),f.layersWithOutsidePointerEventsDisabled.delete(u),qh())},[u,f]),h.useEffect(()=>{const $=()=>y({});return document.addEventListener(cu,$),()=>document.removeEventListener(cu,$)},[]),h.createElement(ue.div,G({},c,{ref:g,style:{pointerEvents:E?_?"auto":"none":void 0,...e.style},onFocusCapture:ae(e.onFocusCapture,S.onFocusCapture),onBlurCapture:ae(e.onBlurCapture,S.onBlurCapture),onPointerDownCapture:ae(e.onPointerDownCapture,b.onPointerDownCapture)}))});function P5(e,t=globalThis==null?void 0:globalThis.document){const n=at(e),r=h.useRef(!1),o=h.useRef(()=>{});return h.useEffect(()=>{const i=l=>{if(l.target&&!r.current){let c=function(){Q0(k5,n,s,{discrete:!0})};const s={originalEvent:l};l.pointerType==="touch"?(t.removeEventListener("click",o.current),o.current=c,t.addEventListener("click",o.current,{once:!0})):c()}else t.removeEventListener("click",o.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener("pointerdown",i)},0);return()=>{window.clearTimeout(a),t.removeEventListener("pointerdown",i),t.removeEventListener("click",o.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function A5(e,t=globalThis==null?void 0:globalThis.document){const n=at(e),r=h.useRef(!1);return h.useEffect(()=>{const o=i=>{i.target&&!r.current&&Q0(R5,n,{originalEvent:i},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function qh(){const e=new CustomEvent(cu);document.dispatchEvent(e)}function Q0(e,t,n,{discrete:r}){const o=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?su(o,i):o.dispatchEvent(i)}const js="focusScope.autoFocusOnMount",Ds="focusScope.autoFocusOnUnmount",ep={bubbles:!1,cancelable:!0},Z0=h.forwardRef((e,t)=>{const{loop:n=!1,trapped:r=!1,onMountAutoFocus:o,onUnmountAutoFocus:i,...a}=e,[l,s]=h.useState(null),c=at(o),f=at(i),u=h.useRef(null),d=Be(t,g=>s(g)),p=h.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;h.useEffect(()=>{if(r){let g=function(x){if(p.paused||!l)return;const E=x.target;l.contains(E)?u.current=E:Pn(u.current,{select:!0})},C=function(x){if(p.paused||!l)return;const E=x.relatedTarget;E!==null&&(l.contains(E)||Pn(u.current,{select:!0}))},v=function(x){if(document.activeElement===document.body)for(const _ of x)_.removedNodes.length>0&&Pn(l)};document.addEventListener("focusin",g),document.addEventListener("focusout",C);const m=new MutationObserver(v);return l&&m.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",g),document.removeEventListener("focusout",C),m.disconnect()}}},[r,l,p.paused]),h.useEffect(()=>{if(l){np.add(p);const g=document.activeElement;if(!l.contains(g)){const v=new CustomEvent(js,ep);l.addEventListener(js,c),l.dispatchEvent(v),v.defaultPrevented||(O5(D5(X0(l)),{select:!0}),document.activeElement===g&&Pn(l))}return()=>{l.removeEventListener(js,c),setTimeout(()=>{const v=new CustomEvent(Ds,ep);l.addEventListener(Ds,f),l.dispatchEvent(v),v.defaultPrevented||Pn(g??document.body,{select:!0}),l.removeEventListener(Ds,f),np.remove(p)},0)}}},[l,c,f,p]);const y=h.useCallback(g=>{if(!n&&!r||p.paused)return;const C=g.key==="Tab"&&!g.altKey&&!g.ctrlKey&&!g.metaKey,v=document.activeElement;if(C&&v){const m=g.currentTarget,[x,E]=I5(m);x&&E?!g.shiftKey&&v===E?(g.preventDefault(),n&&Pn(x,{select:!0})):g.shiftKey&&v===x&&(g.preventDefault(),n&&Pn(E,{select:!0})):v===m&&g.preventDefault()}},[n,r,p.paused]);return h.createElement(ue.div,G({tabIndex:-1},a,{ref:d,onKeyDown:y}))});function O5(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(Pn(r,{select:t}),document.activeElement!==n)return}function I5(e){const t=X0(e),n=tp(t,e),r=tp(t.reverse(),e);return[n,r]}function X0(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function tp(e,t){for(const n of e)if(!L5(n,{upTo:t}))return n}function L5(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function M5(e){return e instanceof HTMLInputElement&&"select"in e}function Pn(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&M5(e)&&t&&e.select()}}const np=j5();function j5(){let e=[];return{add(t){const n=e[0];t!==n&&(n==null||n.pause()),e=rp(e,t),e.unshift(t)},remove(t){var n;e=rp(e,t),(n=e[0])===null||n===void 0||n.resume()}}}function rp(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function D5(e){return e.filter(t=>t.tagName!=="A")}const J0=h.forwardRef((e,t)=>{var n;const{container:r=globalThis==null||(n=globalThis.document)===null||n===void 0?void 0:n.body,...o}=e;return r?v0.createPortal(h.createElement(ue.div,G({},o,{ref:t})),r):null});function F5(e,t){return h.useReducer((n,r)=>{const o=t[n][r];return o??n},e)}const bn=e=>{const{present:t,children:n}=e,r=z5(t),o=typeof n=="function"?n({present:r.isPresent}):h.Children.only(n),i=Be(r.ref,o.ref);return typeof n=="function"||r.isPresent?h.cloneElement(o,{ref:i}):null};bn.displayName="Presence";function z5(e){const[t,n]=h.useState(),r=h.useRef({}),o=h.useRef(e),i=h.useRef("none"),a=e?"mounted":"unmounted",[l,s]=F5(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return h.useEffect(()=>{const c=va(r.current);i.current=l==="mounted"?c:"none"},[l]),gn(()=>{const c=r.current,f=o.current;if(f!==e){const d=i.current,p=va(c);e?s("MOUNT"):p==="none"||(c==null?void 0:c.display)==="none"?s("UNMOUNT"):s(f&&d!==p?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,s]),gn(()=>{if(t){const c=u=>{const p=va(r.current).includes(u.animationName);u.target===t&&p&&So.flushSync(()=>s("ANIMATION_END"))},f=u=>{u.target===t&&(i.current=va(r.current))};return t.addEventListener("animationstart",f),t.addEventListener("animationcancel",c),t.addEventListener("animationend",c),()=>{t.removeEventListener("animationstart",f),t.removeEventListener("animationcancel",c),t.removeEventListener("animationend",c)}}else s("ANIMATION_END")},[t,s]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:h.useCallback(c=>{c&&(r.current=getComputedStyle(c)),n(c)},[])}}function va(e){return(e==null?void 0:e.animationName)||"none"}let Fs=0;function q0(){h.useEffect(()=>{var e,t;const n=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",(e=n[0])!==null&&e!==void 0?e:op()),document.body.insertAdjacentElement("beforeend",(t=n[1])!==null&&t!==void 0?t:op()),Fs++,()=>{Fs===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(r=>r.remove()),Fs--}},[])}function op(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.cssText="outline: none; opacity: 0; position: fixed; pointer-events: none",e}var qt=function(){return qt=Object.assign||function(t){for(var n,r=1,o=arguments.length;r"u")return n4;var t=r4(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},i4=rg(),a4=function(e,t,n,r){var o=e.left,i=e.top,a=e.right,l=e.gap;return n===void 0&&(n="margin"),` .`.concat(U5,` { overflow: hidden `).concat(r,`; padding-right: `).concat(l,"px ").concat(r,`; @@ -105,20 +105,20 @@ Error generating stack: `+i.message+` `)},l4=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,o=r===void 0?"margin":r,i=h.useMemo(function(){return o4(o)},[o]);return h.createElement(i4,{styles:a4(i,!t,o,n?"":"!important")})},uu=!1;if(typeof window<"u")try{var ma=Object.defineProperty({},"passive",{get:function(){return uu=!0,!0}});window.addEventListener("test",ma,ma),window.removeEventListener("test",ma,ma)}catch{uu=!1}var Mr=uu?{passive:!1}:!1,s4=function(e){return e.tagName==="TEXTAREA"},og=function(e,t){var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!s4(e)&&n[t]==="visible")},c4=function(e){return og(e,"overflowY")},u4=function(e){return og(e,"overflowX")},ap=function(e,t){var n=t;do{typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&(n=n.host);var r=ig(e,n);if(r){var o=ag(e,n),i=o[1],a=o[2];if(i>a)return!0}n=n.parentNode}while(n&&n!==document.body);return!1},f4=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},d4=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},ig=function(e,t){return e==="v"?c4(t):u4(t)},ag=function(e,t){return e==="v"?f4(t):d4(t)},h4=function(e,t){return e==="h"&&t==="rtl"?-1:1},p4=function(e,t,n,r,o){var i=h4(e,window.getComputedStyle(t).direction),a=i*r,l=n.target,s=t.contains(l),c=!1,f=a>0,u=0,d=0;do{var p=ag(e,l),y=p[0],g=p[1],C=p[2],v=g-C-i*y;(y||v)&&ig(e,l)&&(u+=v,d+=y),l=l.parentNode}while(!s&&l!==document.body||s&&(t.contains(l)||t===l));return(f&&(o&&u===0||!o&&a>u)||!f&&(o&&d===0||!o&&-a>d))&&(c=!0),c},ga=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},lp=function(e){return[e.deltaX,e.deltaY]},sp=function(e){return e&&"current"in e?e.current:e},v4=function(e,t){return e[0]===t[0]&&e[1]===t[1]},m4=function(e){return` .block-interactivity-`.concat(e,` {pointer-events: none;} .allow-interactivity-`).concat(e,` {pointer-events: all;} -`)},g4=0,jr=[];function y4(e){var t=h.useRef([]),n=h.useRef([0,0]),r=h.useRef(),o=h.useState(g4++)[0],i=h.useState(function(){return rg()})[0],a=h.useRef(e);h.useEffect(function(){a.current=e},[e]),h.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var g=B5([e.lockRef.current],(e.shards||[]).map(sp),!0).filter(Boolean);return g.forEach(function(C){return C.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),g.forEach(function(C){return C.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var l=h.useCallback(function(g,C){if("touches"in g&&g.touches.length===2)return!a.current.allowPinchZoom;var v=ga(g),m=n.current,x="deltaX"in g?g.deltaX:m[0]-v[0],E="deltaY"in g?g.deltaY:m[1]-v[1],_,b=g.target,S=Math.abs(x)>Math.abs(E)?"h":"v";if("touches"in g&&S==="h"&&b.type==="range")return!1;var $=ap(S,b);if(!$)return!0;if($?_=S:(_=S==="v"?"h":"v",$=ap(S,b)),!$)return!1;if(!r.current&&"changedTouches"in g&&(x||E)&&(r.current=_),!_)return!0;var k=r.current||_;return p4(k,C,g,k==="h"?x:E,!0)},[]),s=h.useCallback(function(g){var C=g;if(!(!jr.length||jr[jr.length-1]!==i)){var v="deltaY"in C?lp(C):ga(C),m=t.current.filter(function(_){return _.name===C.type&&_.target===C.target&&v4(_.delta,v)})[0];if(m&&m.should){C.cancelable&&C.preventDefault();return}if(!m){var x=(a.current.shards||[]).map(sp).filter(Boolean).filter(function(_){return _.contains(C.target)}),E=x.length>0?l(C,x[0]):!a.current.noIsolation;E&&C.cancelable&&C.preventDefault()}}},[]),c=h.useCallback(function(g,C,v,m){var x={name:g,delta:C,target:v,should:m};t.current.push(x),setTimeout(function(){t.current=t.current.filter(function(E){return E!==x})},1)},[]),f=h.useCallback(function(g){n.current=ga(g),r.current=void 0},[]),u=h.useCallback(function(g){c(g.type,lp(g),g.target,l(g,e.lockRef.current))},[]),d=h.useCallback(function(g){c(g.type,ga(g),g.target,l(g,e.lockRef.current))},[]);h.useEffect(function(){return jr.push(i),e.setCallbacks({onScrollCapture:u,onWheelCapture:u,onTouchMoveCapture:d}),document.addEventListener("wheel",s,Mr),document.addEventListener("touchmove",s,Mr),document.addEventListener("touchstart",f,Mr),function(){jr=jr.filter(function(g){return g!==i}),document.removeEventListener("wheel",s,Mr),document.removeEventListener("touchmove",s,Mr),document.removeEventListener("touchstart",f,Mr)}},[]);var p=e.removeScrollBar,y=e.inert;return h.createElement(h.Fragment,null,y?h.createElement(i,{styles:m4(o)}):null,p?h.createElement(l4,{gapMode:"margin"}):null)}const w4=Q5(ng,y4);var lg=h.forwardRef(function(e,t){return h.createElement(Ul,qt({},e,{ref:t,sideCar:w4}))});lg.classNames=Ul.classNames;const sg=lg;var x4=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},Dr=new WeakMap,ya=new WeakMap,wa={},Vs=0,cg=function(e){return e&&(e.host||cg(e.parentNode))},C4=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=cg(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},E4=function(e,t,n,r){var o=C4(t,Array.isArray(e)?e:[e]);wa[n]||(wa[n]=new WeakMap);var i=wa[n],a=[],l=new Set,s=new Set(o),c=function(u){!u||l.has(u)||(l.add(u),c(u.parentNode))};o.forEach(c);var f=function(u){!u||s.has(u)||Array.prototype.forEach.call(u.children,function(d){if(l.has(d))f(d);else{var p=d.getAttribute(r),y=p!==null&&p!=="false",g=(Dr.get(d)||0)+1,C=(i.get(d)||0)+1;Dr.set(d,g),i.set(d,C),a.push(d),g===1&&y&&ya.set(d,!0),C===1&&d.setAttribute(n,"true"),y||d.setAttribute(r,"true")}})};return f(t),l.clear(),Vs++,function(){a.forEach(function(u){var d=Dr.get(u)-1,p=i.get(u)-1;Dr.set(u,d),i.set(u,p),d||(ya.has(u)||u.removeAttribute(r),ya.delete(u)),p||u.removeAttribute(n)}),Vs--,Vs||(Dr=new WeakMap,Dr=new WeakMap,ya=new WeakMap,wa={})}},ug=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=t||x4(e);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live]"))),E4(r,o,n,"aria-hidden")):function(){return null}};const fg="Dialog",[dg,Q9]=En(fg),[b4,_n]=dg(fg),_4=e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:o,onOpenChange:i,modal:a=!0}=e,l=h.useRef(null),s=h.useRef(null),[c=!1,f]=rr({prop:r,defaultProp:o,onChange:i});return h.createElement(b4,{scope:t,triggerRef:l,contentRef:s,contentId:rn(),titleId:rn(),descriptionId:rn(),open:c,onOpenChange:f,onOpenToggle:h.useCallback(()=>f(u=>!u),[f]),modal:a},n)},S4="DialogTrigger",$4=h.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=_n(S4,n),i=Be(t,o.triggerRef);return h.createElement(ue.button,Y({type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":Uf(o.open)},r,{ref:i,onClick:ae(e.onClick,o.onOpenToggle)}))}),hg="DialogPortal",[T4,pg]=dg(hg,{forceMount:void 0}),k4=e=>{const{__scopeDialog:t,forceMount:n,children:r,container:o}=e,i=_n(hg,t);return h.createElement(T4,{scope:t,forceMount:n},h.Children.map(r,a=>h.createElement(bn,{present:n||i.open},h.createElement(J0,{asChild:!0,container:o},a))))},fu="DialogOverlay",R4=h.forwardRef((e,t)=>{const n=pg(fu,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,i=_n(fu,e.__scopeDialog);return i.modal?h.createElement(bn,{present:r||i.open},h.createElement(N4,Y({},o,{ref:t}))):null}),N4=h.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=_n(fu,n);return h.createElement(sg,{as:xo,allowPinchZoom:!0,shards:[o.contentRef]},h.createElement(ue.div,Y({"data-state":Uf(o.open)},r,{ref:t,style:{pointerEvents:"auto",...r.style}})))}),Ri="DialogContent",P4=h.forwardRef((e,t)=>{const n=pg(Ri,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,i=_n(Ri,e.__scopeDialog);return h.createElement(bn,{present:r||i.open},i.modal?h.createElement(A4,Y({},o,{ref:t})):h.createElement(O4,Y({},o,{ref:t})))}),A4=h.forwardRef((e,t)=>{const n=_n(Ri,e.__scopeDialog),r=h.useRef(null),o=Be(t,n.contentRef,r);return h.useEffect(()=>{const i=r.current;if(i)return ug(i)},[]),h.createElement(vg,Y({},e,{ref:o,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:ae(e.onCloseAutoFocus,i=>{var a;i.preventDefault(),(a=n.triggerRef.current)===null||a===void 0||a.focus()}),onPointerDownOutside:ae(e.onPointerDownOutside,i=>{const a=i.detail.originalEvent,l=a.button===0&&a.ctrlKey===!0;(a.button===2||l)&&i.preventDefault()}),onFocusOutside:ae(e.onFocusOutside,i=>i.preventDefault())}))}),O4=h.forwardRef((e,t)=>{const n=_n(Ri,e.__scopeDialog),r=h.useRef(!1),o=h.useRef(!1);return h.createElement(vg,Y({},e,{ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{var a;if((a=e.onCloseAutoFocus)===null||a===void 0||a.call(e,i),!i.defaultPrevented){var l;r.current||(l=n.triggerRef.current)===null||l===void 0||l.focus(),i.preventDefault()}r.current=!1,o.current=!1},onInteractOutside:i=>{var a,l;(a=e.onInteractOutside)===null||a===void 0||a.call(e,i),i.defaultPrevented||(r.current=!0,i.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const s=i.target;((l=n.triggerRef.current)===null||l===void 0?void 0:l.contains(s))&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&o.current&&i.preventDefault()}}))}),vg=h.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:i,...a}=e,l=_n(Ri,n),s=h.useRef(null),c=Be(t,s);return q0(),h.createElement(h.Fragment,null,h.createElement(Z0,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:i},h.createElement(Bf,Y({role:"dialog",id:l.contentId,"aria-describedby":l.descriptionId,"aria-labelledby":l.titleId,"data-state":Uf(l.open)},a,{ref:c,onDismiss:()=>l.onOpenChange(!1)}))),!1)}),I4="DialogTitle",L4=h.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=_n(I4,n);return h.createElement(ue.h2,Y({id:o.titleId},r,{ref:t}))});function Uf(e){return e?"open":"closed"}const mg=_4,gg=$4,M4=k4,j4=R4,D4=P4,F4=L4;var he=function(){return he=Object.assign||function(t){for(var n,r=1,o=arguments.length;r0&&i[i.length-1])&&(c[0]===6||c[0]===2)){n=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Le(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),o,i=[],a;try{for(;(t===void 0||t-- >0)&&!(o=r.next()).done;)i.push(o.value)}catch(l){a={error:l}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(a)throw a.error}}return i}var U4="ENTRIES",yg="KEYS",wg="VALUES",Ze="",Hs=function(){function e(t,n){var r=t._tree,o=Array.from(r.keys());this.set=t,this._type=n,this._path=o.length>0?[{node:r,keys:o}]:[]}return e.prototype.next=function(){var t=this.dive();return this.backtrack(),t},e.prototype.dive=function(){if(this._path.length===0)return{done:!0,value:void 0};var t=Fr(this._path),n=t.node,r=t.keys;if(Fr(r)===Ze)return{done:!1,value:this.result()};var o=n.get(Fr(r));return this._path.push({node:o,keys:Array.from(o.keys())}),this.dive()},e.prototype.backtrack=function(){if(this._path.length!==0){var t=Fr(this._path).keys;t.pop(),!(t.length>0)&&(this._path.pop(),this.backtrack())}},e.prototype.key=function(){return this.set._prefix+this._path.map(function(t){var n=t.keys;return Fr(n)}).filter(function(t){return t!==Ze}).join("")},e.prototype.value=function(){return Fr(this._path).node.get(Ze)},e.prototype.result=function(){switch(this._type){case wg:return this.value();case yg:return this.key();default:return[this.key(),this.value()]}},e.prototype[Symbol.iterator]=function(){return this},e}(),Fr=function(e){return e[e.length-1]},V4=function(e,t,n){var r=new Map;if(t===void 0)return r;for(var o=t.length+1,i=o+n,a=new Uint8Array(i*o).fill(n+1),l=0;ln)continue e}xg(e.get(p),t,n,r,o,g,a,l+p)}}}catch(D){s={error:D}}finally{try{d&&!d.done&&(c=u.return)&&c.call(u)}finally{if(s)throw s.error}}},Ws=function(){function e(t,n){t===void 0&&(t=new Map),n===void 0&&(n=""),this._size=void 0,this._tree=t,this._prefix=n}return e.prototype.atPrefix=function(t){var n,r;if(!t.startsWith(this._prefix))throw new Error("Mismatched prefix");var o=Le(pl(this._tree,t.slice(this._prefix.length)),2),i=o[0],a=o[1];if(i===void 0){var l=Le(Vf(a),2),s=l[0],c=l[1];try{for(var f=ne(s.keys()),u=f.next();!u.done;u=f.next()){var d=u.value;if(d!==Ze&&d.startsWith(c)){var p=new Map;return p.set(d.slice(c.length),s.get(d)),new e(p,t)}}}catch(y){n={error:y}}finally{try{u&&!u.done&&(r=f.return)&&r.call(f)}finally{if(n)throw n.error}}}return new e(i,t)},e.prototype.clear=function(){this._size=void 0,this._tree.clear()},e.prototype.delete=function(t){return this._size=void 0,H4(this._tree,t)},e.prototype.entries=function(){return new Hs(this,U4)},e.prototype.forEach=function(t){var n,r;try{for(var o=ne(this),i=o.next();!i.done;i=o.next()){var a=Le(i.value,2),l=a[0],s=a[1];t(l,s,this)}}catch(c){n={error:c}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}},e.prototype.fuzzyGet=function(t,n){return V4(this._tree,t,n)},e.prototype.get=function(t){var n=du(this._tree,t);return n!==void 0?n.get(Ze):void 0},e.prototype.has=function(t){var n=du(this._tree,t);return n!==void 0&&n.has(Ze)},e.prototype.keys=function(){return new Hs(this,yg)},e.prototype.set=function(t,n){if(typeof t!="string")throw new Error("key must be a string");this._size=void 0;var r=Ks(this._tree,t);return r.set(Ze,n),this},Object.defineProperty(e.prototype,"size",{get:function(){if(this._size)return this._size;this._size=0;for(var t=this.entries();!t.next().done;)this._size+=1;return this._size},enumerable:!1,configurable:!0}),e.prototype.update=function(t,n){if(typeof t!="string")throw new Error("key must be a string");this._size=void 0;var r=Ks(this._tree,t);return r.set(Ze,n(r.get(Ze))),this},e.prototype.fetch=function(t,n){if(typeof t!="string")throw new Error("key must be a string");this._size=void 0;var r=Ks(this._tree,t),o=r.get(Ze);return o===void 0&&r.set(Ze,o=n()),o},e.prototype.values=function(){return new Hs(this,wg)},e.prototype[Symbol.iterator]=function(){return this.entries()},e.from=function(t){var n,r,o=new e;try{for(var i=ne(t),a=i.next();!a.done;a=i.next()){var l=Le(a.value,2),s=l[0],c=l[1];o.set(s,c)}}catch(f){n={error:f}}finally{try{a&&!a.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o},e.fromObject=function(t){return e.from(Object.entries(t))},e}(),pl=function(e,t,n){var r,o;if(n===void 0&&(n=[]),t.length===0||e==null)return[e,n];try{for(var i=ne(e.keys()),a=i.next();!a.done;a=i.next()){var l=a.value;if(l!==Ze&&t.startsWith(l))return n.push([e,l]),pl(e.get(l),t.slice(l.length),n)}}catch(s){r={error:s}}finally{try{a&&!a.done&&(o=i.return)&&o.call(i)}finally{if(r)throw r.error}}return n.push([e,t]),pl(void 0,"",n)},du=function(e,t){var n,r;if(t.length===0||e==null)return e;try{for(var o=ne(e.keys()),i=o.next();!i.done;i=o.next()){var a=i.value;if(a!==Ze&&t.startsWith(a))return du(e.get(a),t.slice(a.length))}}catch(l){n={error:l}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}},Ks=function(e,t){var n,r,o=t.length;e:for(var i=0;e&&i0)throw new Error("Expected documents to be present. Omit the argument to remove all documents.");this._index=new Ws,this._documentCount=0,this._documentIds=new Map,this._idToShortId=new Map,this._fieldLength=new Map,this._avgFieldLength=[],this._storedFields=new Map,this._nextId=0}},e.prototype.discard=function(t){var n=this,r=this._idToShortId.get(t);if(r==null)throw new Error("MiniSearch: cannot discard document with ID ".concat(t,": it is not in the index"));this._idToShortId.delete(t),this._documentIds.delete(r),this._storedFields.delete(r),(this._fieldLength.get(r)||[]).forEach(function(o,i){n.removeFieldLength(r,i,n._documentCount,o)}),this._fieldLength.delete(r),this._documentCount-=1,this._dirtCount+=1,this.maybeAutoVacuum()},e.prototype.maybeAutoVacuum=function(){if(this._options.autoVacuum!==!1){var t=this._options.autoVacuum,n=t.minDirtFactor,r=t.minDirtCount,o=t.batchSize,i=t.batchWait;this.conditionalVacuum({batchSize:o,batchWait:i},{minDirtCount:r,minDirtFactor:n})}},e.prototype.discardAll=function(t){var n,r,o=this._options.autoVacuum;try{this._options.autoVacuum=!1;try{for(var i=ne(t),a=i.next();!a.done;a=i.next()){var l=a.value;this.discard(l)}}catch(s){n={error:s}}finally{try{a&&!a.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}}finally{this._options.autoVacuum=o}this.maybeAutoVacuum()},e.prototype.replace=function(t){var n=this._options,r=n.idField,o=n.extractField,i=o(t,r);this.discard(i),this.add(t)},e.prototype.vacuum=function(t){return t===void 0&&(t={}),this.conditionalVacuum(t)},e.prototype.conditionalVacuum=function(t,n){var r=this;return this._currentVacuum?(this._enqueuedVacuumConditions=this._enqueuedVacuumConditions&&n,this._enqueuedVacuum!=null?this._enqueuedVacuum:(this._enqueuedVacuum=this._currentVacuum.then(function(){var o=r._enqueuedVacuumConditions;return r._enqueuedVacuumConditions=pu,r.performVacuuming(t,o)}),this._enqueuedVacuum)):this.vacuumConditionsMet(n)===!1?Promise.resolve():(this._currentVacuum=this.performVacuuming(t),this._currentVacuum)},e.prototype.performVacuuming=function(t,n){return z4(this,void 0,void 0,function(){var r,o,i,a,l,s,c,f,u,d,p,y,g,C,v,m,x,E,_,b,S,$,k,P,j;return B4(this,function(L){switch(L.label){case 0:if(r=this._dirtCount,!this.vacuumConditionsMet(n))return[3,10];o=t.batchSize||hu.batchSize,i=t.batchWait||hu.batchWait,a=1,L.label=1;case 1:L.trys.push([1,7,8,9]),l=ne(this._index),s=l.next(),L.label=2;case 2:if(s.done)return[3,6];c=Le(s.value,2),f=c[0],u=c[1];try{for(d=($=void 0,ne(u)),p=d.next();!p.done;p=d.next()){y=Le(p.value,2),g=y[0],C=y[1];try{for(v=(P=void 0,ne(C)),m=v.next();!m.done;m=v.next())x=Le(m.value,1),E=x[0],!this._documentIds.has(E)&&(C.size<=1?u.delete(g):C.delete(E))}catch(D){P={error:D}}finally{try{m&&!m.done&&(j=v.return)&&j.call(v)}finally{if(P)throw P.error}}}}catch(D){$={error:D}}finally{try{p&&!p.done&&(k=d.return)&&k.call(d)}finally{if($)throw $.error}}return this._index.get(f).size===0&&this._index.delete(f),a%o!==0?[3,4]:[4,new Promise(function(D){return setTimeout(D,i)})];case 3:L.sent(),L.label=4;case 4:a+=1,L.label=5;case 5:return s=l.next(),[3,2];case 6:return[3,9];case 7:return _=L.sent(),b={error:_},[3,9];case 8:try{s&&!s.done&&(S=l.return)&&S.call(l)}finally{if(b)throw b.error}return[7];case 9:this._dirtCount-=r,L.label=10;case 10:return[4,null];case 11:return L.sent(),this._currentVacuum=this._enqueuedVacuum,this._enqueuedVacuum=null,[2]}})})},e.prototype.vacuumConditionsMet=function(t){if(t==null)return!0;var n=t.minDirtCount,r=t.minDirtFactor;return n=n||Qs.minDirtCount,r=r||Qs.minDirtFactor,this.dirtCount>=n&&this.dirtFactor>=r},Object.defineProperty(e.prototype,"isVacuuming",{get:function(){return this._currentVacuum!=null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"dirtCount",{get:function(){return this._dirtCount},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"dirtFactor",{get:function(){return this._dirtCount/(1+this._documentCount+this._dirtCount)},enumerable:!1,configurable:!0}),e.prototype.has=function(t){return this._idToShortId.has(t)},e.prototype.getStoredFields=function(t){var n=this._idToShortId.get(t);if(n!=null)return this._storedFields.get(n)},e.prototype.search=function(t,n){var r,o;n===void 0&&(n={});var i=this.executeQuery(t,n),a=[];try{for(var l=ne(i),s=l.next();!s.done;s=l.next()){var c=Le(s.value,2),f=c[0],u=c[1],d=u.score,p=u.terms,y=u.match,g=p.length||1,C={id:this._documentIds.get(f),score:d*g,terms:Object.keys(y),queryTerms:p,match:y};Object.assign(C,this._storedFields.get(f)),(n.filter==null||n.filter(C))&&a.push(C)}}catch(v){r={error:v}}finally{try{s&&!s.done&&(o=l.return)&&o.call(l)}finally{if(r)throw r.error}}return t===e.wildcard&&n.boostDocument==null&&this._options.searchOptions.boostDocument==null||a.sort(fp),a},e.prototype.autoSuggest=function(t,n){var r,o,i,a;n===void 0&&(n={}),n=he(he({},this._options.autoSuggestOptions),n);var l=new Map;try{for(var s=ne(this.search(t,n)),c=s.next();!c.done;c=s.next()){var f=c.value,u=f.score,d=f.terms,p=d.join(" "),y=l.get(p);y!=null?(y.score+=u,y.count+=1):l.set(p,{score:u,terms:d,count:1})}}catch(_){r={error:_}}finally{try{c&&!c.done&&(o=s.return)&&o.call(s)}finally{if(r)throw r.error}}var g=[];try{for(var C=ne(l),v=C.next();!v.done;v=C.next()){var m=Le(v.value,2),y=m[0],x=m[1],u=x.score,d=x.terms,E=x.count;g.push({suggestion:y,terms:d,score:u/E})}}catch(_){i={error:_}}finally{try{v&&!v.done&&(a=C.return)&&a.call(C)}finally{if(i)throw i.error}}return g.sort(fp),g},Object.defineProperty(e.prototype,"documentCount",{get:function(){return this._documentCount},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"termCount",{get:function(){return this._index.size},enumerable:!1,configurable:!0}),e.loadJSON=function(t,n){if(n==null)throw new Error("MiniSearch: loadJSON should be given the same options used when serializing the index");return this.loadJS(JSON.parse(t),n)},e.getDefault=function(t){if(Gs.hasOwnProperty(t))return Ys(Gs,t);throw new Error('MiniSearch: unknown option "'.concat(t,'"'))},e.loadJS=function(t,n){var r,o,i,a,l,s,c=t.index,f=t.documentCount,u=t.nextId,d=t.documentIds,p=t.fieldIds,y=t.fieldLength,g=t.averageFieldLength,C=t.storedFields,v=t.dirtCount,m=t.serializationVersion;if(m!==1&&m!==2)throw new Error("MiniSearch: cannot deserialize an index created with an incompatible version");var x=new e(n);x._documentCount=f,x._nextId=u,x._documentIds=xa(d),x._idToShortId=new Map,x._fieldIds=p,x._fieldLength=xa(y),x._avgFieldLength=g,x._storedFields=xa(C),x._dirtCount=v||0,x._index=new Ws;try{for(var E=ne(x._documentIds),_=E.next();!_.done;_=E.next()){var b=Le(_.value,2),S=b[0],$=b[1];x._idToShortId.set($,S)}}catch(F){r={error:F}}finally{try{_&&!_.done&&(o=E.return)&&o.call(E)}finally{if(r)throw r.error}}try{for(var k=ne(c),P=k.next();!P.done;P=k.next()){var j=Le(P.value,2),L=j[0],D=j[1],N=new Map;try{for(var z=(l=void 0,ne(Object.keys(D))),H=z.next();!H.done;H=z.next()){var B=H.value,O=D[B];m===1&&(O=O.ds),N.set(parseInt(B,10),xa(O))}}catch(F){l={error:F}}finally{try{H&&!H.done&&(s=z.return)&&s.call(z)}finally{if(l)throw l.error}}x._index.set(L,N)}}catch(F){i={error:F}}finally{try{P&&!P.done&&(a=k.return)&&a.call(k)}finally{if(i)throw i.error}}return x},e.prototype.executeQuery=function(t,n){var r=this;if(n===void 0&&(n={}),t===e.wildcard)return this.executeWildcardQuery(n);if(typeof t!="string"){var o=he(he(he({},n),t),{queries:void 0}),i=t.queries.map(function(C){return r.executeQuery(C,o)});return this.combineResults(i,o.combineWith)}var a=this._options,l=a.tokenize,s=a.processTerm,c=a.searchOptions,f=he(he({tokenize:l,processTerm:s},c),n),u=f.tokenize,d=f.processTerm,p=u(t).flatMap(function(C){return d(C)}).filter(function(C){return!!C}),y=p.map(Z4(f)),g=y.map(function(C){return r.executeQuerySpec(C,f)});return this.combineResults(g,f.combineWith)},e.prototype.executeQuerySpec=function(t,n){var r,o,i,a,l=he(he({},this._options.searchOptions),n),s=(l.fields||this._options.fields).reduce(function(B,O){var F;return he(he({},B),(F={},F[O]=Ys(l.boost,O)||1,F))},{}),c=l.boostDocument,f=l.weights,u=l.maxFuzzy,d=l.bm25,p=he(he({},cp.weights),f),y=p.fuzzy,g=p.prefix,C=this._index.get(t.term),v=this.termResults(t.term,t.term,1,C,s,c,d),m,x;if(t.prefix&&(m=this._index.atPrefix(t.term)),t.fuzzy){var E=t.fuzzy===!0?.2:t.fuzzy,_=E<1?Math.min(u,Math.round(t.term.length*E)):E;_&&(x=this._index.fuzzyGet(t.term,_))}if(m)try{for(var b=ne(m),S=b.next();!S.done;S=b.next()){var $=Le(S.value,2),k=$[0],P=$[1],j=k.length-t.term.length;if(j){x==null||x.delete(k);var L=g*k.length/(k.length+.3*j);this.termResults(t.term,k,L,P,s,c,d,v)}}}catch(B){r={error:B}}finally{try{S&&!S.done&&(o=b.return)&&o.call(b)}finally{if(r)throw r.error}}if(x)try{for(var D=ne(x.keys()),N=D.next();!N.done;N=D.next()){var k=N.value,z=Le(x.get(k),2),H=z[0],j=z[1];if(j){var L=y*k.length/(k.length+j);this.termResults(t.term,k,L,H,s,c,d,v)}}}catch(B){i={error:B}}finally{try{N&&!N.done&&(a=D.return)&&a.call(D)}finally{if(i)throw i.error}}return v},e.prototype.executeWildcardQuery=function(t){var n,r,o=new Map,i=he(he({},this._options.searchOptions),t);try{for(var a=ne(this._documentIds),l=a.next();!l.done;l=a.next()){var s=Le(l.value,2),c=s[0],f=s[1],u=i.boostDocument?i.boostDocument(f,"",this._storedFields.get(c)):1;o.set(c,{score:u,terms:[],match:{}})}}catch(d){n={error:d}}finally{try{l&&!l.done&&(r=a.return)&&r.call(a)}finally{if(n)throw n.error}}return o},e.prototype.combineResults=function(t,n){if(n===void 0&&(n=Hf),t.length===0)return new Map;var r=n.toLowerCase();return t.reduce(Y4[r])||new Map},e.prototype.toJSON=function(){var t,n,r,o,i=[];try{for(var a=ne(this._index),l=a.next();!l.done;l=a.next()){var s=Le(l.value,2),c=s[0],f=s[1],u={};try{for(var d=(r=void 0,ne(f)),p=d.next();!p.done;p=d.next()){var y=Le(p.value,2),g=y[0],C=y[1];u[g]=Object.fromEntries(C)}}catch(v){r={error:v}}finally{try{p&&!p.done&&(o=d.return)&&o.call(d)}finally{if(r)throw r.error}}i.push([c,u])}}catch(v){t={error:v}}finally{try{l&&!l.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}return{documentCount:this._documentCount,nextId:this._nextId,documentIds:Object.fromEntries(this._documentIds),fieldIds:this._fieldIds,fieldLength:Object.fromEntries(this._fieldLength),averageFieldLength:this._avgFieldLength,storedFields:Object.fromEntries(this._storedFields),dirtCount:this._dirtCount,index:i,serializationVersion:2}},e.prototype.termResults=function(t,n,r,o,i,a,l,s){var c,f,u,d,p;if(s===void 0&&(s=new Map),o==null)return s;try{for(var y=ne(Object.keys(i)),g=y.next();!g.done;g=y.next()){var C=g.value,v=i[C],m=this._fieldIds[C],x=o.get(m);if(x!=null){var E=x.size,_=this._avgFieldLength[m];try{for(var b=(u=void 0,ne(x.keys())),S=b.next();!S.done;S=b.next()){var $=S.value;if(!this._documentIds.has($)){this.removeTerm(m,$,n),E-=1;continue}var k=a?a(this._documentIds.get($),n,this._storedFields.get($)):1;if(k){var P=x.get($),j=this._fieldLength.get($)[m],L=Q4(P,E,this._documentCount,j,_,l),D=r*v*k*L,N=s.get($);if(N){N.score+=D,J4(N.terms,t);var z=Ys(N.match,n);z?z.push(C):N.match[n]=[C]}else s.set($,{score:D,terms:[t],match:(p={},p[n]=[C],p)})}}}catch(H){u={error:H}}finally{try{S&&!S.done&&(d=b.return)&&d.call(b)}finally{if(u)throw u.error}}}}}catch(H){c={error:H}}finally{try{g&&!g.done&&(f=y.return)&&f.call(y)}finally{if(c)throw c.error}}return s},e.prototype.addTerm=function(t,n,r){var o=this._index.fetch(r,dp),i=o.get(t);if(i==null)i=new Map,i.set(n,1),o.set(t,i);else{var a=i.get(n);i.set(n,(a||0)+1)}},e.prototype.removeTerm=function(t,n,r){if(!this._index.has(r)){this.warnDocumentChanged(n,t,r);return}var o=this._index.fetch(r,dp),i=o.get(t);i==null||i.get(n)==null?this.warnDocumentChanged(n,t,r):i.get(n)<=1?i.size<=1?o.delete(t):i.delete(n):i.set(n,i.get(n)-1),this._index.get(r).size===0&&this._index.delete(r)},e.prototype.warnDocumentChanged=function(t,n,r){var o,i;try{for(var a=ne(Object.keys(this._fieldIds)),l=a.next();!l.done;l=a.next()){var s=l.value;if(this._fieldIds[s]===n){this._options.logger("warn","MiniSearch: document with ID ".concat(this._documentIds.get(t),' has changed before removal: term "').concat(r,'" was not present in field "').concat(s,'". Removing a document after it has changed can corrupt the index!'),"version_conflict");return}}}catch(c){o={error:c}}finally{try{l&&!l.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}},e.prototype.addDocumentId=function(t){var n=this._nextId;return this._idToShortId.set(t,n),this._documentIds.set(n,t),this._documentCount+=1,this._nextId+=1,n},e.prototype.addFields=function(t){for(var n=0;nJSON.stringify(await(await fetch("/portfolio/.vocs/search-index-a770ed46.json")).json());let Zs;function _g(){const[e,t]=h.useState();return h.useEffect(()=>{(async()=>{Zs||(Zs=e6());const n=await Zs,r=K4.loadJSON(n,{fields:["title","titles","text"],searchOptions:{boost:{title:4,text:2,titles:1},fuzzy:.2,prefix:!0},storeFields:["href","html","isPage","text","title","titles"]});t(r)})()},[]),h.useEffect(()=>{},[]),e}var t6="vocs_DesktopSearch_search",n6="vocs_DesktopSearch_searchCommand";const r6=h.forwardRef((e,t)=>h.createElement(ue.label,Y({},e,{ref:t,onMouseDown:n=>{var r;(r=e.onMouseDown)===null||r===void 0||r.call(e,n),!n.defaultPrevented&&n.detail>1&&n.preventDefault()}}))),o6=r6;var Sg={exports:{}};/*!*************************************************** +`)},g4=0,jr=[];function y4(e){var t=h.useRef([]),n=h.useRef([0,0]),r=h.useRef(),o=h.useState(g4++)[0],i=h.useState(function(){return rg()})[0],a=h.useRef(e);h.useEffect(function(){a.current=e},[e]),h.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var g=B5([e.lockRef.current],(e.shards||[]).map(sp),!0).filter(Boolean);return g.forEach(function(C){return C.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),g.forEach(function(C){return C.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var l=h.useCallback(function(g,C){if("touches"in g&&g.touches.length===2)return!a.current.allowPinchZoom;var v=ga(g),m=n.current,x="deltaX"in g?g.deltaX:m[0]-v[0],E="deltaY"in g?g.deltaY:m[1]-v[1],_,b=g.target,S=Math.abs(x)>Math.abs(E)?"h":"v";if("touches"in g&&S==="h"&&b.type==="range")return!1;var $=ap(S,b);if(!$)return!0;if($?_=S:(_=S==="v"?"h":"v",$=ap(S,b)),!$)return!1;if(!r.current&&"changedTouches"in g&&(x||E)&&(r.current=_),!_)return!0;var k=r.current||_;return p4(k,C,g,k==="h"?x:E,!0)},[]),s=h.useCallback(function(g){var C=g;if(!(!jr.length||jr[jr.length-1]!==i)){var v="deltaY"in C?lp(C):ga(C),m=t.current.filter(function(_){return _.name===C.type&&_.target===C.target&&v4(_.delta,v)})[0];if(m&&m.should){C.cancelable&&C.preventDefault();return}if(!m){var x=(a.current.shards||[]).map(sp).filter(Boolean).filter(function(_){return _.contains(C.target)}),E=x.length>0?l(C,x[0]):!a.current.noIsolation;E&&C.cancelable&&C.preventDefault()}}},[]),c=h.useCallback(function(g,C,v,m){var x={name:g,delta:C,target:v,should:m};t.current.push(x),setTimeout(function(){t.current=t.current.filter(function(E){return E!==x})},1)},[]),f=h.useCallback(function(g){n.current=ga(g),r.current=void 0},[]),u=h.useCallback(function(g){c(g.type,lp(g),g.target,l(g,e.lockRef.current))},[]),d=h.useCallback(function(g){c(g.type,ga(g),g.target,l(g,e.lockRef.current))},[]);h.useEffect(function(){return jr.push(i),e.setCallbacks({onScrollCapture:u,onWheelCapture:u,onTouchMoveCapture:d}),document.addEventListener("wheel",s,Mr),document.addEventListener("touchmove",s,Mr),document.addEventListener("touchstart",f,Mr),function(){jr=jr.filter(function(g){return g!==i}),document.removeEventListener("wheel",s,Mr),document.removeEventListener("touchmove",s,Mr),document.removeEventListener("touchstart",f,Mr)}},[]);var p=e.removeScrollBar,y=e.inert;return h.createElement(h.Fragment,null,y?h.createElement(i,{styles:m4(o)}):null,p?h.createElement(l4,{gapMode:"margin"}):null)}const w4=Q5(ng,y4);var lg=h.forwardRef(function(e,t){return h.createElement(Ul,qt({},e,{ref:t,sideCar:w4}))});lg.classNames=Ul.classNames;const sg=lg;var x4=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},Dr=new WeakMap,ya=new WeakMap,wa={},Vs=0,cg=function(e){return e&&(e.host||cg(e.parentNode))},C4=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=cg(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},E4=function(e,t,n,r){var o=C4(t,Array.isArray(e)?e:[e]);wa[n]||(wa[n]=new WeakMap);var i=wa[n],a=[],l=new Set,s=new Set(o),c=function(u){!u||l.has(u)||(l.add(u),c(u.parentNode))};o.forEach(c);var f=function(u){!u||s.has(u)||Array.prototype.forEach.call(u.children,function(d){if(l.has(d))f(d);else{var p=d.getAttribute(r),y=p!==null&&p!=="false",g=(Dr.get(d)||0)+1,C=(i.get(d)||0)+1;Dr.set(d,g),i.set(d,C),a.push(d),g===1&&y&&ya.set(d,!0),C===1&&d.setAttribute(n,"true"),y||d.setAttribute(r,"true")}})};return f(t),l.clear(),Vs++,function(){a.forEach(function(u){var d=Dr.get(u)-1,p=i.get(u)-1;Dr.set(u,d),i.set(u,p),d||(ya.has(u)||u.removeAttribute(r),ya.delete(u)),p||u.removeAttribute(n)}),Vs--,Vs||(Dr=new WeakMap,Dr=new WeakMap,ya=new WeakMap,wa={})}},ug=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=t||x4(e);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live]"))),E4(r,o,n,"aria-hidden")):function(){return null}};const fg="Dialog",[dg,Q9]=En(fg),[b4,_n]=dg(fg),_4=e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:o,onOpenChange:i,modal:a=!0}=e,l=h.useRef(null),s=h.useRef(null),[c=!1,f]=rr({prop:r,defaultProp:o,onChange:i});return h.createElement(b4,{scope:t,triggerRef:l,contentRef:s,contentId:rn(),titleId:rn(),descriptionId:rn(),open:c,onOpenChange:f,onOpenToggle:h.useCallback(()=>f(u=>!u),[f]),modal:a},n)},S4="DialogTrigger",$4=h.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=_n(S4,n),i=Be(t,o.triggerRef);return h.createElement(ue.button,G({type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":Uf(o.open)},r,{ref:i,onClick:ae(e.onClick,o.onOpenToggle)}))}),hg="DialogPortal",[T4,pg]=dg(hg,{forceMount:void 0}),k4=e=>{const{__scopeDialog:t,forceMount:n,children:r,container:o}=e,i=_n(hg,t);return h.createElement(T4,{scope:t,forceMount:n},h.Children.map(r,a=>h.createElement(bn,{present:n||i.open},h.createElement(J0,{asChild:!0,container:o},a))))},fu="DialogOverlay",R4=h.forwardRef((e,t)=>{const n=pg(fu,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,i=_n(fu,e.__scopeDialog);return i.modal?h.createElement(bn,{present:r||i.open},h.createElement(N4,G({},o,{ref:t}))):null}),N4=h.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=_n(fu,n);return h.createElement(sg,{as:xo,allowPinchZoom:!0,shards:[o.contentRef]},h.createElement(ue.div,G({"data-state":Uf(o.open)},r,{ref:t,style:{pointerEvents:"auto",...r.style}})))}),Ri="DialogContent",P4=h.forwardRef((e,t)=>{const n=pg(Ri,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,i=_n(Ri,e.__scopeDialog);return h.createElement(bn,{present:r||i.open},i.modal?h.createElement(A4,G({},o,{ref:t})):h.createElement(O4,G({},o,{ref:t})))}),A4=h.forwardRef((e,t)=>{const n=_n(Ri,e.__scopeDialog),r=h.useRef(null),o=Be(t,n.contentRef,r);return h.useEffect(()=>{const i=r.current;if(i)return ug(i)},[]),h.createElement(vg,G({},e,{ref:o,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:ae(e.onCloseAutoFocus,i=>{var a;i.preventDefault(),(a=n.triggerRef.current)===null||a===void 0||a.focus()}),onPointerDownOutside:ae(e.onPointerDownOutside,i=>{const a=i.detail.originalEvent,l=a.button===0&&a.ctrlKey===!0;(a.button===2||l)&&i.preventDefault()}),onFocusOutside:ae(e.onFocusOutside,i=>i.preventDefault())}))}),O4=h.forwardRef((e,t)=>{const n=_n(Ri,e.__scopeDialog),r=h.useRef(!1),o=h.useRef(!1);return h.createElement(vg,G({},e,{ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{var a;if((a=e.onCloseAutoFocus)===null||a===void 0||a.call(e,i),!i.defaultPrevented){var l;r.current||(l=n.triggerRef.current)===null||l===void 0||l.focus(),i.preventDefault()}r.current=!1,o.current=!1},onInteractOutside:i=>{var a,l;(a=e.onInteractOutside)===null||a===void 0||a.call(e,i),i.defaultPrevented||(r.current=!0,i.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const s=i.target;((l=n.triggerRef.current)===null||l===void 0?void 0:l.contains(s))&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&o.current&&i.preventDefault()}}))}),vg=h.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:i,...a}=e,l=_n(Ri,n),s=h.useRef(null),c=Be(t,s);return q0(),h.createElement(h.Fragment,null,h.createElement(Z0,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:i},h.createElement(Bf,G({role:"dialog",id:l.contentId,"aria-describedby":l.descriptionId,"aria-labelledby":l.titleId,"data-state":Uf(l.open)},a,{ref:c,onDismiss:()=>l.onOpenChange(!1)}))),!1)}),I4="DialogTitle",L4=h.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=_n(I4,n);return h.createElement(ue.h2,G({id:o.titleId},r,{ref:t}))});function Uf(e){return e?"open":"closed"}const mg=_4,gg=$4,M4=k4,j4=R4,D4=P4,F4=L4;var he=function(){return he=Object.assign||function(t){for(var n,r=1,o=arguments.length;r0&&i[i.length-1])&&(c[0]===6||c[0]===2)){n=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Me(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),o,i=[],a;try{for(;(t===void 0||t-- >0)&&!(o=r.next()).done;)i.push(o.value)}catch(l){a={error:l}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(a)throw a.error}}return i}var U4="ENTRIES",yg="KEYS",wg="VALUES",Ze="",Hs=function(){function e(t,n){var r=t._tree,o=Array.from(r.keys());this.set=t,this._type=n,this._path=o.length>0?[{node:r,keys:o}]:[]}return e.prototype.next=function(){var t=this.dive();return this.backtrack(),t},e.prototype.dive=function(){if(this._path.length===0)return{done:!0,value:void 0};var t=Fr(this._path),n=t.node,r=t.keys;if(Fr(r)===Ze)return{done:!1,value:this.result()};var o=n.get(Fr(r));return this._path.push({node:o,keys:Array.from(o.keys())}),this.dive()},e.prototype.backtrack=function(){if(this._path.length!==0){var t=Fr(this._path).keys;t.pop(),!(t.length>0)&&(this._path.pop(),this.backtrack())}},e.prototype.key=function(){return this.set._prefix+this._path.map(function(t){var n=t.keys;return Fr(n)}).filter(function(t){return t!==Ze}).join("")},e.prototype.value=function(){return Fr(this._path).node.get(Ze)},e.prototype.result=function(){switch(this._type){case wg:return this.value();case yg:return this.key();default:return[this.key(),this.value()]}},e.prototype[Symbol.iterator]=function(){return this},e}(),Fr=function(e){return e[e.length-1]},V4=function(e,t,n){var r=new Map;if(t===void 0)return r;for(var o=t.length+1,i=o+n,a=new Uint8Array(i*o).fill(n+1),l=0;ln)continue e}xg(e.get(p),t,n,r,o,g,a,l+p)}}}catch(D){s={error:D}}finally{try{d&&!d.done&&(c=u.return)&&c.call(u)}finally{if(s)throw s.error}}},Ws=function(){function e(t,n){t===void 0&&(t=new Map),n===void 0&&(n=""),this._size=void 0,this._tree=t,this._prefix=n}return e.prototype.atPrefix=function(t){var n,r;if(!t.startsWith(this._prefix))throw new Error("Mismatched prefix");var o=Me(pl(this._tree,t.slice(this._prefix.length)),2),i=o[0],a=o[1];if(i===void 0){var l=Me(Vf(a),2),s=l[0],c=l[1];try{for(var f=ne(s.keys()),u=f.next();!u.done;u=f.next()){var d=u.value;if(d!==Ze&&d.startsWith(c)){var p=new Map;return p.set(d.slice(c.length),s.get(d)),new e(p,t)}}}catch(y){n={error:y}}finally{try{u&&!u.done&&(r=f.return)&&r.call(f)}finally{if(n)throw n.error}}}return new e(i,t)},e.prototype.clear=function(){this._size=void 0,this._tree.clear()},e.prototype.delete=function(t){return this._size=void 0,H4(this._tree,t)},e.prototype.entries=function(){return new Hs(this,U4)},e.prototype.forEach=function(t){var n,r;try{for(var o=ne(this),i=o.next();!i.done;i=o.next()){var a=Me(i.value,2),l=a[0],s=a[1];t(l,s,this)}}catch(c){n={error:c}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}},e.prototype.fuzzyGet=function(t,n){return V4(this._tree,t,n)},e.prototype.get=function(t){var n=du(this._tree,t);return n!==void 0?n.get(Ze):void 0},e.prototype.has=function(t){var n=du(this._tree,t);return n!==void 0&&n.has(Ze)},e.prototype.keys=function(){return new Hs(this,yg)},e.prototype.set=function(t,n){if(typeof t!="string")throw new Error("key must be a string");this._size=void 0;var r=Ks(this._tree,t);return r.set(Ze,n),this},Object.defineProperty(e.prototype,"size",{get:function(){if(this._size)return this._size;this._size=0;for(var t=this.entries();!t.next().done;)this._size+=1;return this._size},enumerable:!1,configurable:!0}),e.prototype.update=function(t,n){if(typeof t!="string")throw new Error("key must be a string");this._size=void 0;var r=Ks(this._tree,t);return r.set(Ze,n(r.get(Ze))),this},e.prototype.fetch=function(t,n){if(typeof t!="string")throw new Error("key must be a string");this._size=void 0;var r=Ks(this._tree,t),o=r.get(Ze);return o===void 0&&r.set(Ze,o=n()),o},e.prototype.values=function(){return new Hs(this,wg)},e.prototype[Symbol.iterator]=function(){return this.entries()},e.from=function(t){var n,r,o=new e;try{for(var i=ne(t),a=i.next();!a.done;a=i.next()){var l=Me(a.value,2),s=l[0],c=l[1];o.set(s,c)}}catch(f){n={error:f}}finally{try{a&&!a.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o},e.fromObject=function(t){return e.from(Object.entries(t))},e}(),pl=function(e,t,n){var r,o;if(n===void 0&&(n=[]),t.length===0||e==null)return[e,n];try{for(var i=ne(e.keys()),a=i.next();!a.done;a=i.next()){var l=a.value;if(l!==Ze&&t.startsWith(l))return n.push([e,l]),pl(e.get(l),t.slice(l.length),n)}}catch(s){r={error:s}}finally{try{a&&!a.done&&(o=i.return)&&o.call(i)}finally{if(r)throw r.error}}return n.push([e,t]),pl(void 0,"",n)},du=function(e,t){var n,r;if(t.length===0||e==null)return e;try{for(var o=ne(e.keys()),i=o.next();!i.done;i=o.next()){var a=i.value;if(a!==Ze&&t.startsWith(a))return du(e.get(a),t.slice(a.length))}}catch(l){n={error:l}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}},Ks=function(e,t){var n,r,o=t.length;e:for(var i=0;e&&i0)throw new Error("Expected documents to be present. Omit the argument to remove all documents.");this._index=new Ws,this._documentCount=0,this._documentIds=new Map,this._idToShortId=new Map,this._fieldLength=new Map,this._avgFieldLength=[],this._storedFields=new Map,this._nextId=0}},e.prototype.discard=function(t){var n=this,r=this._idToShortId.get(t);if(r==null)throw new Error("MiniSearch: cannot discard document with ID ".concat(t,": it is not in the index"));this._idToShortId.delete(t),this._documentIds.delete(r),this._storedFields.delete(r),(this._fieldLength.get(r)||[]).forEach(function(o,i){n.removeFieldLength(r,i,n._documentCount,o)}),this._fieldLength.delete(r),this._documentCount-=1,this._dirtCount+=1,this.maybeAutoVacuum()},e.prototype.maybeAutoVacuum=function(){if(this._options.autoVacuum!==!1){var t=this._options.autoVacuum,n=t.minDirtFactor,r=t.minDirtCount,o=t.batchSize,i=t.batchWait;this.conditionalVacuum({batchSize:o,batchWait:i},{minDirtCount:r,minDirtFactor:n})}},e.prototype.discardAll=function(t){var n,r,o=this._options.autoVacuum;try{this._options.autoVacuum=!1;try{for(var i=ne(t),a=i.next();!a.done;a=i.next()){var l=a.value;this.discard(l)}}catch(s){n={error:s}}finally{try{a&&!a.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}}finally{this._options.autoVacuum=o}this.maybeAutoVacuum()},e.prototype.replace=function(t){var n=this._options,r=n.idField,o=n.extractField,i=o(t,r);this.discard(i),this.add(t)},e.prototype.vacuum=function(t){return t===void 0&&(t={}),this.conditionalVacuum(t)},e.prototype.conditionalVacuum=function(t,n){var r=this;return this._currentVacuum?(this._enqueuedVacuumConditions=this._enqueuedVacuumConditions&&n,this._enqueuedVacuum!=null?this._enqueuedVacuum:(this._enqueuedVacuum=this._currentVacuum.then(function(){var o=r._enqueuedVacuumConditions;return r._enqueuedVacuumConditions=pu,r.performVacuuming(t,o)}),this._enqueuedVacuum)):this.vacuumConditionsMet(n)===!1?Promise.resolve():(this._currentVacuum=this.performVacuuming(t),this._currentVacuum)},e.prototype.performVacuuming=function(t,n){return z4(this,void 0,void 0,function(){var r,o,i,a,l,s,c,f,u,d,p,y,g,C,v,m,x,E,_,b,S,$,k,P,j;return B4(this,function(L){switch(L.label){case 0:if(r=this._dirtCount,!this.vacuumConditionsMet(n))return[3,10];o=t.batchSize||hu.batchSize,i=t.batchWait||hu.batchWait,a=1,L.label=1;case 1:L.trys.push([1,7,8,9]),l=ne(this._index),s=l.next(),L.label=2;case 2:if(s.done)return[3,6];c=Me(s.value,2),f=c[0],u=c[1];try{for(d=($=void 0,ne(u)),p=d.next();!p.done;p=d.next()){y=Me(p.value,2),g=y[0],C=y[1];try{for(v=(P=void 0,ne(C)),m=v.next();!m.done;m=v.next())x=Me(m.value,1),E=x[0],!this._documentIds.has(E)&&(C.size<=1?u.delete(g):C.delete(E))}catch(D){P={error:D}}finally{try{m&&!m.done&&(j=v.return)&&j.call(v)}finally{if(P)throw P.error}}}}catch(D){$={error:D}}finally{try{p&&!p.done&&(k=d.return)&&k.call(d)}finally{if($)throw $.error}}return this._index.get(f).size===0&&this._index.delete(f),a%o!==0?[3,4]:[4,new Promise(function(D){return setTimeout(D,i)})];case 3:L.sent(),L.label=4;case 4:a+=1,L.label=5;case 5:return s=l.next(),[3,2];case 6:return[3,9];case 7:return _=L.sent(),b={error:_},[3,9];case 8:try{s&&!s.done&&(S=l.return)&&S.call(l)}finally{if(b)throw b.error}return[7];case 9:this._dirtCount-=r,L.label=10;case 10:return[4,null];case 11:return L.sent(),this._currentVacuum=this._enqueuedVacuum,this._enqueuedVacuum=null,[2]}})})},e.prototype.vacuumConditionsMet=function(t){if(t==null)return!0;var n=t.minDirtCount,r=t.minDirtFactor;return n=n||Qs.minDirtCount,r=r||Qs.minDirtFactor,this.dirtCount>=n&&this.dirtFactor>=r},Object.defineProperty(e.prototype,"isVacuuming",{get:function(){return this._currentVacuum!=null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"dirtCount",{get:function(){return this._dirtCount},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"dirtFactor",{get:function(){return this._dirtCount/(1+this._documentCount+this._dirtCount)},enumerable:!1,configurable:!0}),e.prototype.has=function(t){return this._idToShortId.has(t)},e.prototype.getStoredFields=function(t){var n=this._idToShortId.get(t);if(n!=null)return this._storedFields.get(n)},e.prototype.search=function(t,n){var r,o;n===void 0&&(n={});var i=this.executeQuery(t,n),a=[];try{for(var l=ne(i),s=l.next();!s.done;s=l.next()){var c=Me(s.value,2),f=c[0],u=c[1],d=u.score,p=u.terms,y=u.match,g=p.length||1,C={id:this._documentIds.get(f),score:d*g,terms:Object.keys(y),queryTerms:p,match:y};Object.assign(C,this._storedFields.get(f)),(n.filter==null||n.filter(C))&&a.push(C)}}catch(v){r={error:v}}finally{try{s&&!s.done&&(o=l.return)&&o.call(l)}finally{if(r)throw r.error}}return t===e.wildcard&&n.boostDocument==null&&this._options.searchOptions.boostDocument==null||a.sort(fp),a},e.prototype.autoSuggest=function(t,n){var r,o,i,a;n===void 0&&(n={}),n=he(he({},this._options.autoSuggestOptions),n);var l=new Map;try{for(var s=ne(this.search(t,n)),c=s.next();!c.done;c=s.next()){var f=c.value,u=f.score,d=f.terms,p=d.join(" "),y=l.get(p);y!=null?(y.score+=u,y.count+=1):l.set(p,{score:u,terms:d,count:1})}}catch(_){r={error:_}}finally{try{c&&!c.done&&(o=s.return)&&o.call(s)}finally{if(r)throw r.error}}var g=[];try{for(var C=ne(l),v=C.next();!v.done;v=C.next()){var m=Me(v.value,2),y=m[0],x=m[1],u=x.score,d=x.terms,E=x.count;g.push({suggestion:y,terms:d,score:u/E})}}catch(_){i={error:_}}finally{try{v&&!v.done&&(a=C.return)&&a.call(C)}finally{if(i)throw i.error}}return g.sort(fp),g},Object.defineProperty(e.prototype,"documentCount",{get:function(){return this._documentCount},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"termCount",{get:function(){return this._index.size},enumerable:!1,configurable:!0}),e.loadJSON=function(t,n){if(n==null)throw new Error("MiniSearch: loadJSON should be given the same options used when serializing the index");return this.loadJS(JSON.parse(t),n)},e.getDefault=function(t){if(Ys.hasOwnProperty(t))return Gs(Ys,t);throw new Error('MiniSearch: unknown option "'.concat(t,'"'))},e.loadJS=function(t,n){var r,o,i,a,l,s,c=t.index,f=t.documentCount,u=t.nextId,d=t.documentIds,p=t.fieldIds,y=t.fieldLength,g=t.averageFieldLength,C=t.storedFields,v=t.dirtCount,m=t.serializationVersion;if(m!==1&&m!==2)throw new Error("MiniSearch: cannot deserialize an index created with an incompatible version");var x=new e(n);x._documentCount=f,x._nextId=u,x._documentIds=xa(d),x._idToShortId=new Map,x._fieldIds=p,x._fieldLength=xa(y),x._avgFieldLength=g,x._storedFields=xa(C),x._dirtCount=v||0,x._index=new Ws;try{for(var E=ne(x._documentIds),_=E.next();!_.done;_=E.next()){var b=Me(_.value,2),S=b[0],$=b[1];x._idToShortId.set($,S)}}catch(F){r={error:F}}finally{try{_&&!_.done&&(o=E.return)&&o.call(E)}finally{if(r)throw r.error}}try{for(var k=ne(c),P=k.next();!P.done;P=k.next()){var j=Me(P.value,2),L=j[0],D=j[1],N=new Map;try{for(var z=(l=void 0,ne(Object.keys(D))),H=z.next();!H.done;H=z.next()){var B=H.value,O=D[B];m===1&&(O=O.ds),N.set(parseInt(B,10),xa(O))}}catch(F){l={error:F}}finally{try{H&&!H.done&&(s=z.return)&&s.call(z)}finally{if(l)throw l.error}}x._index.set(L,N)}}catch(F){i={error:F}}finally{try{P&&!P.done&&(a=k.return)&&a.call(k)}finally{if(i)throw i.error}}return x},e.prototype.executeQuery=function(t,n){var r=this;if(n===void 0&&(n={}),t===e.wildcard)return this.executeWildcardQuery(n);if(typeof t!="string"){var o=he(he(he({},n),t),{queries:void 0}),i=t.queries.map(function(C){return r.executeQuery(C,o)});return this.combineResults(i,o.combineWith)}var a=this._options,l=a.tokenize,s=a.processTerm,c=a.searchOptions,f=he(he({tokenize:l,processTerm:s},c),n),u=f.tokenize,d=f.processTerm,p=u(t).flatMap(function(C){return d(C)}).filter(function(C){return!!C}),y=p.map(Z4(f)),g=y.map(function(C){return r.executeQuerySpec(C,f)});return this.combineResults(g,f.combineWith)},e.prototype.executeQuerySpec=function(t,n){var r,o,i,a,l=he(he({},this._options.searchOptions),n),s=(l.fields||this._options.fields).reduce(function(B,O){var F;return he(he({},B),(F={},F[O]=Gs(l.boost,O)||1,F))},{}),c=l.boostDocument,f=l.weights,u=l.maxFuzzy,d=l.bm25,p=he(he({},cp.weights),f),y=p.fuzzy,g=p.prefix,C=this._index.get(t.term),v=this.termResults(t.term,t.term,1,C,s,c,d),m,x;if(t.prefix&&(m=this._index.atPrefix(t.term)),t.fuzzy){var E=t.fuzzy===!0?.2:t.fuzzy,_=E<1?Math.min(u,Math.round(t.term.length*E)):E;_&&(x=this._index.fuzzyGet(t.term,_))}if(m)try{for(var b=ne(m),S=b.next();!S.done;S=b.next()){var $=Me(S.value,2),k=$[0],P=$[1],j=k.length-t.term.length;if(j){x==null||x.delete(k);var L=g*k.length/(k.length+.3*j);this.termResults(t.term,k,L,P,s,c,d,v)}}}catch(B){r={error:B}}finally{try{S&&!S.done&&(o=b.return)&&o.call(b)}finally{if(r)throw r.error}}if(x)try{for(var D=ne(x.keys()),N=D.next();!N.done;N=D.next()){var k=N.value,z=Me(x.get(k),2),H=z[0],j=z[1];if(j){var L=y*k.length/(k.length+j);this.termResults(t.term,k,L,H,s,c,d,v)}}}catch(B){i={error:B}}finally{try{N&&!N.done&&(a=D.return)&&a.call(D)}finally{if(i)throw i.error}}return v},e.prototype.executeWildcardQuery=function(t){var n,r,o=new Map,i=he(he({},this._options.searchOptions),t);try{for(var a=ne(this._documentIds),l=a.next();!l.done;l=a.next()){var s=Me(l.value,2),c=s[0],f=s[1],u=i.boostDocument?i.boostDocument(f,"",this._storedFields.get(c)):1;o.set(c,{score:u,terms:[],match:{}})}}catch(d){n={error:d}}finally{try{l&&!l.done&&(r=a.return)&&r.call(a)}finally{if(n)throw n.error}}return o},e.prototype.combineResults=function(t,n){if(n===void 0&&(n=Hf),t.length===0)return new Map;var r=n.toLowerCase();return t.reduce(G4[r])||new Map},e.prototype.toJSON=function(){var t,n,r,o,i=[];try{for(var a=ne(this._index),l=a.next();!l.done;l=a.next()){var s=Me(l.value,2),c=s[0],f=s[1],u={};try{for(var d=(r=void 0,ne(f)),p=d.next();!p.done;p=d.next()){var y=Me(p.value,2),g=y[0],C=y[1];u[g]=Object.fromEntries(C)}}catch(v){r={error:v}}finally{try{p&&!p.done&&(o=d.return)&&o.call(d)}finally{if(r)throw r.error}}i.push([c,u])}}catch(v){t={error:v}}finally{try{l&&!l.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}return{documentCount:this._documentCount,nextId:this._nextId,documentIds:Object.fromEntries(this._documentIds),fieldIds:this._fieldIds,fieldLength:Object.fromEntries(this._fieldLength),averageFieldLength:this._avgFieldLength,storedFields:Object.fromEntries(this._storedFields),dirtCount:this._dirtCount,index:i,serializationVersion:2}},e.prototype.termResults=function(t,n,r,o,i,a,l,s){var c,f,u,d,p;if(s===void 0&&(s=new Map),o==null)return s;try{for(var y=ne(Object.keys(i)),g=y.next();!g.done;g=y.next()){var C=g.value,v=i[C],m=this._fieldIds[C],x=o.get(m);if(x!=null){var E=x.size,_=this._avgFieldLength[m];try{for(var b=(u=void 0,ne(x.keys())),S=b.next();!S.done;S=b.next()){var $=S.value;if(!this._documentIds.has($)){this.removeTerm(m,$,n),E-=1;continue}var k=a?a(this._documentIds.get($),n,this._storedFields.get($)):1;if(k){var P=x.get($),j=this._fieldLength.get($)[m],L=Q4(P,E,this._documentCount,j,_,l),D=r*v*k*L,N=s.get($);if(N){N.score+=D,J4(N.terms,t);var z=Gs(N.match,n);z?z.push(C):N.match[n]=[C]}else s.set($,{score:D,terms:[t],match:(p={},p[n]=[C],p)})}}}catch(H){u={error:H}}finally{try{S&&!S.done&&(d=b.return)&&d.call(b)}finally{if(u)throw u.error}}}}}catch(H){c={error:H}}finally{try{g&&!g.done&&(f=y.return)&&f.call(y)}finally{if(c)throw c.error}}return s},e.prototype.addTerm=function(t,n,r){var o=this._index.fetch(r,dp),i=o.get(t);if(i==null)i=new Map,i.set(n,1),o.set(t,i);else{var a=i.get(n);i.set(n,(a||0)+1)}},e.prototype.removeTerm=function(t,n,r){if(!this._index.has(r)){this.warnDocumentChanged(n,t,r);return}var o=this._index.fetch(r,dp),i=o.get(t);i==null||i.get(n)==null?this.warnDocumentChanged(n,t,r):i.get(n)<=1?i.size<=1?o.delete(t):i.delete(n):i.set(n,i.get(n)-1),this._index.get(r).size===0&&this._index.delete(r)},e.prototype.warnDocumentChanged=function(t,n,r){var o,i;try{for(var a=ne(Object.keys(this._fieldIds)),l=a.next();!l.done;l=a.next()){var s=l.value;if(this._fieldIds[s]===n){this._options.logger("warn","MiniSearch: document with ID ".concat(this._documentIds.get(t),' has changed before removal: term "').concat(r,'" was not present in field "').concat(s,'". Removing a document after it has changed can corrupt the index!'),"version_conflict");return}}}catch(c){o={error:c}}finally{try{l&&!l.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}},e.prototype.addDocumentId=function(t){var n=this._nextId;return this._idToShortId.set(t,n),this._documentIds.set(n,t),this._documentCount+=1,this._nextId+=1,n},e.prototype.addFields=function(t){for(var n=0;nJSON.stringify(await(await fetch("/portfolio/.vocs/search-index-4e8c166a.json")).json());let Zs;function _g(){const[e,t]=h.useState();return h.useEffect(()=>{(async()=>{Zs||(Zs=e6());const n=await Zs,r=K4.loadJSON(n,{fields:["title","titles","text"],searchOptions:{boost:{title:4,text:2,titles:1},fuzzy:.2,prefix:!0},storeFields:["href","html","isPage","text","title","titles"]});t(r)})()},[]),h.useEffect(()=>{},[]),e}var t6="vocs_DesktopSearch_search",n6="vocs_DesktopSearch_searchCommand";const r6=h.forwardRef((e,t)=>h.createElement(ue.label,G({},e,{ref:t,onMouseDown:n=>{var r;(r=e.onMouseDown)===null||r===void 0||r.call(e,n),!n.defaultPrevented&&n.detail>1&&n.preventDefault()}}))),o6=r6;var Sg={exports:{}};/*!*************************************************** * mark.js v8.11.1 * https://markjs.io/ * Copyright (c) 2014–2018, Julian Kühnel * Released under the MIT license https://git.io/vwTVl -*****************************************************/(function(e,t){(function(n,r){e.exports=r()})(wy,function(){var n=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c},r=function(c,f){if(!(c instanceof f))throw new TypeError("Cannot call a class as a function")},o=function(){function c(f,u){for(var d=0;d1&&arguments[1]!==void 0?arguments[1]:!0,d=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:5e3;r(this,c),this.ctx=f,this.iframes=u,this.exclude=d,this.iframesTimeout=p}return o(c,[{key:"getContexts",value:function(){var u=void 0,d=[];return typeof this.ctx>"u"||!this.ctx?u=[]:NodeList.prototype.isPrototypeOf(this.ctx)?u=Array.prototype.slice.call(this.ctx):Array.isArray(this.ctx)?u=this.ctx:typeof this.ctx=="string"?u=Array.prototype.slice.call(document.querySelectorAll(this.ctx)):u=[this.ctx],u.forEach(function(p){var y=d.filter(function(g){return g.contains(p)}).length>0;d.indexOf(p)===-1&&!y&&d.push(p)}),d}},{key:"getIframeContents",value:function(u,d){var p=arguments.length>2&&arguments[2]!==void 0?arguments[2]:function(){},y=void 0;try{var g=u.contentWindow;if(y=g.document,!g||!y)throw new Error("iframe inaccessible")}catch{p()}y&&d(y)}},{key:"isIframeBlank",value:function(u){var d="about:blank",p=u.getAttribute("src").trim(),y=u.contentWindow.location.href;return y===d&&p!==d&&p}},{key:"observeIframeLoad",value:function(u,d,p){var y=this,g=!1,C=null,v=function m(){if(!g){g=!0,clearTimeout(C);try{y.isIframeBlank(u)||(u.removeEventListener("load",m),y.getIframeContents(u,d,p))}catch{p()}}};u.addEventListener("load",v),C=setTimeout(v,this.iframesTimeout)}},{key:"onIframeReady",value:function(u,d,p){try{u.contentWindow.document.readyState==="complete"?this.isIframeBlank(u)?this.observeIframeLoad(u,d,p):this.getIframeContents(u,d,p):this.observeIframeLoad(u,d,p)}catch{p()}}},{key:"waitForIframes",value:function(u,d){var p=this,y=0;this.forEachIframe(u,function(){return!0},function(g){y++,p.waitForIframes(g.querySelector("html"),function(){--y||d()})},function(g){g||d()})}},{key:"forEachIframe",value:function(u,d,p){var y=this,g=arguments.length>3&&arguments[3]!==void 0?arguments[3]:function(){},C=u.querySelectorAll("iframe"),v=C.length,m=0;C=Array.prototype.slice.call(C);var x=function(){--v<=0&&g(m)};v||x(),C.forEach(function(E){c.matches(E,y.exclude)?x():y.onIframeReady(E,function(_){d(E)&&(m++,p(_)),x()},x)})}},{key:"createIterator",value:function(u,d,p){return document.createNodeIterator(u,d,p,!1)}},{key:"createInstanceOnIframe",value:function(u){return new c(u.querySelector("html"),this.iframes)}},{key:"compareNodeIframe",value:function(u,d,p){var y=u.compareDocumentPosition(p),g=Node.DOCUMENT_POSITION_PRECEDING;if(y&g)if(d!==null){var C=d.compareDocumentPosition(p),v=Node.DOCUMENT_POSITION_FOLLOWING;if(C&v)return!0}else return!0;return!1}},{key:"getIteratorNode",value:function(u){var d=u.previousNode(),p=void 0;return d===null?p=u.nextNode():p=u.nextNode()&&u.nextNode(),{prevNode:d,node:p}}},{key:"checkIframeFilter",value:function(u,d,p,y){var g=!1,C=!1;return y.forEach(function(v,m){v.val===p&&(g=m,C=v.handled)}),this.compareNodeIframe(u,d,p)?(g===!1&&!C?y.push({val:p,handled:!0}):g!==!1&&!C&&(y[g].handled=!0),!0):(g===!1&&y.push({val:p,handled:!1}),!1)}},{key:"handleOpenIframes",value:function(u,d,p,y){var g=this;u.forEach(function(C){C.handled||g.getIframeContents(C.val,function(v){g.createInstanceOnIframe(v).forEachNode(d,p,y)})})}},{key:"iterateThroughNodes",value:function(u,d,p,y,g){for(var C=this,v=this.createIterator(d,u,y),m=[],x=[],E=void 0,_=void 0,b=function(){var $=C.getIteratorNode(v);return _=$.prevNode,E=$.node,E};b();)this.iframes&&this.forEachIframe(d,function(S){return C.checkIframeFilter(E,_,S,m)},function(S){C.createInstanceOnIframe(S).forEachNode(u,function($){return x.push($)},y)}),x.push(E);x.forEach(function(S){p(S)}),this.iframes&&this.handleOpenIframes(m,u,p,y),g()}},{key:"forEachNode",value:function(u,d,p){var y=this,g=arguments.length>3&&arguments[3]!==void 0?arguments[3]:function(){},C=this.getContexts(),v=C.length;v||g(),C.forEach(function(m){var x=function(){y.iterateThroughNodes(u,m,d,p,function(){--v<=0&&g()})};y.iframes?y.waitForIframes(m,x):x()})}}],[{key:"matches",value:function(u,d){var p=typeof d=="string"?[d]:d,y=u.matches||u.matchesSelector||u.msMatchesSelector||u.mozMatchesSelector||u.oMatchesSelector||u.webkitMatchesSelector;if(y){var g=!1;return p.every(function(C){return y.call(u,C)?(g=!0,!1):!0}),g}else return!1}}]),c}(),l=function(){function c(f){r(this,c),this.ctx=f,this.ie=!1;var u=window.navigator.userAgent;(u.indexOf("MSIE")>-1||u.indexOf("Trident")>-1)&&(this.ie=!0)}return o(c,[{key:"log",value:function(u){var d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"debug",p=this.opt.log;this.opt.debug&&(typeof p>"u"?"undefined":n(p))==="object"&&typeof p[d]=="function"&&p[d]("mark.js: "+u)}},{key:"escapeStr",value:function(u){return u.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}},{key:"createRegExp",value:function(u){return this.opt.wildcards!=="disabled"&&(u=this.setupWildcardsRegExp(u)),u=this.escapeStr(u),Object.keys(this.opt.synonyms).length&&(u=this.createSynonymsRegExp(u)),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(u=this.setupIgnoreJoinersRegExp(u)),this.opt.diacritics&&(u=this.createDiacriticsRegExp(u)),u=this.createMergedBlanksRegExp(u),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(u=this.createJoinersRegExp(u)),this.opt.wildcards!=="disabled"&&(u=this.createWildcardsRegExp(u)),u=this.createAccuracyRegExp(u),u}},{key:"createSynonymsRegExp",value:function(u){var d=this.opt.synonyms,p=this.opt.caseSensitive?"":"i",y=this.opt.ignoreJoiners||this.opt.ignorePunctuation.length?"\0":"";for(var g in d)if(d.hasOwnProperty(g)){var C=d[g],v=this.opt.wildcards!=="disabled"?this.setupWildcardsRegExp(g):this.escapeStr(g),m=this.opt.wildcards!=="disabled"?this.setupWildcardsRegExp(C):this.escapeStr(C);v!==""&&m!==""&&(u=u.replace(new RegExp("("+this.escapeStr(v)+"|"+this.escapeStr(m)+")","gm"+p),y+("("+this.processSynomyms(v)+"|")+(this.processSynomyms(m)+")")+y))}return u}},{key:"processSynomyms",value:function(u){return(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(u=this.setupIgnoreJoinersRegExp(u)),u}},{key:"setupWildcardsRegExp",value:function(u){return u=u.replace(/(?:\\)*\?/g,function(d){return d.charAt(0)==="\\"?"?":""}),u.replace(/(?:\\)*\*/g,function(d){return d.charAt(0)==="\\"?"*":""})}},{key:"createWildcardsRegExp",value:function(u){var d=this.opt.wildcards==="withSpaces";return u.replace(/\u0001/g,d?"[\\S\\s]?":"\\S?").replace(/\u0002/g,d?"[\\S\\s]*?":"\\S*")}},{key:"setupIgnoreJoinersRegExp",value:function(u){return u.replace(/[^(|)\\]/g,function(d,p,y){var g=y.charAt(p+1);return/[(|)\\]/.test(g)||g===""?d:d+"\0"})}},{key:"createJoinersRegExp",value:function(u){var d=[],p=this.opt.ignorePunctuation;return Array.isArray(p)&&p.length&&d.push(this.escapeStr(p.join(""))),this.opt.ignoreJoiners&&d.push("\\u00ad\\u200b\\u200c\\u200d"),d.length?u.split(/\u0000+/).join("["+d.join("")+"]*"):u}},{key:"createDiacriticsRegExp",value:function(u){var d=this.opt.caseSensitive?"":"i",p=this.opt.caseSensitive?["aàáảãạăằắẳẵặâầấẩẫậäåāą","AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćč","CÇĆČ","dđď","DĐĎ","eèéẻẽẹêềếểễệëěēę","EÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïī","IÌÍỈĨỊÎÏĪ","lł","LŁ","nñňń","NÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøō","OÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rř","RŘ","sšśșş","SŠŚȘŞ","tťțţ","TŤȚŢ","uùúủũụưừứửữựûüůū","UÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿ","YÝỲỶỸỴŸ","zžżź","ZŽŻŹ"]:["aàáảãạăằắẳẵặâầấẩẫậäåāąAÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćčCÇĆČ","dđďDĐĎ","eèéẻẽẹêềếểễệëěēęEÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïīIÌÍỈĨỊÎÏĪ","lłLŁ","nñňńNÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøōOÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rřRŘ","sšśșşSŠŚȘŞ","tťțţTŤȚŢ","uùúủũụưừứửữựûüůūUÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿYÝỲỶỸỴŸ","zžżźZŽŻŹ"],y=[];return u.split("").forEach(function(g){p.every(function(C){if(C.indexOf(g)!==-1){if(y.indexOf(C)>-1)return!1;u=u.replace(new RegExp("["+C+"]","gm"+d),"["+C+"]"),y.push(C)}return!0})}),u}},{key:"createMergedBlanksRegExp",value:function(u){return u.replace(/[\s]+/gmi,"[\\s]+")}},{key:"createAccuracyRegExp",value:function(u){var d=this,p="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~¡¿",y=this.opt.accuracy,g=typeof y=="string"?y:y.value,C=typeof y=="string"?[]:y.limiters,v="";switch(C.forEach(function(m){v+="|"+d.escapeStr(m)}),g){case"partially":default:return"()("+u+")";case"complementary":return v="\\s"+(v||this.escapeStr(p)),"()([^"+v+"]*"+u+"[^"+v+"]*)";case"exactly":return"(^|\\s"+v+")("+u+")(?=$|\\s"+v+")"}}},{key:"getSeparatedKeywords",value:function(u){var d=this,p=[];return u.forEach(function(y){d.opt.separateWordSearch?y.split(" ").forEach(function(g){g.trim()&&p.indexOf(g)===-1&&p.push(g)}):y.trim()&&p.indexOf(y)===-1&&p.push(y)}),{keywords:p.sort(function(y,g){return g.length-y.length}),length:p.length}}},{key:"isNumeric",value:function(u){return Number(parseFloat(u))==u}},{key:"checkRanges",value:function(u){var d=this;if(!Array.isArray(u)||Object.prototype.toString.call(u[0])!=="[object Object]")return this.log("markRanges() will only accept an array of objects"),this.opt.noMatch(u),[];var p=[],y=0;return u.sort(function(g,C){return g.start-C.start}).forEach(function(g){var C=d.callNoMatchOnInvalidRanges(g,y),v=C.start,m=C.end,x=C.valid;x&&(g.start=v,g.length=m-v,p.push(g),y=m)}),p}},{key:"callNoMatchOnInvalidRanges",value:function(u,d){var p=void 0,y=void 0,g=!1;return u&&typeof u.start<"u"?(p=parseInt(u.start,10),y=p+parseInt(u.length,10),this.isNumeric(u.start)&&this.isNumeric(u.length)&&y-d>0&&y-p>0?g=!0:(this.log("Ignoring invalid or overlapping range: "+(""+JSON.stringify(u))),this.opt.noMatch(u))):(this.log("Ignoring invalid range: "+JSON.stringify(u)),this.opt.noMatch(u)),{start:p,end:y,valid:g}}},{key:"checkWhitespaceRanges",value:function(u,d,p){var y=void 0,g=!0,C=p.length,v=d-C,m=parseInt(u.start,10)-v;return m=m>C?C:m,y=m+parseInt(u.length,10),y>C&&(y=C,this.log("End range automatically set to the max value of "+C)),m<0||y-m<0||m>C||y>C?(g=!1,this.log("Invalid range: "+JSON.stringify(u)),this.opt.noMatch(u)):p.substring(m,y).replace(/\s+/g,"")===""&&(g=!1,this.log("Skipping whitespace only range: "+JSON.stringify(u)),this.opt.noMatch(u)),{start:m,end:y,valid:g}}},{key:"getTextNodes",value:function(u){var d=this,p="",y=[];this.iterator.forEachNode(NodeFilter.SHOW_TEXT,function(g){y.push({start:p.length,end:(p+=g.textContent).length,node:g})},function(g){return d.matchesExclude(g.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},function(){u({value:p,nodes:y})})}},{key:"matchesExclude",value:function(u){return a.matches(u,this.opt.exclude.concat(["script","style","title","head","html"]))}},{key:"wrapRangeInTextNode",value:function(u,d,p){var y=this.opt.element?this.opt.element:"mark",g=u.splitText(d),C=g.splitText(p-d),v=document.createElement(y);return v.setAttribute("data-markjs","true"),this.opt.className&&v.setAttribute("class",this.opt.className),v.textContent=g.textContent,g.parentNode.replaceChild(v,g),C}},{key:"wrapRangeInMappedTextNode",value:function(u,d,p,y,g){var C=this;u.nodes.every(function(v,m){var x=u.nodes[m+1];if(typeof x>"u"||x.start>d){if(!y(v.node))return!1;var E=d-v.start,_=(p>v.end?v.end:p)-v.start,b=u.value.substr(0,v.start),S=u.value.substr(_+v.start);if(v.node=C.wrapRangeInTextNode(v.node,E,_),u.value=b+S,u.nodes.forEach(function($,k){k>=m&&(u.nodes[k].start>0&&k!==m&&(u.nodes[k].start-=_),u.nodes[k].end-=_)}),p-=_,g(v.node.previousSibling,v.start),p>v.end)d=v.end;else return!1}return!0})}},{key:"wrapMatches",value:function(u,d,p,y,g){var C=this,v=d===0?0:d+1;this.getTextNodes(function(m){m.nodes.forEach(function(x){x=x.node;for(var E=void 0;(E=u.exec(x.textContent))!==null&&E[v]!=="";)if(p(E[v],x)){var _=E.index;if(v!==0)for(var b=1;b{const o=setTimeout(()=>r(e),t||500);return()=>{clearTimeout(o)}},[e,t]),n}function vu(e,t){const[n,r]=h.useState();h.useEffect(()=>{const i=s6(e);r(typeof i>"u"||i===null?typeof t=="function"?t():t:i)},[t,e]);const o=h.useCallback(i=>{r(a=>{let l;typeof i=="function"?l=i(a):l=i;try{localStorage.setItem(e,JSON.stringify(l))}catch{}return l})},[e]);return[n,o]}function s6(e){try{const t=localStorage.getItem(e);return typeof t=="string"?JSON.parse(t):void 0}catch{return}}var c6="vocs_Kbd";function $g(e){return w.jsx("kbd",{...e,className:I(e.className,c6)})}var u6="vocs_KeyboardShortcut_kbdGroup",f6="vocs_KeyboardShortcut";function eo(e){const{description:t,keys:n}=e;return w.jsxs("span",{className:f6,children:[t,w.jsx("span",{className:u6,children:n.map(r=>w.jsx($g,{children:r},r))})]})}var d6="vocs_SearchDialog_content",hp="vocs_SearchDialog_excerpt",h6="vocs_SearchDialog_overlay",p6="vocs_SearchDialog_result",pp="vocs_SearchDialog_resultIcon",v6="vocs_SearchDialog_resultSelected",m6="vocs_SearchDialog_results",g6="vocs_SearchDialog",y6="vocs_SearchDialog_searchBox",w6="vocs_SearchDialog_searchInput",Ca="vocs_SearchDialog_searchInputIcon",x6="vocs_SearchDialog_searchInputIconDesktop",C6="vocs_SearchDialog_searchInputIconMobile",E6="vocs_SearchDialog_searchShortcuts",vp="vocs_SearchDialog_title",b6="vocs_SearchDialog_titleIcon",_6="vocs_SearchDialog_titles";function Tg(e){const t=jf(),n=h.useRef(null),r=h.useRef(null),[o,i]=vu("filterText",""),a=l6(o,200),l=_g(),[s,c]=h.useState(-1),[f,u]=h.useState(!1),[d,p]=vu("showDetailView",!0),y=h.useMemo(()=>l?a?(c(0),l.search(a).slice(0,16)):(c(-1),[]):[],[l,a]),g=y.length,C=y[s],v=h.useCallback(()=>{var _,b,S;if(!r.current)return;const m=new Set;for(const $ of y)for(const k in $.match)m.add(k);const x=new a6(r.current);x.unmark({done(){x==null||x.markRegExp(S6(m))}});const E=r.current.querySelectorAll(`.${hp}`);for(const $ of E)(_=$.querySelector('mark[data-markjs="true"]'))==null||_.scrollIntoView({block:"center"});(S=(b=r.current)==null?void 0:b.firstElementChild)==null||S.scrollIntoView({block:"start"})},[y]);return h.useEffect(()=>{if(!e.open)return;function m(x){var E;switch(x.key){case"ArrowDown":{x.preventDefault(),c(_=>{var $;let b=_+1;b>=g&&(b=0);const S=($=r.current)==null?void 0:$.children[b];return S==null||S.scrollIntoView({block:"nearest"}),b}),u(!0);break}case"ArrowUp":{x.preventDefault(),c(_=>{var $;let b=_-1;b<0&&(b=g-1);const S=($=r.current)==null?void 0:$.children[b];return S==null||S.scrollIntoView({block:"nearest"}),b}),u(!0);break}case"Backspace":{if(!x.metaKey)return;x.preventDefault(),i(""),(E=n.current)==null||E.focus();break}case"Enter":{if(x.target instanceof HTMLButtonElement&&x.target.type!=="submit"||!C)return;x.preventDefault(),t(C.href),e.onClose();break}}}return window.addEventListener("keydown",m),()=>{window.removeEventListener("keydown",m)}},[t,g,i,C,e.open,e.onClose]),h.useEffect(()=>{a!==""&&r.current&&v()},[v,a]),w.jsxs(M4,{children:[w.jsx(j4,{className:h6}),w.jsxs(D4,{onOpenAutoFocus:m=>{n.current&&(m.preventDefault(),n.current.focus()),v()},onCloseAutoFocus:()=>{c(0)},className:g6,"aria-describedby":void 0,children:[w.jsx(F4,{className:Y0,children:"Search"}),w.jsxs("form",{className:y6,children:[w.jsx("button",{"aria-label":"Close search dialog",type:"button",onClick:()=>e.onClose(),className:C6,children:w.jsx(t5,{className:Ca,height:20,width:20})}),w.jsx(o6,{htmlFor:"search-input",children:w.jsx(zf,{"aria-label":"Search",className:I(Ca,x6),height:20,width:20})}),w.jsx("input",{ref:n,tabIndex:0,className:w6,id:"search-input",onChange:m=>i(m.target.value),placeholder:"Search",type:"search",value:o}),w.jsx("button",{"aria-label":"Toggle detail view",type:"button",onClick:()=>p(m=>!m),children:w.jsx(c5,{className:Ca,height:20,width:20})}),w.jsx("button",{"aria-label":"Reset search",type:"button",className:Ca,onClick:()=>{var m;i(""),(m=n.current)==null||m.focus()},children:"⌫"})]}),w.jsxs("ul",{className:m6,role:y.length?"listbox":void 0,onMouseMove:()=>u(!1),ref:r,children:[a&&y.length===0&&w.jsxs("li",{children:['No results for "',w.jsx("span",{children:a}),'"']}),y.map((m,x)=>{var E;return w.jsx("li",{role:"option",className:I(p6,x===s&&v6),"aria-selected":x===s,"aria-label":[...m.titles.filter(_=>!!_),m.title].join(" > "),children:w.jsxs(O0,{to:m.href,onClick:_=>{_.metaKey||e.onClose()},onMouseEnter:()=>!f&&c(x),onFocus:()=>c(x),children:[w.jsxs("div",{className:_6,children:[m.isPage?w.jsx(l5,{className:pp}):w.jsx("span",{className:pp,children:"#"}),m.titles.filter(_=>!!_).map(_=>w.jsxs("span",{className:vp,children:[w.jsx("span",{dangerouslySetInnerHTML:{__html:_}}),w.jsx(r5,{className:b6})]},_)),w.jsx("span",{className:vp,children:w.jsx("span",{dangerouslySetInnerHTML:{__html:m.title}})})]}),d&&((E=m.text)==null?void 0:E.trim())&&w.jsx("div",{className:hp,children:w.jsx(H0,{className:d6,children:w.jsx("div",{dangerouslySetInnerHTML:{__html:m.html}})})})]})},m.id)})]}),w.jsxs("div",{className:E6,children:[w.jsx(eo,{description:"Navigate",keys:["↑","↓"]}),w.jsx(eo,{description:"Select",keys:["enter"]}),w.jsx(eo,{description:"Close",keys:["esc"]}),w.jsx(eo,{description:"Reset",keys:["⌘","⌫"]})]})]})]})}function S6(e){return new RegExp([...e].sort((t,n)=>n.length-t.length).map(t=>`(${t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")})`).join("|"),"gi")}function $6(){_g();const[e,t]=h.useState(!1);return h.useEffect(()=>{function n(r){const o=document.activeElement instanceof HTMLElement&&(["input","select","textarea"].includes(document.activeElement.tagName.toLowerCase())||document.activeElement.isContentEditable);r.key==="/"&&!e&&!o?(r.preventDefault(),t(!0)):r.metaKey===!0&&r.key==="k"&&(r.preventDefault(),t(i=>!i))}return window.addEventListener("keydown",n),()=>{window.removeEventListener("keydown",n)}},[e]),w.jsxs(mg,{open:e,onOpenChange:t,children:[w.jsx(gg,{asChild:!0,children:w.jsxs("button",{className:t6,type:"button",children:[w.jsx(zf,{style:{marginTop:2}}),"Search",w.jsx("div",{className:n6,children:w.jsx("div",{style:{background:"currentColor",transform:"rotate(45deg)",width:1.5,borderRadius:2,height:"100%"}})})]})}),w.jsx(Tg,{open:e,onClose:()=>t(!1)})]})}var kg="vocs_DesktopTopNav_button",T6="vocs_DesktopTopNav_content",k6="vocs_DesktopTopNav_curtain",mp="vocs_DesktopTopNav_divider",Xs="vocs_DesktopTopNav_group",Ea="vocs_DesktopTopNav_hideCompact",mu="vocs_DesktopTopNav_icon",vl="vocs_DesktopTopNav_item",R6="vocs_DesktopTopNav_logo",N6="vocs_DesktopTopNav_logoWrapper",P6="vocs_DesktopTopNav",gp="vocs_DesktopTopNav_section",A6="vocs_DesktopTopNav_withLogo",O6="vocs_Icon",gu="var(--vocs_Icon_size)";function st({className:e,label:t,icon:n,size:r,style:o}){return w.jsx("div",{"aria-label":t,className:I(O6,e),role:"img",style:{...o,...Yt({[gu]:r})},children:w.jsx(n,{height:r,width:r})})}var I6="vocs_Logo_logoDark",L6="vocs_Logo_logoLight",Js="vocs_Logo";function M6({className:e}){const{logoUrl:t}=ot();return t?w.jsx(w.Fragment,{children:typeof t=="string"?w.jsx("img",{alt:"Logo",className:I(e,Js),src:t}):w.jsxs(w.Fragment,{children:[w.jsx("img",{alt:"Logo",className:I(e,Js,I6),src:t.dark}),w.jsx("img",{alt:"Logo",className:I(e,Js,L6),src:t.light})]})}):null}var j6="vocs_NavLogo_logoImage",D6="vocs_NavLogo_title";function Wf(){const e=ot();return e.logoUrl?w.jsx(M6,{className:j6}):w.jsx("div",{className:D6,children:e.title})}const F6=h.createContext(void 0);function Vl(e){const t=h.useContext(F6);return e||t||"ltr"}function Hl(e){const t=e+"CollectionProvider",[n,r]=En(t),[o,i]=n(t,{collectionRef:{current:null},itemMap:new Map}),a=p=>{const{scope:y,children:g}=p,C=Q.useRef(null),v=Q.useRef(new Map).current;return Q.createElement(o,{scope:y,itemMap:v,collectionRef:C},g)},l=e+"CollectionSlot",s=Q.forwardRef((p,y)=>{const{scope:g,children:C}=p,v=i(l,g),m=Be(y,v.collectionRef);return Q.createElement(xo,{ref:m},C)}),c=e+"CollectionItemSlot",f="data-radix-collection-item",u=Q.forwardRef((p,y)=>{const{scope:g,children:C,...v}=p,m=Q.useRef(null),x=Be(y,m),E=i(c,g);return Q.useEffect(()=>(E.itemMap.set(m,{ref:m,...v}),()=>void E.itemMap.delete(m))),Q.createElement(xo,{[f]:"",ref:x},C)});function d(p){const y=i(e+"CollectionConsumer",p);return Q.useCallback(()=>{const C=y.collectionRef.current;if(!C)return[];const v=Array.from(C.querySelectorAll(`[${f}]`));return Array.from(y.itemMap.values()).sort((E,_)=>v.indexOf(E.ref.current)-v.indexOf(_.ref.current))},[y.collectionRef,y.itemMap])}return[{Provider:a,Slot:s,ItemSlot:u},d,r]}function z6(e){const t=h.useRef({value:e,previous:e});return h.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}const B6=h.forwardRef((e,t)=>h.createElement(ue.span,Y({},e,{ref:t,style:{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal",...e.style}}))),U6=B6,Ui="NavigationMenu",[Kf,V6,H6]=Hl(Ui),[yu,W6,K6]=Hl(Ui),[Yf,Z9]=En(Ui,[H6,K6]),[Y6,Nr]=Yf(Ui),[G6,X9]=Yf(Ui),Q6=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,value:r,onValueChange:o,defaultValue:i,delayDuration:a=200,skipDelayDuration:l=300,orientation:s="horizontal",dir:c,...f}=e,[u,d]=h.useState(null),p=Be(t,k=>d(k)),y=Vl(c),g=h.useRef(0),C=h.useRef(0),v=h.useRef(0),[m,x]=h.useState(!0),[E="",_]=rr({prop:r,onChange:k=>{const P=k!=="",j=l>0;P?(window.clearTimeout(v.current),j&&x(!1)):(window.clearTimeout(v.current),v.current=window.setTimeout(()=>x(!0),l)),o==null||o(k)},defaultProp:i}),b=h.useCallback(()=>{window.clearTimeout(C.current),C.current=window.setTimeout(()=>_(""),150)},[_]),S=h.useCallback(k=>{window.clearTimeout(C.current),_(k)},[_]),$=h.useCallback(k=>{E===k?window.clearTimeout(C.current):g.current=window.setTimeout(()=>{window.clearTimeout(C.current),_(k)},a)},[E,_,a]);return h.useEffect(()=>()=>{window.clearTimeout(g.current),window.clearTimeout(C.current),window.clearTimeout(v.current)},[]),h.createElement(Z6,{scope:n,isRootMenu:!0,value:E,dir:y,orientation:s,rootNavigationMenu:u,onTriggerEnter:k=>{window.clearTimeout(g.current),m?$(k):S(k)},onTriggerLeave:()=>{window.clearTimeout(g.current),b()},onContentEnter:()=>window.clearTimeout(C.current),onContentLeave:b,onItemSelect:k=>{_(P=>P===k?"":k)},onItemDismiss:()=>_("")},h.createElement(ue.nav,Y({"aria-label":"Main","data-orientation":s,dir:y},f,{ref:p})))}),Z6=e=>{const{scope:t,isRootMenu:n,rootNavigationMenu:r,dir:o,orientation:i,children:a,value:l,onItemSelect:s,onItemDismiss:c,onTriggerEnter:f,onTriggerLeave:u,onContentEnter:d,onContentLeave:p}=e,[y,g]=h.useState(null),[C,v]=h.useState(new Map),[m,x]=h.useState(null);return h.createElement(Y6,{scope:t,isRootMenu:n,rootNavigationMenu:r,value:l,previousValue:z6(l),baseId:rn(),dir:o,orientation:i,viewport:y,onViewportChange:g,indicatorTrack:m,onIndicatorTrackChange:x,onTriggerEnter:at(f),onTriggerLeave:at(u),onContentEnter:at(d),onContentLeave:at(p),onItemSelect:at(s),onItemDismiss:at(c),onViewportContentChange:h.useCallback((E,_)=>{v(b=>(b.set(E,_),new Map(b)))},[]),onViewportContentRemove:h.useCallback(E=>{v(_=>_.has(E)?(_.delete(E),new Map(_)):_)},[])},h.createElement(Kf.Provider,{scope:t},h.createElement(G6,{scope:t,items:C},a)))},X6="NavigationMenuList",J6=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,...r}=e,o=Nr(X6,n),i=h.createElement(ue.ul,Y({"data-orientation":o.orientation},r,{ref:t}));return h.createElement(ue.div,{style:{position:"relative"},ref:o.onIndicatorTrackChange},h.createElement(Kf.Slot,{scope:n},o.isRootMenu?h.createElement(Ng,{asChild:!0},i):i))}),q6="NavigationMenuItem",[e7,Rg]=Yf(q6),t7=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,value:r,...o}=e,i=rn(),a=r||i||"LEGACY_REACT_AUTO_VALUE",l=h.useRef(null),s=h.useRef(null),c=h.useRef(null),f=h.useRef(()=>{}),u=h.useRef(!1),d=h.useCallback((y="start")=>{if(l.current){f.current();const g=wu(l.current);g.length&&Gf(y==="start"?g:g.reverse())}},[]),p=h.useCallback(()=>{if(l.current){const y=wu(l.current);y.length&&(f.current=c7(y))}},[]);return h.createElement(e7,{scope:n,value:a,triggerRef:s,contentRef:l,focusProxyRef:c,wasEscapeCloseRef:u,onEntryKeyDown:d,onFocusProxyEnter:d,onRootContentClose:p,onContentFocusOutside:p},h.createElement(ue.li,Y({},o,{ref:t})))}),yp="NavigationMenuTrigger",n7=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,disabled:r,...o}=e,i=Nr(yp,e.__scopeNavigationMenu),a=Rg(yp,e.__scopeNavigationMenu),l=h.useRef(null),s=Be(l,a.triggerRef,t),c=Og(i.baseId,a.value),f=Ig(i.baseId,a.value),u=h.useRef(!1),d=h.useRef(!1),p=a.value===i.value;return h.createElement(h.Fragment,null,h.createElement(Kf.ItemSlot,{scope:n,value:a.value},h.createElement(Pg,{asChild:!0},h.createElement(ue.button,Y({id:c,disabled:r,"data-disabled":r?"":void 0,"data-state":Ag(p),"aria-expanded":p,"aria-controls":f},o,{ref:s,onPointerEnter:ae(e.onPointerEnter,()=>{d.current=!1,a.wasEscapeCloseRef.current=!1}),onPointerMove:ae(e.onPointerMove,xu(()=>{r||d.current||a.wasEscapeCloseRef.current||u.current||(i.onTriggerEnter(a.value),u.current=!0)})),onPointerLeave:ae(e.onPointerLeave,xu(()=>{r||(i.onTriggerLeave(),u.current=!1)})),onClick:ae(e.onClick,()=>{i.onItemSelect(a.value),d.current=p}),onKeyDown:ae(e.onKeyDown,y=>{const C={horizontal:"ArrowDown",vertical:i.dir==="rtl"?"ArrowLeft":"ArrowRight"}[i.orientation];p&&y.key===C&&(a.onEntryKeyDown(),y.preventDefault())})})))),p&&h.createElement(h.Fragment,null,h.createElement(U6,{"aria-hidden":!0,tabIndex:0,ref:a.focusProxyRef,onFocus:y=>{const g=a.contentRef.current,C=y.relatedTarget,v=C===l.current,m=g==null?void 0:g.contains(C);(v||!m)&&a.onFocusProxyEnter(v?"start":"end")}}),i.viewport&&h.createElement("span",{"aria-owns":f})))}),wp="navigationMenu.linkSelect",r7=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,active:r,onSelect:o,...i}=e;return h.createElement(Pg,{asChild:!0},h.createElement(ue.a,Y({"data-active":r?"":void 0,"aria-current":r?"page":void 0},i,{ref:t,onClick:ae(e.onClick,a=>{const l=a.target,s=new CustomEvent(wp,{bubbles:!0,cancelable:!0});if(l.addEventListener(wp,c=>o==null?void 0:o(c),{once:!0}),su(l,s),!s.defaultPrevented&&!a.metaKey){const c=new CustomEvent(za,{bubbles:!0,cancelable:!0});su(l,c)}},{checkForDefaultPrevented:!1})})))}),ml="NavigationMenuContent",o7=h.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Nr(ml,e.__scopeNavigationMenu),i=Rg(ml,e.__scopeNavigationMenu),a=Be(i.contentRef,t),l=i.value===o.value,s={value:i.value,triggerRef:i.triggerRef,focusProxyRef:i.focusProxyRef,wasEscapeCloseRef:i.wasEscapeCloseRef,onContentFocusOutside:i.onContentFocusOutside,onRootContentClose:i.onRootContentClose,...r};return o.viewport?h.createElement(i7,Y({forceMount:n},s,{ref:a})):h.createElement(bn,{present:n||l},h.createElement(a7,Y({"data-state":Ag(l)},s,{ref:a,onPointerEnter:ae(e.onPointerEnter,o.onContentEnter),onPointerLeave:ae(e.onPointerLeave,xu(o.onContentLeave)),style:{pointerEvents:!l&&o.isRootMenu?"none":void 0,...s.style}})))}),i7=h.forwardRef((e,t)=>{const n=Nr(ml,e.__scopeNavigationMenu),{onViewportContentChange:r,onViewportContentRemove:o}=n;return gn(()=>{r(e.value,{ref:t,...e})},[e,t,r]),gn(()=>()=>o(e.value),[e.value,o]),null}),za="navigationMenu.rootContentDismiss",a7=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,value:r,triggerRef:o,focusProxyRef:i,wasEscapeCloseRef:a,onRootContentClose:l,onContentFocusOutside:s,...c}=e,f=Nr(ml,n),u=h.useRef(null),d=Be(u,t),p=Og(f.baseId,r),y=Ig(f.baseId,r),g=V6(n),C=h.useRef(null),{onItemDismiss:v}=f;h.useEffect(()=>{const x=u.current;if(f.isRootMenu&&x){const E=()=>{var _;v(),l(),x.contains(document.activeElement)&&((_=o.current)===null||_===void 0||_.focus())};return x.addEventListener(za,E),()=>x.removeEventListener(za,E)}},[f.isRootMenu,e.value,o,v,l]);const m=h.useMemo(()=>{const E=g().map(P=>P.value);f.dir==="rtl"&&E.reverse();const _=E.indexOf(f.value),b=E.indexOf(f.previousValue),S=r===f.value,$=b===E.indexOf(r);if(!S&&!$)return C.current;const k=(()=>{if(_!==b){if(S&&b!==-1)return _>b?"from-end":"from-start";if($&&_!==-1)return _>b?"to-start":"to-end"}return null})();return C.current=k,k},[f.previousValue,f.value,f.dir,g,r]);return h.createElement(Ng,{asChild:!0},h.createElement(Bf,Y({id:y,"aria-labelledby":p,"data-motion":m,"data-orientation":f.orientation},c,{ref:d,onDismiss:()=>{var x;const E=new Event(za,{bubbles:!0,cancelable:!0});(x=u.current)===null||x===void 0||x.dispatchEvent(E)},onFocusOutside:ae(e.onFocusOutside,x=>{var E;s();const _=x.target;(E=f.rootNavigationMenu)!==null&&E!==void 0&&E.contains(_)&&x.preventDefault()}),onPointerDownOutside:ae(e.onPointerDownOutside,x=>{var E;const _=x.target,b=g().some($=>{var k;return(k=$.ref.current)===null||k===void 0?void 0:k.contains(_)}),S=f.isRootMenu&&((E=f.viewport)===null||E===void 0?void 0:E.contains(_));(b||S||!f.isRootMenu)&&x.preventDefault()}),onKeyDown:ae(e.onKeyDown,x=>{const E=x.altKey||x.ctrlKey||x.metaKey;if(x.key==="Tab"&&!E){const S=wu(x.currentTarget),$=document.activeElement,k=S.findIndex(L=>L===$),j=x.shiftKey?S.slice(0,k).reverse():S.slice(k+1,S.length);if(Gf(j))x.preventDefault();else{var b;(b=i.current)===null||b===void 0||b.focus()}}}),onEscapeKeyDown:ae(e.onEscapeKeyDown,x=>{a.current=!0})})))}),l7="FocusGroup",Ng=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,...r}=e,o=Nr(l7,n);return h.createElement(yu.Provider,{scope:n},h.createElement(yu.Slot,{scope:n},h.createElement(ue.div,Y({dir:o.dir},r,{ref:t}))))}),xp=["ArrowRight","ArrowLeft","ArrowUp","ArrowDown"],s7="FocusGroupItem",Pg=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,...r}=e,o=W6(n),i=Nr(s7,n);return h.createElement(yu.ItemSlot,{scope:n},h.createElement(ue.button,Y({},r,{ref:t,onKeyDown:ae(e.onKeyDown,a=>{if(["Home","End",...xp].includes(a.key)){let s=o().map(u=>u.ref.current);if([i.dir==="rtl"?"ArrowRight":"ArrowLeft","ArrowUp","End"].includes(a.key)&&s.reverse(),xp.includes(a.key)){const u=s.indexOf(a.currentTarget);s=s.slice(u+1)}setTimeout(()=>Gf(s)),a.preventDefault()}})})))});function wu(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Gf(e){const t=document.activeElement;return e.some(n=>n===t?!0:(n.focus(),document.activeElement!==t))}function c7(e){return e.forEach(t=>{t.dataset.tabindex=t.getAttribute("tabindex")||"",t.setAttribute("tabindex","-1")}),()=>{e.forEach(t=>{const n=t.dataset.tabindex;t.setAttribute("tabindex",n)})}}function Ag(e){return e?"open":"closed"}function Og(e,t){return`${e}-trigger-${t}`}function Ig(e,t){return`${e}-content-${t}`}function xu(e){return t=>t.pointerType==="mouse"?e(t):void 0}const u7=Q6,f7=J6,d7=t7,h7=n7,p7=r7,v7=o7;var m7="var(--vocs_NavigationMenu_chevronDownIcon)",g7="vocs_NavigationMenu_content",y7="vocs_NavigationMenu_item",w7="vocs_NavigationMenu_link",x7="vocs_NavigationMenu_list",C7="vocs_NavigationMenu",E7="vocs_NavigationMenu_trigger vocs_NavigationMenu_link";const Lg=e=>w.jsx(u7,{...e,className:I(e.className,C7)}),Mg=e=>w.jsx(f7,{...e,className:I(e.className,x7)}),Wl=({active:e,children:t,className:n,href:r})=>w.jsx(p7,{asChild:!0,children:w.jsx(nn,{"data-active":e,className:I(n,w7),href:r,variant:"styleless",children:t})}),jg=e=>w.jsx(d7,{...e,className:I(e.className,y7)}),Dg=({active:e,className:t,...n})=>{const{basePath:r}=ot(),o=r;return w.jsx(h7,{...n,"data-active":e,className:I(t,E7),style:Yt({[m7]:`url(${o}/.vocs/icons/chevron-down.svg)`})})},Fg=e=>w.jsx(v7,{...e,className:I(e.className,g7)});function zg(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 127.14 96.36",children:[w.jsx("title",{children:"Discord"}),w.jsx("g",{id:"图层_2","data-name":"图层 2",children:w.jsx("g",{id:"Discord_Logos","data-name":"Discord Logos",children:w.jsx("g",{id:"Discord_Logo_-_Large_-_White","data-name":"Discord Logo - Large - White",children:w.jsx("path",{d:"M107.7,8.07A105.15,105.15,0,0,0,81.47,0a72.06,72.06,0,0,0-3.36,6.83A97.68,97.68,0,0,0,49,6.83,72.37,72.37,0,0,0,45.64,0,105.89,105.89,0,0,0,19.39,8.09C2.79,32.65-1.71,56.6.54,80.21h0A105.73,105.73,0,0,0,32.71,96.36,77.7,77.7,0,0,0,39.6,85.25a68.42,68.42,0,0,1-10.85-5.18c.91-.66,1.8-1.34,2.66-2a75.57,75.57,0,0,0,64.32,0c.87.71,1.76,1.39,2.66,2a68.68,68.68,0,0,1-10.87,5.19,77,77,0,0,0,6.89,11.1A105.25,105.25,0,0,0,126.6,80.22h0C129.24,52.84,122.09,29.11,107.7,8.07ZM42.45,65.69C36.18,65.69,31,60,31,53s5-12.74,11.43-12.74S54,46,53.89,53,48.84,65.69,42.45,65.69Zm42.24,0C78.41,65.69,73.25,60,73.25,53s5-12.74,11.44-12.74S96.23,46,96.12,53,91.08,65.69,84.69,65.69Z",fill:"currentColor"})})})})]})}function Bg(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 98 96",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"GitHub"}),w.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z",fill:"currentColor"})]})}function b7(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 78 82",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Moon"}),w.jsx("path",{d:"M62.8455 45.9668C63.6268 45.9668 64.2127 45.3809 64.3104 44.5508C65.4334 34.3457 66.0682 33.9551 76.4197 32.3438C77.3963 32.1973 77.9334 31.7578 77.9334 30.8789C77.9334 30.0977 77.3963 29.5605 76.6151 29.4629C66.1658 27.4609 65.4334 27.4609 64.3104 17.2559C64.2127 16.377 63.6268 15.8398 62.8455 15.8398C62.0154 15.8398 61.4783 16.377 61.3807 17.207C60.1111 27.6074 59.6229 28.0957 49.0272 29.4629C48.2947 29.5117 47.7088 30.0977 47.7088 30.8789C47.7088 31.709 48.2947 32.1973 49.0272 32.3438C59.6229 34.3457 60.0623 34.4434 61.3807 44.6484C61.4783 45.3809 62.0154 45.9668 62.8455 45.9668ZM44.535 19.5508C45.0233 19.5508 45.3162 19.2578 45.4139 18.7695C46.6834 12.4707 46.5369 12.373 53.1287 11.0547C53.5682 10.957 53.91 10.7129 53.91 10.1758C53.91 9.63868 53.5682 9.39448 53.1287 9.29688C46.5369 7.97848 46.6834 7.88089 45.4139 1.58199C45.3162 1.09379 45.0233 0.800781 44.535 0.800781C43.9979 0.800781 43.7049 1.09379 43.6072 1.58199C42.3377 7.88089 42.4842 7.97848 35.9412 9.29688C35.4529 9.39448 35.1111 9.63868 35.1111 10.1758C35.1111 10.7129 35.4529 10.957 35.9412 11.0547C42.4842 12.373 42.3865 12.4707 43.6072 18.7695C43.7049 19.2578 43.9979 19.5508 44.535 19.5508Z",fill:"currentColor"}),w.jsx("path",{d:"M34.3298 81.2696C48.49 81.2696 59.9157 74.043 65.0915 61.7872C65.8239 59.9806 65.5798 58.6134 64.7497 57.7833C64.0173 57.0509 62.7478 56.9044 61.3318 57.4903C58.4509 58.6134 54.9353 59.2481 50.6384 59.2481C33.695 59.2481 22.7575 48.6036 22.7575 32.2462C22.7575 27.4122 23.6853 22.6759 24.7595 20.5763C25.5407 18.9161 25.4919 17.5001 24.8083 16.67C24.0271 15.7423 22.6599 15.4005 20.7068 16.1329C8.64624 20.7716 0.345459 33.4181 0.345459 47.8712C0.345459 66.8165 14.5056 81.2696 34.3298 81.2696ZM34.4275 74.5801C18.4607 74.5801 7.03494 62.9591 7.03494 47.3341C7.03494 38.2521 10.9411 30.0489 17.6306 24.629C16.8005 27.0704 16.361 30.6837 16.361 34.1505C16.361 52.8517 29.5446 65.6935 48.8806 65.6935C52.0544 65.6935 54.9841 65.3517 56.4001 64.9122C51.615 70.918 43.4607 74.5801 34.4275 74.5801Z",fill:"currentColor"})]})}function _7(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 84 84",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Sun"}),w.jsx("path",{d:"M41.8675 15.5254C43.9183 15.5254 45.6273 13.7676 45.6273 11.7168V3.80658C45.6273 1.75588 43.9183 0.046875 41.8675 0.046875C39.7679 0.046875 38.0589 1.75588 38.0589 3.80658V11.7168C38.0589 13.7676 39.7679 15.5254 41.8675 15.5254ZM60.3246 23.2402C61.7895 24.7051 64.2309 24.7539 65.7446 23.2402L71.3598 17.6738C72.7758 16.209 72.7758 13.7188 71.3598 12.2539C69.8949 10.7891 67.4535 10.7891 65.9887 12.2539L60.3246 17.918C58.9086 19.3828 58.9086 21.7754 60.3246 23.2402ZM67.9906 41.7461C67.9906 43.7969 69.7485 45.5547 71.7992 45.5547H79.6117C81.7113 45.5547 83.4202 43.7969 83.4202 41.7461C83.4202 39.6953 81.7113 37.9375 79.6117 37.9375H71.7992C69.7485 37.9375 67.9906 39.6953 67.9906 41.7461ZM60.3246 60.3008C58.9086 61.7656 58.9086 64.1582 60.3246 65.623L65.9887 71.2871C67.4535 72.7519 69.8949 72.7031 71.3598 71.2383C72.7758 69.7734 72.7758 67.332 71.3598 65.8672L65.6957 60.3008C64.2309 58.8359 61.7895 58.8359 60.3246 60.3008ZM41.8675 67.9668C39.7679 67.9668 38.0589 69.7246 38.0589 71.7754V79.6855C38.0589 81.7363 39.7679 83.4453 41.8675 83.4453C43.9183 83.4453 45.6273 81.7363 45.6273 79.6855V71.7754C45.6273 69.7246 43.9183 67.9668 41.8675 67.9668ZM23.3617 60.3008C21.8969 58.8359 19.4067 58.8359 17.9418 60.3008L12.3754 65.8184C10.9106 67.2832 10.9106 69.7246 12.3266 71.1894C13.7914 72.6543 16.2328 72.7031 17.6977 71.2383L23.3129 65.623C24.7778 64.1582 24.7778 61.7656 23.3617 60.3008ZM15.6957 41.7461C15.6957 39.6953 13.9867 37.9375 11.8871 37.9375H4.07455C1.97497 37.9375 0.265991 39.6953 0.265991 41.7461C0.265991 43.7969 1.97497 45.5547 4.07455 45.5547H11.8871C13.9867 45.5547 15.6957 43.7969 15.6957 41.7461ZM23.3129 23.2402C24.7778 21.8242 24.7778 19.334 23.3617 17.918L17.7465 12.2539C16.3305 10.8379 13.8403 10.7891 12.4242 12.2539C10.9594 13.7188 10.9594 16.209 12.3754 17.625L17.9418 23.2402C19.4067 24.7051 21.8481 24.7051 23.3129 23.2402Z",fill:"currentColor"}),w.jsx("path",{d:"M41.8675 61.668C52.7073 61.668 61.7405 52.6836 61.7405 41.7461C61.7405 30.8086 52.7073 21.8242 41.8675 21.8242C30.9788 21.8242 21.9456 30.8086 21.9456 41.7461C21.9456 52.6836 30.9788 61.668 41.8675 61.668ZM41.8675 55.0273C34.5921 55.0273 28.5862 48.9727 28.5862 41.7461C28.5862 34.5195 34.5921 28.4648 41.8675 28.4648C49.0941 28.4648 55.0999 34.5195 55.0999 41.7461C55.0999 48.9727 49.0941 55.0273 41.8675 55.0273Z",fill:"currentColor"})]})}function Ug(){return w.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"100%",height:"100%",viewBox:"0 0 50 50",children:[w.jsx("title",{children:"Telegram"}),w.jsx("path",{d:"M25 2c12.703 0 23 10.297 23 23S37.703 48 25 48 2 37.703 2 25 12.297 2 25 2zm7.934 32.375c.423-1.298 2.405-14.234 2.65-16.783.074-.772-.17-1.285-.648-1.514-.578-.278-1.434-.139-2.427.219-1.362.491-18.774 7.884-19.78 8.312-.954.405-1.856.847-1.856 1.487 0 .45.267.703 1.003.966.766.273 2.695.858 3.834 1.172 1.097.303 2.346.04 3.046-.395.742-.461 9.305-6.191 9.92-6.693.614-.502 1.104.141.602.644-.502.502-6.38 6.207-7.155 6.997-.941.959-.273 1.953.358 2.351.721.454 5.906 3.932 6.687 4.49.781.558 1.573.811 2.298.811.725 0 1.107-.955 1.468-2.064z",fill:"currentColor"})]})}function Vg(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 1200 1227",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"X"}),w.jsx("path",{d:"M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z",fill:"currentColor"})]})}Cu.Curtain=S7;function Cu(){var r,o,i,a;const e=ot(),{showLogo:t,showSidebar:n}=Rr();return w.jsxs("div",{className:I(P6,t&&!n&&A6),children:[w.jsx($6,{}),t&&w.jsx("div",{className:N6,children:w.jsx("div",{className:R6,children:w.jsx(Gn,{to:"/",style:{alignItems:"center",display:"flex",height:"56px",marginTop:"4px"},children:w.jsx(Wf,{})})})}),w.jsx("div",{className:gp}),w.jsxs("div",{className:gp,children:[(((r=e.topNav)==null?void 0:r.length)||0)>0&&w.jsxs(w.Fragment,{children:[w.jsx("div",{className:Xs,children:w.jsx($7,{})}),w.jsx("div",{className:I(mp,Ea)})]}),e.socials&&((o=e.socials)==null?void 0:o.length)>0&&w.jsxs(w.Fragment,{children:[w.jsx("div",{className:I(Xs,Ea),style:{marginLeft:"-8px",marginRight:"-8px"},children:e.socials.map((l,s)=>w.jsx("div",{className:vl,children:w.jsx(P7,{...l})},s))}),!((i=e.theme)!=null&&i.colorScheme)&&w.jsx("div",{className:I(mp,Ea)})]}),!((a=e.theme)!=null&&a.colorScheme)&&w.jsx("div",{className:I(Xs,Ea),style:{marginLeft:"-8px",marginRight:"-8px"},children:w.jsx("div",{className:vl,children:w.jsx(k7,{})})})]})]})}function S7(){return w.jsx("div",{className:k6})}function $7(){const{topNav:e}=ot();if(!e)return null;const{pathname:t}=Re(),n=Bi({pathname:t,items:e});return w.jsx(Lg,{delayDuration:0,children:w.jsx(Mg,{children:e.map((r,o)=>r.link?w.jsx(Wl,{active:n.includes(r.id),className:vl,href:r.link,children:r.text},o):r.items?w.jsxs(jg,{className:vl,children:[w.jsx(Dg,{active:n.includes(r.id),children:r.text}),w.jsx(Fg,{className:T6,children:w.jsx(T7,{items:r.items})})]},o):null)})})}function T7({items:e}){const{pathname:t}=Re(),n=Bi({pathname:t,items:e});return w.jsx("ul",{children:e==null?void 0:e.map((r,o)=>w.jsx(Wl,{active:n.includes(r.id),href:r.link,children:r.text},o))})}function k7(){const{toggle:e}=v5();return w.jsxs("button",{className:kg,onClick:e,type:"button",children:[w.jsx(st,{className:I(mu,m5),size:"20px",label:"Light",icon:_7}),w.jsx(st,{className:I(mu,g5),size:"20px",label:"Dark",icon:b7,style:{marginTop:"-2px"}})]})}const R7={discord:zg,github:Bg,telegram:Ug,x:Vg},N7={discord:"23px",github:"20px",telegram:"21px",x:"18px"};function P7({icon:e,label:t,link:n}){return w.jsx("a",{className:kg,href:n,target:"_blank",rel:"noopener noreferrer",children:w.jsx(st,{className:mu,label:t,icon:R7[e],size:N7[e]||"20px"})})}const A7=({children:e})=>e,O7=({children:e})=>e;function I7(){const e=kr(),t=ot();return h.useMemo(()=>{const{pattern:n="",text:r="Edit page"}=t.editLink??{};let o="";return typeof n=="function"?o="":e.filePath&&(o=n.replace(/:path/g,e.filePath)),{url:o,text:r}},[t.editLink,e.filePath])}function Hg(){const[e,t]=h.useState(!1);return h.useEffect(()=>{t(!0)},[]),e}var L7="vocs_Footer_container",M7="vocs_Footer_editLink",j7="vocs_Footer_lastUpdated",D7="vocs_Footer_navigation",Cp="vocs_Footer_navigationIcon",F7="vocs_Footer_navigationIcon_left",z7="vocs_Footer_navigationIcon_right",Ep="vocs_Footer_navigationItem",B7="vocs_Footer_navigationItem_left",U7="vocs_Footer_navigationItem_right",bp="vocs_Footer_navigationText",_p="vocs_Footer_navigationTextInner",V7="vocs_Footer";function H7(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 72 60",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Arrow Left"}),w.jsx("path",{d:"M0.325684 29.7461C0.325684 30.8203 0.813963 31.8457 1.69286 32.6758L26.8882 57.8223C27.7671 58.6524 28.7437 59.043 29.7691 59.043C31.9175 59.043 33.5777 57.4317 33.5777 55.2344C33.5777 54.209 33.2359 53.1836 32.5035 52.5L25.7652 45.5176L9.26126 30.6738L8.38236 32.7734L21.3706 33.7012H67.4644C69.7593 33.7012 71.3706 32.041 71.3706 29.7461C71.3706 27.4512 69.7593 25.791 67.4644 25.791H21.3706L8.38236 26.7188L9.26126 28.8672L25.7652 13.9746L32.5035 6.99221C33.2359 6.30861 33.5777 5.28322 33.5777 4.25782C33.5777 2.06052 31.9175 0.449219 29.7691 0.449219C28.7437 0.449219 27.7671 0.839814 26.8882 1.66991L1.69286 26.8164C0.813963 27.6465 0.325684 28.6719 0.325684 29.7461Z",fill:"currentColor"})]})}function W7(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 72 60",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Arrow Right"}),w.jsx("path",{d:"M71.3706 29.7461C71.3706 28.6719 70.8824 27.6465 70.0035 26.8164L44.8081 1.66991C43.9292 0.839814 42.9527 0.449219 41.9273 0.449219C39.7789 0.449219 38.1187 2.06052 38.1187 4.25782C38.1187 5.28322 38.4605 6.30861 39.1929 6.99221L45.9312 13.9746L62.4351 28.8672L63.314 26.7188L50.3257 25.791H4.23196C1.93706 25.791 0.325684 27.4512 0.325684 29.7461C0.325684 32.041 1.93706 33.7012 4.23196 33.7012H50.3257L63.314 32.7734L62.4351 30.6738L45.9312 45.5176L39.1929 52.5C38.4605 53.1836 38.1187 54.209 38.1187 55.2344C38.1187 57.4317 39.7789 59.043 41.9273 59.043C42.9527 59.043 43.9292 58.6524 44.8081 57.8223L70.0035 32.6758C70.8824 31.8457 71.3706 30.8203 71.3706 29.7461Z",fill:"currentColor"})]})}function K7(){const{layout:e}=Rr(),t=Hg(),n=kr(),r=h.useMemo(()=>n.lastUpdatedAt?new Date(n.lastUpdatedAt):void 0,[n.lastUpdatedAt]),o=h.useMemo(()=>r==null?void 0:r.toISOString(),[r]);return w.jsxs("footer",{className:V7,children:[e==="docs"&&w.jsxs(w.Fragment,{children:[w.jsxs("div",{className:L7,children:[w.jsx(Y7,{}),t&&n.lastUpdatedAt&&w.jsxs("div",{className:j7,children:["Last updated:"," ",w.jsx("time",{dateTime:o,children:new Intl.DateTimeFormat(void 0,{dateStyle:"short",timeStyle:"short"}).format(r)})]})]}),w.jsx(G7,{})]}),w.jsx(O7,{})]})}function Y7(){const e=I7();return e.url?w.jsx("div",{children:w.jsxs(nn,{className:M7,href:e.url,children:[w.jsx(d5,{})," ",e.text]})}):null}function G7(){const e=Hg(),t=Bl(),{pathname:n}=Re(),r=h.useMemo(()=>Wg(t.items||[]).filter(s=>s.link),[t]),o=h.useMemo(()=>r.findIndex(s=>s.link===n),[r,n]),[i,a]=h.useMemo(()=>o<0?[]:o===0?[null,r[o+1]]:o===r.length-1?[r[o-1],null]:[r[o-1],r[o+1]],[o,r]),l=jf();return h.useEffect(()=>{let s=o,c=!1;const f=d=>{if(d.code==="ShiftLeft"&&(c=!0),c){const p=r[s+1],y=r[s-1];d.code==="ArrowRight"&&(p!=null&&p.link)&&(l(p.link),s++),d.code==="ArrowLeft"&&(y!=null&&y.link)&&(l(y.link),s--)}},u=d=>{d.code==="ShiftLeft"&&(c=!1)};return window.addEventListener("keydown",f),window.addEventListener("keyup",u),()=>{window.removeEventListener("keydown",f),window.removeEventListener("keyup",u)}},[]),e?w.jsxs("div",{className:D7,children:[i?w.jsxs(nn,{className:I(Ep,B7),href:i.link,variant:"styleless",children:[w.jsxs("div",{className:bp,children:[w.jsx("div",{className:I(Cp,F7),style:Yt({[gu]:"0.75em"}),children:w.jsx(st,{label:"Previous",icon:H7})}),w.jsx("div",{className:_p,children:i.text})]}),w.jsx(eo,{description:"Previous",keys:["shift","←"]})]}):w.jsx("div",{}),a?w.jsxs(nn,{className:I(Ep,U7),href:a.link,variant:"styleless",children:[w.jsxs("div",{className:bp,children:[w.jsx("div",{className:_p,style:{textAlign:"right"},children:a.text}),w.jsx("div",{className:I(Cp,z7),style:Yt({[gu]:"0.75em"}),children:w.jsx(st,{label:"Next",icon:W7})})]}),w.jsx(eo,{description:"Next",keys:["shift","→"]})]}):w.jsx("div",{})]}):null}function Wg(e){const t=[];for(const n of e){if(n.items){t.push(...Wg(n.items));continue}t.push(n)}return t}const Kg="Collapsible",[Q7,Yg]=En(Kg),[Z7,Qf]=Q7(Kg),X7=h.forwardRef((e,t)=>{const{__scopeCollapsible:n,open:r,defaultOpen:o,disabled:i,onOpenChange:a,...l}=e,[s=!1,c]=rr({prop:r,defaultProp:o,onChange:a});return h.createElement(Z7,{scope:n,disabled:i,contentId:rn(),open:s,onOpenToggle:h.useCallback(()=>c(f=>!f),[c])},h.createElement(ue.div,Y({"data-state":Zf(s),"data-disabled":i?"":void 0},l,{ref:t})))}),J7="CollapsibleTrigger",q7=h.forwardRef((e,t)=>{const{__scopeCollapsible:n,...r}=e,o=Qf(J7,n);return h.createElement(ue.button,Y({type:"button","aria-controls":o.contentId,"aria-expanded":o.open||!1,"data-state":Zf(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled},r,{ref:t,onClick:ae(e.onClick,o.onOpenToggle)}))}),Gg="CollapsibleContent",e8=h.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Qf(Gg,e.__scopeCollapsible);return h.createElement(bn,{present:n||o.open},({present:i})=>h.createElement(t8,Y({},r,{ref:t,present:i})))}),t8=h.forwardRef((e,t)=>{const{__scopeCollapsible:n,present:r,children:o,...i}=e,a=Qf(Gg,n),[l,s]=h.useState(r),c=h.useRef(null),f=Be(t,c),u=h.useRef(0),d=u.current,p=h.useRef(0),y=p.current,g=a.open||l,C=h.useRef(g),v=h.useRef();return h.useEffect(()=>{const m=requestAnimationFrame(()=>C.current=!1);return()=>cancelAnimationFrame(m)},[]),gn(()=>{const m=c.current;if(m){v.current=v.current||{transitionDuration:m.style.transitionDuration,animationName:m.style.animationName},m.style.transitionDuration="0s",m.style.animationName="none";const x=m.getBoundingClientRect();u.current=x.height,p.current=x.width,C.current||(m.style.transitionDuration=v.current.transitionDuration,m.style.animationName=v.current.animationName),s(r)}},[a.open,r]),h.createElement(ue.div,Y({"data-state":Zf(a.open),"data-disabled":a.disabled?"":void 0,id:a.contentId,hidden:!g},i,{ref:f,style:{"--radix-collapsible-content-height":d?`${d}px`:void 0,"--radix-collapsible-content-width":y?`${y}px`:void 0,...e.style}}),g&&o)});function Zf(e){return e?"open":"closed"}const n8=X7,r8=q7,o8=e8,Pr="Accordion",i8=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[Xf,a8,l8]=Hl(Pr),[Kl,J9]=En(Pr,[l8,Yg]),Jf=Yg(),Qg=Q.forwardRef((e,t)=>{const{type:n,...r}=e,o=r,i=r;return Q.createElement(Xf.Provider,{scope:e.__scopeAccordion},n==="multiple"?Q.createElement(f8,Y({},i,{ref:t})):Q.createElement(u8,Y({},o,{ref:t})))});Qg.propTypes={type(e){const t=e.value||e.defaultValue;return e.type&&!["single","multiple"].includes(e.type)?new Error("Invalid prop `type` supplied to `Accordion`. Expected one of `single | multiple`."):e.type==="multiple"&&typeof t=="string"?new Error("Invalid prop `type` supplied to `Accordion`. Expected `single` when `defaultValue` or `value` is type `string`."):e.type==="single"&&Array.isArray(t)?new Error("Invalid prop `type` supplied to `Accordion`. Expected `multiple` when `defaultValue` or `value` is type `string[]`."):null}};const[Zg,s8]=Kl(Pr),[Xg,c8]=Kl(Pr,{collapsible:!1}),u8=Q.forwardRef((e,t)=>{const{value:n,defaultValue:r,onValueChange:o=()=>{},collapsible:i=!1,...a}=e,[l,s]=rr({prop:n,defaultProp:r,onChange:o});return Q.createElement(Zg,{scope:e.__scopeAccordion,value:l?[l]:[],onItemOpen:s,onItemClose:Q.useCallback(()=>i&&s(""),[i,s])},Q.createElement(Xg,{scope:e.__scopeAccordion,collapsible:i},Q.createElement(Jg,Y({},a,{ref:t}))))}),f8=Q.forwardRef((e,t)=>{const{value:n,defaultValue:r,onValueChange:o=()=>{},...i}=e,[a=[],l]=rr({prop:n,defaultProp:r,onChange:o}),s=Q.useCallback(f=>l((u=[])=>[...u,f]),[l]),c=Q.useCallback(f=>l((u=[])=>u.filter(d=>d!==f)),[l]);return Q.createElement(Zg,{scope:e.__scopeAccordion,value:a,onItemOpen:s,onItemClose:c},Q.createElement(Xg,{scope:e.__scopeAccordion,collapsible:!0},Q.createElement(Jg,Y({},i,{ref:t}))))}),[d8,qf]=Kl(Pr),Jg=Q.forwardRef((e,t)=>{const{__scopeAccordion:n,disabled:r,dir:o,orientation:i="vertical",...a}=e,l=Q.useRef(null),s=Be(l,t),c=a8(n),u=Vl(o)==="ltr",d=ae(e.onKeyDown,p=>{var y;if(!i8.includes(p.key))return;const g=p.target,C=c().filter(k=>{var P;return!((P=k.ref.current)!==null&&P!==void 0&&P.disabled)}),v=C.findIndex(k=>k.ref.current===g),m=C.length;if(v===-1)return;p.preventDefault();let x=v;const E=0,_=m-1,b=()=>{x=v+1,x>_&&(x=E)},S=()=>{x=v-1,x{const{__scopeAccordion:n,value:r,...o}=e,i=qf(Eu,n),a=s8(Eu,n),l=Jf(n),s=rn(),c=r&&a.value.includes(r)||!1,f=i.disabled||e.disabled;return Q.createElement(h8,{scope:n,open:c,disabled:f,triggerId:s},Q.createElement(n8,Y({"data-orientation":i.orientation,"data-state":y8(c)},l,o,{ref:t,disabled:f,open:c,onOpenChange:u=>{u?a.onItemOpen(r):a.onItemClose(r)}})))}),Sp="AccordionTrigger",v8=Q.forwardRef((e,t)=>{const{__scopeAccordion:n,...r}=e,o=qf(Pr,n),i=qg(Sp,n),a=c8(Sp,n),l=Jf(n);return Q.createElement(Xf.ItemSlot,{scope:n},Q.createElement(r8,Y({"aria-disabled":i.open&&!a.collapsible||void 0,"data-orientation":o.orientation,id:i.triggerId},l,r,{ref:t})))}),m8="AccordionContent",g8=Q.forwardRef((e,t)=>{const{__scopeAccordion:n,...r}=e,o=qf(Pr,n),i=qg(m8,n),a=Jf(n);return Q.createElement(o8,Y({role:"region","aria-labelledby":i.triggerId,"data-orientation":o.orientation},a,r,{ref:t,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...e.style}}))});function y8(e){return e?"open":"closed"}const w8=Qg,x8=p8,C8=v8,E8=g8;var b8="vocs_MobileSearch_searchButton";function _8(){const[e,t]=h.useState(!1);return w.jsxs(mg,{open:e,onOpenChange:t,children:[w.jsx(gg,{asChild:!0,children:w.jsx("button",{className:b8,type:"button","aria-label":"Search",children:w.jsx(zf,{height:21,width:21})})}),w.jsx(Tg,{open:e,onClose:()=>t(!1)})]})}var S8="vocs_MobileTopNav_button",$8="var(--vocs_MobileTopNav_chevronDownIcon)",T8="var(--vocs_MobileTopNav_chevronUpIcon)",k8="vocs_MobileTopNav_content",R8="vocs_MobileTopNav_curtain",$p="vocs_MobileTopNav_curtainGroup",qs="vocs_MobileTopNav_curtainItem",N8="vocs_MobileTopNav_divider",ba="vocs_MobileTopNav_group",P8="vocs_MobileTopNav_icon",A8="vocs_MobileTopNav_item",O8="vocs_MobileTopNav_logo",I8="vocs_MobileTopNav_menuTitle",e1="vocs_MobileTopNav_menuTrigger",t1="vocs_MobileTopNav_navigation",L8="vocs_MobileTopNav_navigationContent",Ko="vocs_MobileTopNav_navigationItem",M8="vocs_MobileTopNav_trigger",j8="vocs_MobileTopNav_navigation_compact",D8="vocs_MobileTopNav_outlinePopover",Tp="vocs_MobileTopNav_outlineTrigger",F8="vocs_MobileTopNav",kp="vocs_MobileTopNav_section",z8="vocs_MobileTopNav_separator",B8="vocs_MobileTopNav_sidebarPopover",U8="vocs_MobileTopNav_topNavPopover";function V8(e,t){let n=!1;return()=>{n=!0,setTimeout(()=>{n&&e(),n=!1},t)}}var H8="vocs_Outline_heading",W8="vocs_Outline_item",K8="vocs_Outline_items",Y8="vocs_Outline_link",G8="vocs_Outline_nav",Q8="vocs_Outline";function n1({minLevel:e=2,maxLevel:t=3,highlightActive:n=!0,onClickItem:r,showTitle:o=!0}={}){const{showOutline:i}=Rr(),a=typeof i=="number"?e+i-1:t,l=h.useRef(!0),{pathname:s,hash:c}=Re(),[f,u]=h.useState([]);h.useEffect(()=>{if(typeof window>"u")return;const C=Array.from(document.querySelectorAll(`.${z0}`));u(C)},[s]);const d=h.useMemo(()=>f?f.map(C=>{const v=C.querySelector(`.${B0}`);if(!v)return null;const m=v.getBoundingClientRect(),x=v.id,E=Number(C.tagName[1]),_=C.textContent,b=window.scrollY+m.top;return Ea?null:{id:x,level:E,slugTargetElement:v,text:_,topOffset:b}}).filter(Boolean):[],[f,a,e]),[p,y]=h.useState(c.replace("#",""));if(h.useEffect(()=>{if(typeof window>"u")return;const C=new IntersectionObserver(([v])=>{var x;if(!l.current)return;const m=v.target.id;if(v.isIntersecting)y(m);else{if(!(v.target.getBoundingClientRect().top>0))return;const b=d.findIndex($=>$.id===p),S=(x=d[b-1])==null?void 0:x.id;y(S)}},{rootMargin:"0px 0px -95% 0px"});for(const v of d)C.observe(v.slugTargetElement);return()=>C.disconnect()},[p,d]),h.useEffect(()=>{if(typeof window>"u")return;const C=new IntersectionObserver(([v])=>{var x;if(!l.current)return;const m=(x=d[d.length-1])==null?void 0:x.id;v.isIntersecting?y(m):p===m&&y(d[d.length-2].id)});return C.observe(document.querySelector("[data-bottom-observer]")),()=>C.disconnect()},[p,d]),h.useEffect(()=>{if(typeof window>"u")return;const C=V8(()=>{var v,m,x;if(l.current){if(window.scrollY===0){y((v=d[0])==null?void 0:v.id);return}if(window.scrollY+document.documentElement.clientHeight>=document.documentElement.scrollHeight){y((m=d[d.length-1])==null?void 0:m.id);return}for(let E=0;Ewindow.removeEventListener("scroll",C)},[d]),d.length===0)return null;const g=d.filter(C=>C.level===e);return w.jsx("aside",{className:Q8,children:w.jsxs("nav",{className:G8,children:[o&&w.jsx("h2",{className:H8,children:"On this page"}),w.jsx(r1,{activeId:n?p:null,items:d,onClickItem:()=>{r==null||r(),l.current=!1,setTimeout(()=>{l.current=!0},500)},levelItems:g,setActiveId:y})]})})}function r1({activeId:e,items:t,levelItems:n,onClickItem:r,setActiveId:o}){const{pathname:i}=Re();return w.jsx("ul",{className:K8,children:n.map(({id:a,level:l,text:s})=>{const c=`#${a}`,f=e===a,u=(()=>{var C;const p=t.findIndex(v=>v.id===a)+1,y=(C=t[p])==null?void 0:C.level;if(y<=l)return null;const g=[];for(let v=p;v{r==null||r(),o(a)},className:Y8,children:s})}),u&&w.jsx(r1,{activeId:e,levelItems:u,items:t,onClickItem:r,setActiveId:o})]},a)})})}const Z8=["top","right","bottom","left"],Qn=Math.min,xt=Math.max,gl=Math.round,_a=Math.floor,Zn=e=>({x:e,y:e}),X8={left:"right",right:"left",bottom:"top",top:"bottom"},J8={start:"end",end:"start"};function bu(e,t,n){return xt(e,Qn(t,n))}function yn(e,t){return typeof e=="function"?e(t):e}function wn(e){return e.split("-")[0]}function ko(e){return e.split("-")[1]}function ed(e){return e==="x"?"y":"x"}function td(e){return e==="y"?"height":"width"}function Ro(e){return["top","bottom"].includes(wn(e))?"y":"x"}function nd(e){return ed(Ro(e))}function q8(e,t,n){n===void 0&&(n=!1);const r=ko(e),o=nd(e),i=td(o);let a=o==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[i]>t.floating[i]&&(a=yl(a)),[a,yl(a)]}function eC(e){const t=yl(e);return[_u(e),t,_u(t)]}function _u(e){return e.replace(/start|end/g,t=>J8[t])}function tC(e,t,n){const r=["left","right"],o=["right","left"],i=["top","bottom"],a=["bottom","top"];switch(e){case"top":case"bottom":return n?t?o:r:t?r:o;case"left":case"right":return t?i:a;default:return[]}}function nC(e,t,n,r){const o=ko(e);let i=tC(wn(e),n==="start",r);return o&&(i=i.map(a=>a+"-"+o),t&&(i=i.concat(i.map(_u)))),i}function yl(e){return e.replace(/left|right|bottom|top/g,t=>X8[t])}function rC(e){return{top:0,right:0,bottom:0,left:0,...e}}function o1(e){return typeof e!="number"?rC(e):{top:e,right:e,bottom:e,left:e}}function wl(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Rp(e,t,n){let{reference:r,floating:o}=e;const i=Ro(t),a=nd(t),l=td(a),s=wn(t),c=i==="y",f=r.x+r.width/2-o.width/2,u=r.y+r.height/2-o.height/2,d=r[l]/2-o[l]/2;let p;switch(s){case"top":p={x:f,y:r.y-o.height};break;case"bottom":p={x:f,y:r.y+r.height};break;case"right":p={x:r.x+r.width,y:u};break;case"left":p={x:r.x-o.width,y:u};break;default:p={x:r.x,y:r.y}}switch(ko(t)){case"start":p[a]-=d*(n&&c?-1:1);break;case"end":p[a]+=d*(n&&c?-1:1);break}return p}const oC=async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:a}=n,l=i.filter(Boolean),s=await(a.isRTL==null?void 0:a.isRTL(t));let c=await a.getElementRects({reference:e,floating:t,strategy:o}),{x:f,y:u}=Rp(c,r,s),d=r,p={},y=0;for(let g=0;g({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:o,rects:i,platform:a,elements:l,middlewareData:s}=t,{element:c,padding:f=0}=yn(e,t)||{};if(c==null)return{};const u=o1(f),d={x:n,y:r},p=nd(o),y=td(p),g=await a.getDimensions(c),C=p==="y",v=C?"top":"left",m=C?"bottom":"right",x=C?"clientHeight":"clientWidth",E=i.reference[y]+i.reference[p]-d[p]-i.floating[y],_=d[p]-i.reference[p],b=await(a.getOffsetParent==null?void 0:a.getOffsetParent(c));let S=b?b[x]:0;(!S||!await(a.isElement==null?void 0:a.isElement(b)))&&(S=l.floating[x]||i.floating[y]);const $=E/2-_/2,k=S/2-g[y]/2-1,P=Qn(u[v],k),j=Qn(u[m],k),L=P,D=S-g[y]-j,N=S/2-g[y]/2+$,z=bu(L,N,D),H=!s.arrow&&ko(o)!=null&&N!==z&&i.reference[y]/2-(NL<=0)){var k,P;const L=(((k=i.flip)==null?void 0:k.index)||0)+1,D=_[L];if(D)return{data:{index:L,overflows:$},reset:{placement:D}};let N=(P=$.filter(z=>z.overflows[0]<=0).sort((z,H)=>z.overflows[1]-H.overflows[1])[0])==null?void 0:P.placement;if(!N)switch(p){case"bestFit":{var j;const z=(j=$.map(H=>[H.placement,H.overflows.filter(B=>B>0).reduce((B,O)=>B+O,0)]).sort((H,B)=>H[1]-B[1])[0])==null?void 0:j[0];z&&(N=z);break}case"initialPlacement":N=l;break}if(o!==N)return{reset:{placement:N}}}return{}}}};function Np(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Pp(e){return Z8.some(t=>e[t]>=0)}const lC=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...o}=yn(e,t);switch(r){case"referenceHidden":{const i=await Ni(t,{...o,elementContext:"reference"}),a=Np(i,n.reference);return{data:{referenceHiddenOffsets:a,referenceHidden:Pp(a)}}}case"escaped":{const i=await Ni(t,{...o,altBoundary:!0}),a=Np(i,n.floating);return{data:{escapedOffsets:a,escaped:Pp(a)}}}default:return{}}}}};async function sC(e,t){const{placement:n,platform:r,elements:o}=e,i=await(r.isRTL==null?void 0:r.isRTL(o.floating)),a=wn(n),l=ko(n),s=Ro(n)==="y",c=["left","top"].includes(a)?-1:1,f=i&&s?-1:1,u=yn(t,e);let{mainAxis:d,crossAxis:p,alignmentAxis:y}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...u};return l&&typeof y=="number"&&(p=l==="end"?y*-1:y),s?{x:p*f,y:d*c}:{x:d*c,y:p*f}}const i1=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:a,middlewareData:l}=t,s=await sC(t,e);return a===((n=l.offset)==null?void 0:n.placement)&&(r=l.arrow)!=null&&r.alignmentOffset?{}:{x:o+s.x,y:i+s.y,data:{...s,placement:a}}}}},cC=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o}=t,{mainAxis:i=!0,crossAxis:a=!1,limiter:l={fn:C=>{let{x:v,y:m}=C;return{x:v,y:m}}},...s}=yn(e,t),c={x:n,y:r},f=await Ni(t,s),u=Ro(wn(o)),d=ed(u);let p=c[d],y=c[u];if(i){const C=d==="y"?"top":"left",v=d==="y"?"bottom":"right",m=p+f[C],x=p-f[v];p=bu(m,p,x)}if(a){const C=u==="y"?"top":"left",v=u==="y"?"bottom":"right",m=y+f[C],x=y-f[v];y=bu(m,y,x)}const g=l.fn({...t,[d]:p,[u]:y});return{...g,data:{x:g.x-n,y:g.y-r}}}}},uC=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:o,rects:i,middlewareData:a}=t,{offset:l=0,mainAxis:s=!0,crossAxis:c=!0}=yn(e,t),f={x:n,y:r},u=Ro(o),d=ed(u);let p=f[d],y=f[u];const g=yn(l,t),C=typeof g=="number"?{mainAxis:g,crossAxis:0}:{mainAxis:0,crossAxis:0,...g};if(s){const x=d==="y"?"height":"width",E=i.reference[d]-i.floating[x]+C.mainAxis,_=i.reference[d]+i.reference[x]-C.mainAxis;p_&&(p=_)}if(c){var v,m;const x=d==="y"?"width":"height",E=["top","left"].includes(wn(o)),_=i.reference[u]-i.floating[x]+(E&&((v=a.offset)==null?void 0:v[u])||0)+(E?0:C.crossAxis),b=i.reference[u]+i.reference[x]+(E?0:((m=a.offset)==null?void 0:m[u])||0)-(E?C.crossAxis:0);y<_?y=_:y>b&&(y=b)}return{[d]:p,[u]:y}}}},fC=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:n,rects:r,platform:o,elements:i}=t,{apply:a=()=>{},...l}=yn(e,t),s=await Ni(t,l),c=wn(n),f=ko(n),u=Ro(n)==="y",{width:d,height:p}=r.floating;let y,g;c==="top"||c==="bottom"?(y=c,g=f===(await(o.isRTL==null?void 0:o.isRTL(i.floating))?"start":"end")?"left":"right"):(g=c,y=f==="end"?"top":"bottom");const C=p-s[y],v=d-s[g],m=!t.middlewareData.shift;let x=C,E=v;if(u){const b=d-s.left-s.right;E=f||m?Qn(v,b):b}else{const b=p-s.top-s.bottom;x=f||m?Qn(C,b):b}if(m&&!f){const b=xt(s.left,0),S=xt(s.right,0),$=xt(s.top,0),k=xt(s.bottom,0);u?E=d-2*(b!==0||S!==0?b+S:xt(s.left,s.right)):x=p-2*($!==0||k!==0?$+k:xt(s.top,s.bottom))}await a({...t,availableWidth:E,availableHeight:x});const _=await o.getDimensions(i.floating);return d!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function Xn(e){return a1(e)?(e.nodeName||"").toLowerCase():"#document"}function bt(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Sn(e){var t;return(t=(a1(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function a1(e){return e instanceof Node||e instanceof bt(e).Node}function nt(e){return e instanceof Element||e instanceof bt(e).Element}function on(e){return e instanceof HTMLElement||e instanceof bt(e).HTMLElement}function Su(e){return typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof bt(e).ShadowRoot}function Vi(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=Lt(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!["inline","contents"].includes(o)}function dC(e){return["table","td","th"].includes(Xn(e))}function rd(e){const t=od(),n=Lt(e);return n.transform!=="none"||n.perspective!=="none"||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||["transform","perspective","filter"].some(r=>(n.willChange||"").includes(r))||["paint","layout","strict","content"].some(r=>(n.contain||"").includes(r))}function l1(e){let t=Co(e);for(;on(t)&&!Yl(t);){if(rd(t))return t;t=Co(t)}return null}function od(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function Yl(e){return["html","body","#document"].includes(Xn(e))}function Lt(e){return bt(e).getComputedStyle(e)}function Gl(e){return nt(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Co(e){if(Xn(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Su(e)&&e.host||Sn(e);return Su(t)?t.host:t}function s1(e){const t=Co(e);return Yl(t)?e.ownerDocument?e.ownerDocument.body:e.body:on(t)&&Vi(t)?t:s1(t)}function Pi(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=s1(e),i=o===((r=e.ownerDocument)==null?void 0:r.body),a=bt(o);return i?t.concat(a,a.visualViewport||[],Vi(o)?o:[],a.frameElement&&n?Pi(a.frameElement):[]):t.concat(o,Pi(o,[],n))}function c1(e){const t=Lt(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=on(e),i=o?e.offsetWidth:n,a=o?e.offsetHeight:r,l=gl(n)!==i||gl(r)!==a;return l&&(n=i,r=a),{width:n,height:r,$:l}}function id(e){return nt(e)?e:e.contextElement}function lo(e){const t=id(e);if(!on(t))return Zn(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=c1(t);let a=(i?gl(n.width):n.width)/r,l=(i?gl(n.height):n.height)/o;return(!a||!Number.isFinite(a))&&(a=1),(!l||!Number.isFinite(l))&&(l=1),{x:a,y:l}}const hC=Zn(0);function u1(e){const t=bt(e);return!od()||!t.visualViewport?hC:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function pC(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==bt(e)?!1:t}function Er(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),i=id(e);let a=Zn(1);t&&(r?nt(r)&&(a=lo(r)):a=lo(e));const l=pC(i,n,r)?u1(i):Zn(0);let s=(o.left+l.x)/a.x,c=(o.top+l.y)/a.y,f=o.width/a.x,u=o.height/a.y;if(i){const d=bt(i),p=r&&nt(r)?bt(r):r;let y=d.frameElement;for(;y&&r&&p!==d;){const g=lo(y),C=y.getBoundingClientRect(),v=Lt(y),m=C.left+(y.clientLeft+parseFloat(v.paddingLeft))*g.x,x=C.top+(y.clientTop+parseFloat(v.paddingTop))*g.y;s*=g.x,c*=g.y,f*=g.x,u*=g.y,s+=m,c+=x,y=bt(y).frameElement}}return wl({width:f,height:u,x:s,y:c})}const vC=[":popover-open",":modal"];function f1(e){let t=!1,n=0,r=0;function o(i){try{t=t||e.matches(i)}catch{}}if(vC.forEach(i=>{o(i)}),t){const i=l1(e);if(i){const a=i.getBoundingClientRect();n=a.x,r=a.y}}return[t,n,r]}function mC(e){let{elements:t,rect:n,offsetParent:r,strategy:o}=e;const i=Sn(r),[a]=t?f1(t.floating):[!1];if(r===i||a)return n;let l={scrollLeft:0,scrollTop:0},s=Zn(1);const c=Zn(0),f=on(r);if((f||!f&&o!=="fixed")&&((Xn(r)!=="body"||Vi(i))&&(l=Gl(r)),on(r))){const u=Er(r);s=lo(r),c.x=u.x+r.clientLeft,c.y=u.y+r.clientTop}return{width:n.width*s.x,height:n.height*s.y,x:n.x*s.x-l.scrollLeft*s.x+c.x,y:n.y*s.y-l.scrollTop*s.y+c.y}}function gC(e){return Array.from(e.getClientRects())}function d1(e){return Er(Sn(e)).left+Gl(e).scrollLeft}function yC(e){const t=Sn(e),n=Gl(e),r=e.ownerDocument.body,o=xt(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=xt(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let a=-n.scrollLeft+d1(e);const l=-n.scrollTop;return Lt(r).direction==="rtl"&&(a+=xt(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:a,y:l}}function wC(e,t){const n=bt(e),r=Sn(e),o=n.visualViewport;let i=r.clientWidth,a=r.clientHeight,l=0,s=0;if(o){i=o.width,a=o.height;const c=od();(!c||c&&t==="fixed")&&(l=o.offsetLeft,s=o.offsetTop)}return{width:i,height:a,x:l,y:s}}function xC(e,t){const n=Er(e,!0,t==="fixed"),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=on(e)?lo(e):Zn(1),a=e.clientWidth*i.x,l=e.clientHeight*i.y,s=o*i.x,c=r*i.y;return{width:a,height:l,x:s,y:c}}function Ap(e,t,n){let r;if(t==="viewport")r=wC(e,n);else if(t==="document")r=yC(Sn(e));else if(nt(t))r=xC(t,n);else{const o=u1(e);r={...t,x:t.x-o.x,y:t.y-o.y}}return wl(r)}function h1(e,t){const n=Co(e);return n===t||!nt(n)||Yl(n)?!1:Lt(n).position==="fixed"||h1(n,t)}function CC(e,t){const n=t.get(e);if(n)return n;let r=Pi(e,[],!1).filter(l=>nt(l)&&Xn(l)!=="body"),o=null;const i=Lt(e).position==="fixed";let a=i?Co(e):e;for(;nt(a)&&!Yl(a);){const l=Lt(a),s=rd(a);!s&&l.position==="fixed"&&(o=null),(i?!s&&!o:!s&&l.position==="static"&&!!o&&["absolute","fixed"].includes(o.position)||Vi(a)&&!s&&h1(e,a))?r=r.filter(f=>f!==a):o=l,a=Co(a)}return t.set(e,r),r}function EC(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const a=[...n==="clippingAncestors"?CC(t,this._c):[].concat(n),r],l=a[0],s=a.reduce((c,f)=>{const u=Ap(t,f,o);return c.top=xt(u.top,c.top),c.right=Qn(u.right,c.right),c.bottom=Qn(u.bottom,c.bottom),c.left=xt(u.left,c.left),c},Ap(t,l,o));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function bC(e){const{width:t,height:n}=c1(e);return{width:t,height:n}}function _C(e,t,n,r){const o=on(t),i=Sn(t),a=n==="fixed",l=Er(e,!0,a,t);let s={scrollLeft:0,scrollTop:0};const c=Zn(0);if(o||!o&&!a)if((Xn(t)!=="body"||Vi(i))&&(s=Gl(t)),o){const g=Er(t,!0,a,t);c.x=g.x+t.clientLeft,c.y=g.y+t.clientTop}else i&&(c.x=d1(i));let f=l.left+s.scrollLeft-c.x,u=l.top+s.scrollTop-c.y;const[d,p,y]=f1(r);return d&&(f+=p,u+=y,o&&(f+=t.clientLeft,u+=t.clientTop)),{x:f,y:u,width:l.width,height:l.height}}function Op(e,t){return!on(e)||Lt(e).position==="fixed"?null:t?t(e):e.offsetParent}function p1(e,t){const n=bt(e);if(!on(e))return n;let r=Op(e,t);for(;r&&dC(r)&&Lt(r).position==="static";)r=Op(r,t);return r&&(Xn(r)==="html"||Xn(r)==="body"&&Lt(r).position==="static"&&!rd(r))?n:r||l1(e)||n}const SC=async function(e){const t=this.getOffsetParent||p1,n=this.getDimensions;return{reference:_C(e.reference,await t(e.floating),e.strategy,e.floating),floating:{x:0,y:0,...await n(e.floating)}}};function $C(e){return Lt(e).direction==="rtl"}const v1={convertOffsetParentRelativeRectToViewportRelativeRect:mC,getDocumentElement:Sn,getClippingRect:EC,getOffsetParent:p1,getElementRects:SC,getClientRects:gC,getDimensions:bC,getScale:lo,isElement:nt,isRTL:$C};function TC(e,t){let n=null,r;const o=Sn(e);function i(){var l;clearTimeout(r),(l=n)==null||l.disconnect(),n=null}function a(l,s){l===void 0&&(l=!1),s===void 0&&(s=1),i();const{left:c,top:f,width:u,height:d}=e.getBoundingClientRect();if(l||t(),!u||!d)return;const p=_a(f),y=_a(o.clientWidth-(c+u)),g=_a(o.clientHeight-(f+d)),C=_a(c),m={rootMargin:-p+"px "+-y+"px "+-g+"px "+-C+"px",threshold:xt(0,Qn(1,s))||1};let x=!0;function E(_){const b=_[0].intersectionRatio;if(b!==s){if(!x)return a();b?a(!1,b):r=setTimeout(()=>{a(!1,1e-7)},100)}x=!1}try{n=new IntersectionObserver(E,{...m,root:o.ownerDocument})}catch{n=new IntersectionObserver(E,m)}n.observe(e)}return a(!0),i}function kC(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:s=!1}=r,c=id(e),f=o||i?[...c?Pi(c):[],...Pi(t)]:[];f.forEach(v=>{o&&v.addEventListener("scroll",n,{passive:!0}),i&&v.addEventListener("resize",n)});const u=c&&l?TC(c,n):null;let d=-1,p=null;a&&(p=new ResizeObserver(v=>{let[m]=v;m&&m.target===c&&p&&(p.unobserve(t),cancelAnimationFrame(d),d=requestAnimationFrame(()=>{var x;(x=p)==null||x.observe(t)})),n()}),c&&!s&&p.observe(c),p.observe(t));let y,g=s?Er(e):null;s&&C();function C(){const v=Er(e);g&&(v.x!==g.x||v.y!==g.y||v.width!==g.width||v.height!==g.height)&&n(),g=v,y=requestAnimationFrame(C)}return n(),()=>{var v;f.forEach(m=>{o&&m.removeEventListener("scroll",n),i&&m.removeEventListener("resize",n)}),u==null||u(),(v=p)==null||v.disconnect(),p=null,s&&cancelAnimationFrame(y)}}const m1=cC,RC=aC,NC=fC,PC=lC,Ip=iC,AC=uC,OC=(e,t,n)=>{const r=new Map,o={platform:v1,...n},i={...o.platform,_c:r};return oC(e,t,{...o,platform:i})},g1=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:o}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?Ip({element:r.current,padding:o}).fn(n):{}:r?Ip({element:r,padding:o}).fn(n):{}}}};var Ba=typeof document<"u"?h.useLayoutEffect:h.useEffect;function xl(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,r,o;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!xl(e[r],t[r]))return!1;return!0}if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,o[r]))return!1;for(r=n;r--!==0;){const i=o[r];if(!(i==="_owner"&&e.$$typeof)&&!xl(e[i],t[i]))return!1}return!0}return e!==e&&t!==t}function y1(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Lp(e,t){const n=y1(e);return Math.round(t*n)/n}function Mp(e){const t=h.useRef(e);return Ba(()=>{t.current=e}),t}function w1(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:o,elements:{reference:i,floating:a}={},transform:l=!0,whileElementsMounted:s,open:c}=e,[f,u]=h.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[d,p]=h.useState(r);xl(d,r)||p(r);const[y,g]=h.useState(null),[C,v]=h.useState(null),m=h.useCallback(B=>{B!==b.current&&(b.current=B,g(B))},[]),x=h.useCallback(B=>{B!==S.current&&(S.current=B,v(B))},[]),E=i||y,_=a||C,b=h.useRef(null),S=h.useRef(null),$=h.useRef(f),k=s!=null,P=Mp(s),j=Mp(o),L=h.useCallback(()=>{if(!b.current||!S.current)return;const B={placement:t,strategy:n,middleware:d};j.current&&(B.platform=j.current),OC(b.current,S.current,B).then(O=>{const F={...O,isPositioned:!0};D.current&&!xl($.current,F)&&($.current=F,So.flushSync(()=>{u(F)}))})},[d,t,n,j]);Ba(()=>{c===!1&&$.current.isPositioned&&($.current.isPositioned=!1,u(B=>({...B,isPositioned:!1})))},[c]);const D=h.useRef(!1);Ba(()=>(D.current=!0,()=>{D.current=!1}),[]),Ba(()=>{if(E&&(b.current=E),_&&(S.current=_),E&&_){if(P.current)return P.current(E,_,L);L()}},[E,_,L,P,k]);const N=h.useMemo(()=>({reference:b,floating:S,setReference:m,setFloating:x}),[m,x]),z=h.useMemo(()=>({reference:E,floating:_}),[E,_]),H=h.useMemo(()=>{const B={position:n,left:0,top:0};if(!z.floating)return B;const O=Lp(z.floating,f.x),F=Lp(z.floating,f.y);return l?{...B,transform:"translate("+O+"px, "+F+"px)",...y1(z.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:O,top:F}},[n,l,z.floating,f.x,f.y]);return h.useMemo(()=>({...f,update:L,refs:N,elements:z,floatingStyles:H}),[f,L,N,z,H])}function IC(e){const[t,n]=h.useState(void 0);return gn(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const i=o[0];let a,l;if("borderBoxSize"in i){const s=i.borderBoxSize,c=Array.isArray(s)?s[0]:s;a=c.inlineSize,l=c.blockSize}else a=e.offsetWidth,l=e.offsetHeight;n({width:a,height:l})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}const x1="Popper",[C1,E1]=En(x1),[LC,b1]=C1(x1),MC=e=>{const{__scopePopper:t,children:n}=e,[r,o]=h.useState(null);return h.createElement(LC,{scope:t,anchor:r,onAnchorChange:o},n)},jC="PopperAnchor",DC=h.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...o}=e,i=b1(jC,n),a=h.useRef(null),l=Be(t,a);return h.useEffect(()=>{i.onAnchorChange((r==null?void 0:r.current)||a.current)}),r?null:h.createElement(ue.div,Y({},o,{ref:l}))}),_1="PopperContent",[FC,q9]=C1(_1),zC=h.forwardRef((e,t)=>{var n,r,o,i,a,l,s,c;const{__scopePopper:f,side:u="bottom",sideOffset:d=0,align:p="center",alignOffset:y=0,arrowPadding:g=0,avoidCollisions:C=!0,collisionBoundary:v=[],collisionPadding:m=0,sticky:x="partial",hideWhenDetached:E=!1,updatePositionStrategy:_="optimized",onPlaced:b,...S}=e,$=b1(_1,f),[k,P]=h.useState(null),j=Be(t,yt=>P(yt)),[L,D]=h.useState(null),N=IC(L),z=(n=N==null?void 0:N.width)!==null&&n!==void 0?n:0,H=(r=N==null?void 0:N.height)!==null&&r!==void 0?r:0,B=u+(p!=="center"?"-"+p:""),O=typeof m=="number"?m:{top:0,right:0,bottom:0,left:0,...m},F=Array.isArray(v)?v:[v],W=F.length>0,J={padding:O,boundary:F.filter(BC),altBoundary:W},{refs:se,floatingStyles:Ue,placement:ge,isPositioned:Ne,middlewareData:ye}=w1({strategy:"fixed",placement:B,whileElementsMounted:(...yt)=>kC(...yt,{animationFrame:_==="always"}),elements:{reference:$.anchor},middleware:[i1({mainAxis:d+H,alignmentAxis:y}),C&&m1({mainAxis:!0,crossAxis:!1,limiter:x==="partial"?AC():void 0,...J}),C&&RC({...J}),NC({...J,apply:({elements:yt,rects:Wi,availableWidth:Zl,availableHeight:Xl})=>{const{width:Jl,height:ql}=Wi.reference,Gt=yt.floating.style;Gt.setProperty("--radix-popper-available-width",`${Zl}px`),Gt.setProperty("--radix-popper-available-height",`${Xl}px`),Gt.setProperty("--radix-popper-anchor-width",`${Jl}px`),Gt.setProperty("--radix-popper-anchor-height",`${ql}px`)}}),L&&g1({element:L,padding:g}),UC({arrowWidth:z,arrowHeight:H}),E&&PC({strategy:"referenceHidden",...J})]}),[Ve,we]=S1(ge),_e=at(b);gn(()=>{Ne&&(_e==null||_e())},[Ne,_e]);const Mt=(o=ye.arrow)===null||o===void 0?void 0:o.x,Se=(i=ye.arrow)===null||i===void 0?void 0:i.y,ft=((a=ye.arrow)===null||a===void 0?void 0:a.centerOffset)!==0,[Hi,Ql]=h.useState();return gn(()=>{k&&Ql(window.getComputedStyle(k).zIndex)},[k]),h.createElement("div",{ref:se.setFloating,"data-radix-popper-content-wrapper":"",style:{...Ue,transform:Ne?Ue.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:Hi,"--radix-popper-transform-origin":[(l=ye.transformOrigin)===null||l===void 0?void 0:l.x,(s=ye.transformOrigin)===null||s===void 0?void 0:s.y].join(" ")},dir:e.dir},h.createElement(FC,{scope:f,placedSide:Ve,onArrowChange:D,arrowX:Mt,arrowY:Se,shouldHideArrow:ft},h.createElement(ue.div,Y({"data-side":Ve,"data-align":we},S,{ref:j,style:{...S.style,animation:Ne?void 0:"none",opacity:(c=ye.hide)!==null&&c!==void 0&&c.referenceHidden?0:void 0}}))))});function BC(e){return e!==null}const UC=e=>({name:"transformOrigin",options:e,fn(t){var n,r,o,i,a;const{placement:l,rects:s,middlewareData:c}=t,u=((n=c.arrow)===null||n===void 0?void 0:n.centerOffset)!==0,d=u?0:e.arrowWidth,p=u?0:e.arrowHeight,[y,g]=S1(l),C={start:"0%",center:"50%",end:"100%"}[g],v=((r=(o=c.arrow)===null||o===void 0?void 0:o.x)!==null&&r!==void 0?r:0)+d/2,m=((i=(a=c.arrow)===null||a===void 0?void 0:a.y)!==null&&i!==void 0?i:0)+p/2;let x="",E="";return y==="bottom"?(x=u?C:`${v}px`,E=`${-p}px`):y==="top"?(x=u?C:`${v}px`,E=`${s.floating.height+p}px`):y==="right"?(x=`${-p}px`,E=u?C:`${m}px`):y==="left"&&(x=`${s.floating.width+p}px`,E=u?C:`${m}px`),{data:{x,y:E}}}});function S1(e){const[t,n="center"]=e.split("-");return[t,n]}const VC=MC,HC=DC,WC=zC,$1="Popover",[T1,e$]=En($1,[E1]),ad=E1(),[KC,No]=T1($1),YC=e=>{const{__scopePopover:t,children:n,open:r,defaultOpen:o,onOpenChange:i,modal:a=!1}=e,l=ad(t),s=h.useRef(null),[c,f]=h.useState(!1),[u=!1,d]=rr({prop:r,defaultProp:o,onChange:i});return h.createElement(VC,l,h.createElement(KC,{scope:t,contentId:rn(),triggerRef:s,open:u,onOpenChange:d,onOpenToggle:h.useCallback(()=>d(p=>!p),[d]),hasCustomAnchor:c,onCustomAnchorAdd:h.useCallback(()=>f(!0),[]),onCustomAnchorRemove:h.useCallback(()=>f(!1),[]),modal:a},n))},GC="PopoverTrigger",QC=h.forwardRef((e,t)=>{const{__scopePopover:n,...r}=e,o=No(GC,n),i=ad(n),a=Be(t,o.triggerRef),l=h.createElement(ue.button,Y({type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":N1(o.open)},r,{ref:a,onClick:ae(e.onClick,o.onOpenToggle)}));return o.hasCustomAnchor?l:h.createElement(HC,Y({asChild:!0},i),l)}),k1="PopoverPortal",[ZC,XC]=T1(k1,{forceMount:void 0}),JC=e=>{const{__scopePopover:t,forceMount:n,children:r,container:o}=e,i=No(k1,t);return h.createElement(ZC,{scope:t,forceMount:n},h.createElement(bn,{present:n||i.open},h.createElement(J0,{asChild:!0,container:o},r)))},Ai="PopoverContent",qC=h.forwardRef((e,t)=>{const n=XC(Ai,e.__scopePopover),{forceMount:r=n.forceMount,...o}=e,i=No(Ai,e.__scopePopover);return h.createElement(bn,{present:r||i.open},i.modal?h.createElement(eE,Y({},o,{ref:t})):h.createElement(tE,Y({},o,{ref:t})))}),eE=h.forwardRef((e,t)=>{const n=No(Ai,e.__scopePopover),r=h.useRef(null),o=Be(t,r),i=h.useRef(!1);return h.useEffect(()=>{const a=r.current;if(a)return ug(a)},[]),h.createElement(sg,{as:xo,allowPinchZoom:!0},h.createElement(R1,Y({},e,{ref:o,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:ae(e.onCloseAutoFocus,a=>{var l;a.preventDefault(),i.current||(l=n.triggerRef.current)===null||l===void 0||l.focus()}),onPointerDownOutside:ae(e.onPointerDownOutside,a=>{const l=a.detail.originalEvent,s=l.button===0&&l.ctrlKey===!0,c=l.button===2||s;i.current=c},{checkForDefaultPrevented:!1}),onFocusOutside:ae(e.onFocusOutside,a=>a.preventDefault(),{checkForDefaultPrevented:!1})})))}),tE=h.forwardRef((e,t)=>{const n=No(Ai,e.__scopePopover),r=h.useRef(!1),o=h.useRef(!1);return h.createElement(R1,Y({},e,{ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{var a;if((a=e.onCloseAutoFocus)===null||a===void 0||a.call(e,i),!i.defaultPrevented){var l;r.current||(l=n.triggerRef.current)===null||l===void 0||l.focus(),i.preventDefault()}r.current=!1,o.current=!1},onInteractOutside:i=>{var a,l;(a=e.onInteractOutside)===null||a===void 0||a.call(e,i),i.defaultPrevented||(r.current=!0,i.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const s=i.target;((l=n.triggerRef.current)===null||l===void 0?void 0:l.contains(s))&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&o.current&&i.preventDefault()}}))}),R1=h.forwardRef((e,t)=>{const{__scopePopover:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:i,disableOutsidePointerEvents:a,onEscapeKeyDown:l,onPointerDownOutside:s,onFocusOutside:c,onInteractOutside:f,...u}=e,d=No(Ai,n),p=ad(n);return q0(),h.createElement(Z0,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:i},h.createElement(Bf,{asChild:!0,disableOutsidePointerEvents:a,onInteractOutside:f,onEscapeKeyDown:l,onPointerDownOutside:s,onFocusOutside:c,onDismiss:()=>d.onOpenChange(!1)},h.createElement(WC,Y({"data-state":N1(d.open),role:"dialog",id:d.contentId},p,u,{ref:t,style:{...u.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}}))))});function N1(e){return e?"open":"closed"}const nE=YC,rE=QC,oE=JC,iE=qC;var aE="vocs_Popover";Ut.Root=nE;Ut.Trigger=rE;function Ut({children:e,className:t}){return w.jsx(oE,{children:w.jsx(iE,{className:I(aE,t),sideOffset:12,children:e})})}var lE="vocs_Sidebar_backLink",sE="vocs_Sidebar_divider",cE="vocs_Sidebar_group",qo="vocs_Sidebar_item",P1="vocs_Sidebar_items",uE="vocs_Sidebar_level",fE="vocs_Sidebar_levelCollapsed",dE="vocs_Sidebar_levelInset",hE="vocs_Sidebar_logo",pE="vocs_Sidebar_logoWrapper",vE="vocs_Sidebar_navigation",mE="vocs_Sidebar",A1="vocs_Sidebar_section",gE="vocs_Sidebar_sectionCollapse",yE="vocs_Sidebar_sectionCollapseActive",wE="vocs_Sidebar_sectionHeader",xE="vocs_Sidebar_sectionHeaderActive",jp="vocs_Sidebar_sectionTitle";function O1(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 39 69",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Chevron Right"}),w.jsx("path",{d:"M38.8697 34.7461C38.8697 33.6719 38.4791 32.6953 37.649 31.8652L7.47318 1.8848C6.74078 1.1035 5.76418 0.712891 4.64118 0.712891C2.34618 0.712891 0.588379 2.42189 0.588379 4.71679C0.588379 5.79099 1.07668 6.81639 1.76028 7.59769L29.0552 34.7461L1.76028 61.8945C1.07668 62.6758 0.588379 63.6523 0.588379 64.7754C0.588379 67.0703 2.34618 68.7793 4.64118 68.7793C5.76418 68.7793 6.74078 68.3887 7.47318 67.6074L37.649 37.627C38.4791 36.7969 38.8697 35.8203 38.8697 34.7461Z",fill:"currentColor"})]})}function I1(e){const{className:t,onClickItem:n}=e,{previousPath:r}=kr(),o=h.useRef(null),i=Bl(),[a,l]=h.useState("/");if(h.useEffect(()=>{typeof window>"u"||r&&l(r)},[i.key,i.backLink]),!i)return null;const s=CE(i.items);return w.jsxs("aside",{ref:o,className:I(mE,t),children:[w.jsxs("div",{className:pE,children:[w.jsx("div",{className:hE,children:w.jsx(Gn,{to:"/",style:{alignItems:"center",display:"flex",height:"100%"},children:w.jsx(Wf,{})})}),w.jsx("div",{className:sE})]}),w.jsx("nav",{className:vE,children:w.jsxs("div",{className:cE,children:[i.backLink&&w.jsx("section",{className:A1,children:w.jsx("div",{className:P1,children:w.jsxs(Gn,{className:I(qo,lE),to:a,children:["←"," ",typeof history<"u"&&history.state.key&&a!=="/"?"Back":"Home"]})})}),s.map((c,f)=>w.jsx(M1,{depth:0,item:c,onClick:n,sidebarRef:o},`${c.text}${f}`))]})})]},i.key)}function CE(e){const t=[];let n=0;for(const r of e){if(r.items){n=t.push(r);continue}t[n]?t[n].items.push(r):t.push({text:"",items:[r]})}return t}function L1(e,t){return e.find(n=>Fl(t,n.link??"")||n.link===t?!0:n.items?L1(n.items,t):!1)}function M1(e){const{depth:t,item:n,onClick:r,sidebarRef:o}=e,i=h.useRef(null),{pathname:a}=Re(),l=Mw(n.link??""),s=h.useMemo(()=>n.items?!!L1(n.items,a):!1,[n.items,a]),[c,f]=h.useState(()=>l||!n.items||s?!1:!!n.collapsed),u=n.collapsed!==void 0&&n.items!==void 0,d=h.useCallback(g=>{"key"in g&&g.key!=="Enter"||n.link||f(C=>!C)},[n.link]),p=h.useCallback(g=>{"key"in g&&g.key!=="Enter"||n.link&&f(C=>!C)},[n.link]),y=h.useRef(!0);return h.useEffect(()=>{!y.current||(y.current=!1,!Fl(a,n.link??""))||requestAnimationFrame(()=>{var m,x,E;const C=((m=i.current)==null?void 0:m.offsetTop)??0,v=((x=o==null?void 0:o.current)==null?void 0:x.clientHeight)??0;C0&&t<5&&n.items.map((g,C)=>w.jsx(M1,{depth:t+1,item:g,onClick:r,sidebarRef:o},`${g.text}${C}`))})]}):w.jsx(w.Fragment,{children:n.link?w.jsx(Gn,{ref:i,"data-active":!!l,onClick:r,className:qo,to:n.link,children:n.text}):w.jsx("div",{className:qo,children:n.text})})}function EE(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 69 39",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Chevron Down"}),w.jsx("path",{d:"M34.8677 38.8398C35.9419 38.8398 37.0161 38.4492 37.7485 37.6191L67.729 7.44339C68.4614 6.71089 68.9009 5.73439 68.9009 4.61129C68.9009 2.31639 67.1919 0.558594 64.897 0.558594C63.8227 0.558594 62.7485 1.04689 62.0161 1.73049L32.5727 31.2715H37.1138L7.67042 1.73049C6.93802 1.04689 5.96142 0.558594 4.83842 0.558594C2.54342 0.558594 0.785645 2.31639 0.785645 4.61129C0.785645 5.73439 1.22512 6.71089 1.95752 7.44339L31.9868 37.6191C32.768 38.4492 33.7446 38.8398 34.8677 38.8398Z",fill:"currentColor"})]})}function bE(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 69 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Chevron Up"}),w.jsx("path",{d:"M1.95752 32.2441C1.22512 32.9277 0.785645 33.9531 0.785645 35.0762C0.785645 37.3711 2.54342 39.1289 4.83842 39.1289C5.96142 39.1289 6.98682 38.6895 7.67042 37.957L37.1138 8.36716H32.5727L62.0161 37.957C62.6997 38.6895 63.8227 39.1289 64.897 39.1289C67.1919 39.1289 68.9009 37.3711 68.9009 35.0762C68.9009 33.9531 68.4614 32.9277 67.729 32.2441L37.7485 2.06836C37.0161 1.23826 35.9419 0.847656 34.8677 0.847656C33.7446 0.847656 32.7192 1.23826 31.9868 2.06836L1.95752 32.2441Z",fill:"currentColor"})]})}function _E(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 79 48",fill:"none",children:[w.jsx("title",{children:"Menu"}),w.jsx("path",{fill:"currentColor",d:"M19.528 47.232h40.87c1.952 0 3.515-1.562 3.515-3.564a3.5 3.5 0 0 0-3.516-3.516H19.528a3.501 3.501 0 0 0-3.515 3.516c0 2.002 1.562 3.564 3.515 3.564ZM12.057 27.262h55.81a3.501 3.501 0 0 0 3.516-3.516 3.501 3.501 0 0 0-3.515-3.515h-55.81a3.501 3.501 0 0 0-3.516 3.515 3.501 3.501 0 0 0 3.515 3.516ZM4.391 7.34H75.29c2.002 0 3.515-1.563 3.515-3.516 0-2.002-1.513-3.564-3.515-3.564H4.39C2.438.26.876 1.822.876 3.824A3.501 3.501 0 0 0 4.39 7.34Z"})]})}$u.Curtain=PE;function $u(){var n,r;const e=ot(),{showLogo:t}=Rr();return w.jsxs("div",{className:F8,children:[w.jsxs("div",{className:kp,children:[t&&w.jsx("div",{className:ba,children:w.jsx("div",{className:O8,children:w.jsx(Gn,{to:"/",style:{alignItems:"center",display:"flex",height:"100%"},children:w.jsx(Wf,{})})})}),e.topNav&&w.jsx(w.Fragment,{children:w.jsxs("div",{className:ba,children:[w.jsx(SE,{items:e.topNav}),w.jsx(TE,{items:e.topNav})]})})]}),w.jsxs("div",{className:kp,children:[w.jsx("div",{className:ba,style:{marginRight:"-8px"},children:w.jsx(_8,{})}),e.socials&&((n=e.socials)==null?void 0:n.length)>0&&w.jsxs(w.Fragment,{children:[w.jsx("div",{className:N8}),w.jsx("div",{className:ba,style:{marginLeft:"-8px"},children:(r=e.socials)==null?void 0:r.map((o,i)=>w.jsx(NE,{...o},i))})]})]})]})}function SE({items:e}){const{pathname:t}=Re(),n=Bi({pathname:t,items:e});return w.jsx(Lg,{className:t1,children:w.jsx(Mg,{children:e.map((r,o)=>r!=null&&r.link?w.jsx(Wl,{active:n==null?void 0:n.includes(r.id),href:r.link,children:r.text},o):w.jsxs(jg,{className:A8,children:[w.jsx(Dg,{active:n==null?void 0:n.includes(r.id),children:r.text}),w.jsx(Fg,{className:k8,children:w.jsx($E,{items:r.items||[]})})]},o))})})}function $E({items:e}){const{pathname:t}=Re(),n=Bi({pathname:t,items:e});return w.jsx("ul",{children:e==null?void 0:e.map((r,o)=>w.jsx(Wl,{active:n.includes(r.id),href:r.link,children:r.text},o))})}function TE({items:e}){var s;const[t,n]=h.useState(!1),{pathname:r}=Re(),o=Bi({pathname:r,items:e}),i=e.filter(c=>c.id===o[0])[0],{basePath:a}=ot(),l=a;return w.jsx("div",{className:I(t1,j8),children:i?w.jsxs(Ut.Root,{modal:!0,open:t,onOpenChange:n,children:[w.jsxs(Ut.Trigger,{className:I(e1,Ko),children:[i.text,w.jsx(st,{label:"Menu",icon:EE,size:"11px"})]}),w.jsx(Ut,{className:U8,children:w.jsx(w8,{type:"single",collapsible:!0,style:{display:"flex",flexDirection:"column"},children:e.map((c,f)=>{var u;return c!=null&&c.link?w.jsx(nn,{"data-active":o.includes(c.id),className:Ko,href:c.link,onClick:()=>n(!1),variant:"styleless",children:c.text},f):w.jsxs(x8,{value:f.toString(),children:[w.jsx(C8,{className:I(Ko,M8),"data-active":o.includes(c.id),style:Yt({[$8]:`url(${l}/.vocs/icons/chevron-down.svg)`,[T8]:`url(${l}/.vocs/icons/chevron-up.svg)`}),children:c.text}),w.jsx(E8,{className:L8,children:(u=c.items)==null?void 0:u.map((d,p)=>w.jsx(nn,{className:Ko,href:d.link,onClick:()=>n(!1),variant:"styleless",children:d.text},p))})]},f)})})})]}):(s=e[0])!=null&&s.link?w.jsx(nn,{className:Ko,href:e[0].link,variant:"styleless",children:e[0].text}):null})}const kE={discord:zg,github:Bg,telegram:Ug,x:Vg},RE={discord:"21px",github:"18px",telegram:"21px",x:"16px"};function NE({icon:e,label:t,link:n,type:r}){return w.jsx("a",{className:S8,href:n,target:"_blank",rel:"noopener noreferrer",children:w.jsx(st,{className:P8,label:t,icon:kE[e],size:RE[r]||"18px"})})}function PE({enableScrollToTop:e}){const{pathname:t}=Re(),{layout:n,showSidebar:r}=Rr(),{frontmatter:o={}}=kr(),i=Bl(),[a,l]=h.useState(!1),[s,c]=h.useState(!1),f=h.useMemo(()=>{if(!i||n==="minimal")return;const p=j1({sidebarItems:i.items,pathname:t});return p==null?void 0:p.text},[n,t,i]),u=h.useMemo(()=>{var p;if(!(typeof window>"u"))return(p=document.querySelector(".vocs_Content h1"))==null?void 0:p.textContent},[]),d=f||o.title||u;return w.jsxs("div",{className:R8,children:[w.jsx("div",{className:$p,children:w.jsx("div",{className:qs,children:r?w.jsxs(Ut.Root,{modal:!0,open:s,onOpenChange:c,children:[w.jsxs(Ut.Trigger,{className:e1,children:[w.jsx(st,{label:"Menu",icon:_E,size:"13px"}),w.jsx("div",{className:I8,children:d})]}),w.jsx(Ut,{className:B8,children:w.jsx(I1,{onClickItem:()=>c(!1)})})]}):d})}),w.jsxs("div",{className:$p,children:[e&&w.jsxs(w.Fragment,{children:[w.jsx("div",{className:qs,children:w.jsxs("button",{className:Tp,onClick:()=>window.scrollTo({behavior:"smooth",top:0}),type:"button",children:["Top",w.jsx(st,{label:"Scroll to top",icon:bE,size:"10px"})]})}),w.jsx("div",{className:z8})]}),n==="docs"&&w.jsx("div",{className:qs,children:w.jsxs(Ut.Root,{modal:!0,open:a,onOpenChange:l,children:[w.jsxs(Ut.Trigger,{className:Tp,children:["On this page",w.jsx(st,{label:"On this page",icon:O1,size:"10px"})]}),w.jsx(Ut,{className:D8,children:w.jsx(n1,{onClickItem:()=>l(!1),showTitle:!1})})]})})]})]})}function j1({sidebarItems:e,pathname:t}){const n=t.replace(/(.+)\/$/,"$1");for(const r of e){if((r==null?void 0:r.link)===n)return r;if(r.items){const o=j1({sidebarItems:r.items,pathname:n});if(o)return o}}}var AE="vocs_SkipLink";const D1="vocs-content";function OE(){const{pathname:e}=Re();return w.jsx("a",{className:I(AE,Y0),href:`${e}#${D1}`,children:"Skip to content"})}var IE="vocs_DocsLayout_content",LE="vocs_DocsLayout_content_withSidebar",ME="vocs_DocsLayout_content_withTopNav",jE="vocs_DocsLayout_gutterLeft",DE="vocs_DocsLayout_gutterRight",FE="vocs_DocsLayout_gutterRight_withSidebar",zE="vocs_DocsLayout_gutterTop",BE="vocs_DocsLayout_gutterTopCurtain",UE="vocs_DocsLayout_gutterTopCurtain_hidden",VE="vocs_DocsLayout_gutterTopCurtain_withSidebar",HE="vocs_DocsLayout_gutterTop_offsetLeftGutter",WE="vocs_DocsLayout_gutterTop_sticky",KE="vocs_DocsLayout",YE="vocs_DocsLayout_sidebar";function Tu({children:e}){const{banner:t,font:n}=ot(),{frontmatter:r={}}=kr(),{content:o}=r,{layout:i,showOutline:a,showSidebar:l,showTopNav:s}=Rr(),{ref:c,inView:f}=F0({initialInView:!0,rootMargin:"100px 0px 0px 0px"}),[u,d]=vu("banner",!0);return w.jsxs("div",{className:KE,"data-layout":i,style:Yt({[Wx]:u?t==null?void 0:t.height:void 0,[Tx.default]:n!=null&&n.google?`${n.google}, ${$x.default}`:void 0}),children:[w.jsx(OE,{}),u&&w.jsx(h5,{hide:()=>d(!1)}),l&&w.jsx("div",{className:jE,children:w.jsx(I1,{className:YE})}),s&&w.jsxs(w.Fragment,{children:[w.jsxs("div",{ref:c,className:I(zE,l&&HE,(i==="minimal"||i==="landing")&&WE),children:[w.jsx(Cu,{}),w.jsx($u,{})]}),w.jsxs("div",{className:I(BE,l&&VE,(i==="minimal"||i==="landing")&&UE),children:[w.jsx(Cu.Curtain,{}),w.jsx($u.Curtain,{enableScrollToTop:!f})]})]}),a&&w.jsx("div",{className:I(DE,l&&FE),children:w.jsx(n1,{})}),w.jsxs("div",{id:D1,className:I(IE,l&&LE,s&&ME),style:Yt({[Ls.horizontalPadding]:o==null?void 0:o.horizontalPadding,[Ls.width]:o==null?void 0:o.width,[Ls.verticalPadding]:o==null?void 0:o.verticalPadding}),children:[w.jsx(H0,{children:e}),w.jsx(K7,{})]}),w.jsx("div",{"data-bottom-observer":!0})]})}const ku={},F1=Q.createContext(ku);function GE(e){const t=Q.useContext(F1);return Q.useMemo(function(){return typeof e=="function"?e(t):{...t,...e}},[t,e])}function QE(e){let t;return e.disableParentContext?t=typeof e.components=="function"?e.components(ku):e.components||ku:t=GE(e.components),Q.createElement(F1.Provider,{value:t},e.children)}var z1={exports:{}},ZE="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",XE=ZE,JE=XE;function B1(){}function U1(){}U1.resetWarningCache=B1;var qE=function(){function e(r,o,i,a,l,s){if(s!==JE){var c=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw c.name="Invariant Violation",c}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:U1,resetWarningCache:B1};return n.PropTypes=n,n};z1.exports=qE();var eb=z1.exports;const Ce=Jn(eb);function tb(e){return e&&typeof e=="object"&&"default"in e?e.default:e}var V1=h,nb=tb(V1);function Dp(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function rb(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var ob=!!(typeof window<"u"&&window.document&&window.document.createElement);function ib(e,t,n){if(typeof e!="function")throw new Error("Expected reducePropsToState to be a function.");if(typeof t!="function")throw new Error("Expected handleStateChangeOnClient to be a function.");if(typeof n<"u"&&typeof n!="function")throw new Error("Expected mapStateOnServer to either be undefined or a function.");function r(o){return o.displayName||o.name||"Component"}return function(i){if(typeof i!="function")throw new Error("Expected WrappedComponent to be a React component.");var a=[],l;function s(){l=e(a.map(function(f){return f.props})),c.canUseDOM?t(l):n&&(l=n(l))}var c=function(f){rb(u,f);function u(){return f.apply(this,arguments)||this}u.peek=function(){return l},u.rewind=function(){if(u.canUseDOM)throw new Error("You may only call rewind() on the server. Call peek() to read the current state.");var y=l;return l=void 0,a=[],y};var d=u.prototype;return d.UNSAFE_componentWillMount=function(){a.push(this),s()},d.componentDidUpdate=function(){s()},d.componentWillUnmount=function(){var y=a.indexOf(this);a.splice(y,1),s()},d.render=function(){return nb.createElement(i,this.props)},u}(V1.PureComponent);return Dp(c,"displayName","SideEffect("+r(i)+")"),Dp(c,"canUseDOM",ob),c}}var ab=ib;const lb=Jn(ab);var sb=typeof Element<"u",cb=typeof Map=="function",ub=typeof Set=="function",fb=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function Ua(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;var n,r,o;if(Array.isArray(e)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(!Ua(e[r],t[r]))return!1;return!0}var i;if(cb&&e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(i=e.entries();!(r=i.next()).done;)if(!t.has(r.value[0]))return!1;for(i=e.entries();!(r=i.next()).done;)if(!Ua(r.value[1],t.get(r.value[0])))return!1;return!0}if(ub&&e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(i=e.entries();!(r=i.next()).done;)if(!t.has(r.value[0]))return!1;return!0}if(fb&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(e[r]!==t[r])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf&&typeof e.valueOf=="function"&&typeof t.valueOf=="function")return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString&&typeof e.toString=="function"&&typeof t.toString=="function")return e.toString()===t.toString();if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(t,o[r]))return!1;if(sb&&e instanceof Element)return!1;for(r=n;r--!==0;)if(!((o[r]==="_owner"||o[r]==="__v"||o[r]==="__o")&&e.$$typeof)&&!Ua(e[o[r]],t[o[r]]))return!1;return!0}return e!==e&&t!==t}var db=function(t,n){try{return Ua(t,n)}catch(r){if((r.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw r}};const hb=Jn(db);/* +*****************************************************/(function(e,t){(function(n,r){e.exports=r()})(wy,function(){var n=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c},r=function(c,f){if(!(c instanceof f))throw new TypeError("Cannot call a class as a function")},o=function(){function c(f,u){for(var d=0;d1&&arguments[1]!==void 0?arguments[1]:!0,d=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:5e3;r(this,c),this.ctx=f,this.iframes=u,this.exclude=d,this.iframesTimeout=p}return o(c,[{key:"getContexts",value:function(){var u=void 0,d=[];return typeof this.ctx>"u"||!this.ctx?u=[]:NodeList.prototype.isPrototypeOf(this.ctx)?u=Array.prototype.slice.call(this.ctx):Array.isArray(this.ctx)?u=this.ctx:typeof this.ctx=="string"?u=Array.prototype.slice.call(document.querySelectorAll(this.ctx)):u=[this.ctx],u.forEach(function(p){var y=d.filter(function(g){return g.contains(p)}).length>0;d.indexOf(p)===-1&&!y&&d.push(p)}),d}},{key:"getIframeContents",value:function(u,d){var p=arguments.length>2&&arguments[2]!==void 0?arguments[2]:function(){},y=void 0;try{var g=u.contentWindow;if(y=g.document,!g||!y)throw new Error("iframe inaccessible")}catch{p()}y&&d(y)}},{key:"isIframeBlank",value:function(u){var d="about:blank",p=u.getAttribute("src").trim(),y=u.contentWindow.location.href;return y===d&&p!==d&&p}},{key:"observeIframeLoad",value:function(u,d,p){var y=this,g=!1,C=null,v=function m(){if(!g){g=!0,clearTimeout(C);try{y.isIframeBlank(u)||(u.removeEventListener("load",m),y.getIframeContents(u,d,p))}catch{p()}}};u.addEventListener("load",v),C=setTimeout(v,this.iframesTimeout)}},{key:"onIframeReady",value:function(u,d,p){try{u.contentWindow.document.readyState==="complete"?this.isIframeBlank(u)?this.observeIframeLoad(u,d,p):this.getIframeContents(u,d,p):this.observeIframeLoad(u,d,p)}catch{p()}}},{key:"waitForIframes",value:function(u,d){var p=this,y=0;this.forEachIframe(u,function(){return!0},function(g){y++,p.waitForIframes(g.querySelector("html"),function(){--y||d()})},function(g){g||d()})}},{key:"forEachIframe",value:function(u,d,p){var y=this,g=arguments.length>3&&arguments[3]!==void 0?arguments[3]:function(){},C=u.querySelectorAll("iframe"),v=C.length,m=0;C=Array.prototype.slice.call(C);var x=function(){--v<=0&&g(m)};v||x(),C.forEach(function(E){c.matches(E,y.exclude)?x():y.onIframeReady(E,function(_){d(E)&&(m++,p(_)),x()},x)})}},{key:"createIterator",value:function(u,d,p){return document.createNodeIterator(u,d,p,!1)}},{key:"createInstanceOnIframe",value:function(u){return new c(u.querySelector("html"),this.iframes)}},{key:"compareNodeIframe",value:function(u,d,p){var y=u.compareDocumentPosition(p),g=Node.DOCUMENT_POSITION_PRECEDING;if(y&g)if(d!==null){var C=d.compareDocumentPosition(p),v=Node.DOCUMENT_POSITION_FOLLOWING;if(C&v)return!0}else return!0;return!1}},{key:"getIteratorNode",value:function(u){var d=u.previousNode(),p=void 0;return d===null?p=u.nextNode():p=u.nextNode()&&u.nextNode(),{prevNode:d,node:p}}},{key:"checkIframeFilter",value:function(u,d,p,y){var g=!1,C=!1;return y.forEach(function(v,m){v.val===p&&(g=m,C=v.handled)}),this.compareNodeIframe(u,d,p)?(g===!1&&!C?y.push({val:p,handled:!0}):g!==!1&&!C&&(y[g].handled=!0),!0):(g===!1&&y.push({val:p,handled:!1}),!1)}},{key:"handleOpenIframes",value:function(u,d,p,y){var g=this;u.forEach(function(C){C.handled||g.getIframeContents(C.val,function(v){g.createInstanceOnIframe(v).forEachNode(d,p,y)})})}},{key:"iterateThroughNodes",value:function(u,d,p,y,g){for(var C=this,v=this.createIterator(d,u,y),m=[],x=[],E=void 0,_=void 0,b=function(){var $=C.getIteratorNode(v);return _=$.prevNode,E=$.node,E};b();)this.iframes&&this.forEachIframe(d,function(S){return C.checkIframeFilter(E,_,S,m)},function(S){C.createInstanceOnIframe(S).forEachNode(u,function($){return x.push($)},y)}),x.push(E);x.forEach(function(S){p(S)}),this.iframes&&this.handleOpenIframes(m,u,p,y),g()}},{key:"forEachNode",value:function(u,d,p){var y=this,g=arguments.length>3&&arguments[3]!==void 0?arguments[3]:function(){},C=this.getContexts(),v=C.length;v||g(),C.forEach(function(m){var x=function(){y.iterateThroughNodes(u,m,d,p,function(){--v<=0&&g()})};y.iframes?y.waitForIframes(m,x):x()})}}],[{key:"matches",value:function(u,d){var p=typeof d=="string"?[d]:d,y=u.matches||u.matchesSelector||u.msMatchesSelector||u.mozMatchesSelector||u.oMatchesSelector||u.webkitMatchesSelector;if(y){var g=!1;return p.every(function(C){return y.call(u,C)?(g=!0,!1):!0}),g}else return!1}}]),c}(),l=function(){function c(f){r(this,c),this.ctx=f,this.ie=!1;var u=window.navigator.userAgent;(u.indexOf("MSIE")>-1||u.indexOf("Trident")>-1)&&(this.ie=!0)}return o(c,[{key:"log",value:function(u){var d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"debug",p=this.opt.log;this.opt.debug&&(typeof p>"u"?"undefined":n(p))==="object"&&typeof p[d]=="function"&&p[d]("mark.js: "+u)}},{key:"escapeStr",value:function(u){return u.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}},{key:"createRegExp",value:function(u){return this.opt.wildcards!=="disabled"&&(u=this.setupWildcardsRegExp(u)),u=this.escapeStr(u),Object.keys(this.opt.synonyms).length&&(u=this.createSynonymsRegExp(u)),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(u=this.setupIgnoreJoinersRegExp(u)),this.opt.diacritics&&(u=this.createDiacriticsRegExp(u)),u=this.createMergedBlanksRegExp(u),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(u=this.createJoinersRegExp(u)),this.opt.wildcards!=="disabled"&&(u=this.createWildcardsRegExp(u)),u=this.createAccuracyRegExp(u),u}},{key:"createSynonymsRegExp",value:function(u){var d=this.opt.synonyms,p=this.opt.caseSensitive?"":"i",y=this.opt.ignoreJoiners||this.opt.ignorePunctuation.length?"\0":"";for(var g in d)if(d.hasOwnProperty(g)){var C=d[g],v=this.opt.wildcards!=="disabled"?this.setupWildcardsRegExp(g):this.escapeStr(g),m=this.opt.wildcards!=="disabled"?this.setupWildcardsRegExp(C):this.escapeStr(C);v!==""&&m!==""&&(u=u.replace(new RegExp("("+this.escapeStr(v)+"|"+this.escapeStr(m)+")","gm"+p),y+("("+this.processSynomyms(v)+"|")+(this.processSynomyms(m)+")")+y))}return u}},{key:"processSynomyms",value:function(u){return(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(u=this.setupIgnoreJoinersRegExp(u)),u}},{key:"setupWildcardsRegExp",value:function(u){return u=u.replace(/(?:\\)*\?/g,function(d){return d.charAt(0)==="\\"?"?":""}),u.replace(/(?:\\)*\*/g,function(d){return d.charAt(0)==="\\"?"*":""})}},{key:"createWildcardsRegExp",value:function(u){var d=this.opt.wildcards==="withSpaces";return u.replace(/\u0001/g,d?"[\\S\\s]?":"\\S?").replace(/\u0002/g,d?"[\\S\\s]*?":"\\S*")}},{key:"setupIgnoreJoinersRegExp",value:function(u){return u.replace(/[^(|)\\]/g,function(d,p,y){var g=y.charAt(p+1);return/[(|)\\]/.test(g)||g===""?d:d+"\0"})}},{key:"createJoinersRegExp",value:function(u){var d=[],p=this.opt.ignorePunctuation;return Array.isArray(p)&&p.length&&d.push(this.escapeStr(p.join(""))),this.opt.ignoreJoiners&&d.push("\\u00ad\\u200b\\u200c\\u200d"),d.length?u.split(/\u0000+/).join("["+d.join("")+"]*"):u}},{key:"createDiacriticsRegExp",value:function(u){var d=this.opt.caseSensitive?"":"i",p=this.opt.caseSensitive?["aàáảãạăằắẳẵặâầấẩẫậäåāą","AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćč","CÇĆČ","dđď","DĐĎ","eèéẻẽẹêềếểễệëěēę","EÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïī","IÌÍỈĨỊÎÏĪ","lł","LŁ","nñňń","NÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøō","OÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rř","RŘ","sšśșş","SŠŚȘŞ","tťțţ","TŤȚŢ","uùúủũụưừứửữựûüůū","UÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿ","YÝỲỶỸỴŸ","zžżź","ZŽŻŹ"]:["aàáảãạăằắẳẵặâầấẩẫậäåāąAÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćčCÇĆČ","dđďDĐĎ","eèéẻẽẹêềếểễệëěēęEÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïīIÌÍỈĨỊÎÏĪ","lłLŁ","nñňńNÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøōOÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rřRŘ","sšśșşSŠŚȘŞ","tťțţTŤȚŢ","uùúủũụưừứửữựûüůūUÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿYÝỲỶỸỴŸ","zžżźZŽŻŹ"],y=[];return u.split("").forEach(function(g){p.every(function(C){if(C.indexOf(g)!==-1){if(y.indexOf(C)>-1)return!1;u=u.replace(new RegExp("["+C+"]","gm"+d),"["+C+"]"),y.push(C)}return!0})}),u}},{key:"createMergedBlanksRegExp",value:function(u){return u.replace(/[\s]+/gmi,"[\\s]+")}},{key:"createAccuracyRegExp",value:function(u){var d=this,p="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~¡¿",y=this.opt.accuracy,g=typeof y=="string"?y:y.value,C=typeof y=="string"?[]:y.limiters,v="";switch(C.forEach(function(m){v+="|"+d.escapeStr(m)}),g){case"partially":default:return"()("+u+")";case"complementary":return v="\\s"+(v||this.escapeStr(p)),"()([^"+v+"]*"+u+"[^"+v+"]*)";case"exactly":return"(^|\\s"+v+")("+u+")(?=$|\\s"+v+")"}}},{key:"getSeparatedKeywords",value:function(u){var d=this,p=[];return u.forEach(function(y){d.opt.separateWordSearch?y.split(" ").forEach(function(g){g.trim()&&p.indexOf(g)===-1&&p.push(g)}):y.trim()&&p.indexOf(y)===-1&&p.push(y)}),{keywords:p.sort(function(y,g){return g.length-y.length}),length:p.length}}},{key:"isNumeric",value:function(u){return Number(parseFloat(u))==u}},{key:"checkRanges",value:function(u){var d=this;if(!Array.isArray(u)||Object.prototype.toString.call(u[0])!=="[object Object]")return this.log("markRanges() will only accept an array of objects"),this.opt.noMatch(u),[];var p=[],y=0;return u.sort(function(g,C){return g.start-C.start}).forEach(function(g){var C=d.callNoMatchOnInvalidRanges(g,y),v=C.start,m=C.end,x=C.valid;x&&(g.start=v,g.length=m-v,p.push(g),y=m)}),p}},{key:"callNoMatchOnInvalidRanges",value:function(u,d){var p=void 0,y=void 0,g=!1;return u&&typeof u.start<"u"?(p=parseInt(u.start,10),y=p+parseInt(u.length,10),this.isNumeric(u.start)&&this.isNumeric(u.length)&&y-d>0&&y-p>0?g=!0:(this.log("Ignoring invalid or overlapping range: "+(""+JSON.stringify(u))),this.opt.noMatch(u))):(this.log("Ignoring invalid range: "+JSON.stringify(u)),this.opt.noMatch(u)),{start:p,end:y,valid:g}}},{key:"checkWhitespaceRanges",value:function(u,d,p){var y=void 0,g=!0,C=p.length,v=d-C,m=parseInt(u.start,10)-v;return m=m>C?C:m,y=m+parseInt(u.length,10),y>C&&(y=C,this.log("End range automatically set to the max value of "+C)),m<0||y-m<0||m>C||y>C?(g=!1,this.log("Invalid range: "+JSON.stringify(u)),this.opt.noMatch(u)):p.substring(m,y).replace(/\s+/g,"")===""&&(g=!1,this.log("Skipping whitespace only range: "+JSON.stringify(u)),this.opt.noMatch(u)),{start:m,end:y,valid:g}}},{key:"getTextNodes",value:function(u){var d=this,p="",y=[];this.iterator.forEachNode(NodeFilter.SHOW_TEXT,function(g){y.push({start:p.length,end:(p+=g.textContent).length,node:g})},function(g){return d.matchesExclude(g.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},function(){u({value:p,nodes:y})})}},{key:"matchesExclude",value:function(u){return a.matches(u,this.opt.exclude.concat(["script","style","title","head","html"]))}},{key:"wrapRangeInTextNode",value:function(u,d,p){var y=this.opt.element?this.opt.element:"mark",g=u.splitText(d),C=g.splitText(p-d),v=document.createElement(y);return v.setAttribute("data-markjs","true"),this.opt.className&&v.setAttribute("class",this.opt.className),v.textContent=g.textContent,g.parentNode.replaceChild(v,g),C}},{key:"wrapRangeInMappedTextNode",value:function(u,d,p,y,g){var C=this;u.nodes.every(function(v,m){var x=u.nodes[m+1];if(typeof x>"u"||x.start>d){if(!y(v.node))return!1;var E=d-v.start,_=(p>v.end?v.end:p)-v.start,b=u.value.substr(0,v.start),S=u.value.substr(_+v.start);if(v.node=C.wrapRangeInTextNode(v.node,E,_),u.value=b+S,u.nodes.forEach(function($,k){k>=m&&(u.nodes[k].start>0&&k!==m&&(u.nodes[k].start-=_),u.nodes[k].end-=_)}),p-=_,g(v.node.previousSibling,v.start),p>v.end)d=v.end;else return!1}return!0})}},{key:"wrapMatches",value:function(u,d,p,y,g){var C=this,v=d===0?0:d+1;this.getTextNodes(function(m){m.nodes.forEach(function(x){x=x.node;for(var E=void 0;(E=u.exec(x.textContent))!==null&&E[v]!=="";)if(p(E[v],x)){var _=E.index;if(v!==0)for(var b=1;b{const o=setTimeout(()=>r(e),t||500);return()=>{clearTimeout(o)}},[e,t]),n}function vu(e,t){const[n,r]=h.useState();h.useEffect(()=>{const i=s6(e);r(typeof i>"u"||i===null?typeof t=="function"?t():t:i)},[t,e]);const o=h.useCallback(i=>{r(a=>{let l;typeof i=="function"?l=i(a):l=i;try{localStorage.setItem(e,JSON.stringify(l))}catch{}return l})},[e]);return[n,o]}function s6(e){try{const t=localStorage.getItem(e);return typeof t=="string"?JSON.parse(t):void 0}catch{return}}var c6="vocs_Kbd";function $g(e){return w.jsx("kbd",{...e,className:I(e.className,c6)})}var u6="vocs_KeyboardShortcut_kbdGroup",f6="vocs_KeyboardShortcut";function eo(e){const{description:t,keys:n}=e;return w.jsxs("span",{className:f6,children:[t,w.jsx("span",{className:u6,children:n.map(r=>w.jsx($g,{children:r},r))})]})}var d6="vocs_SearchDialog_content",hp="vocs_SearchDialog_excerpt",h6="vocs_SearchDialog_overlay",p6="vocs_SearchDialog_result",pp="vocs_SearchDialog_resultIcon",v6="vocs_SearchDialog_resultSelected",m6="vocs_SearchDialog_results",g6="vocs_SearchDialog",y6="vocs_SearchDialog_searchBox",w6="vocs_SearchDialog_searchInput",Ca="vocs_SearchDialog_searchInputIcon",x6="vocs_SearchDialog_searchInputIconDesktop",C6="vocs_SearchDialog_searchInputIconMobile",E6="vocs_SearchDialog_searchShortcuts",vp="vocs_SearchDialog_title",b6="vocs_SearchDialog_titleIcon",_6="vocs_SearchDialog_titles";function Tg(e){const t=jf(),n=h.useRef(null),r=h.useRef(null),[o,i]=vu("filterText",""),a=l6(o,200),l=_g(),[s,c]=h.useState(-1),[f,u]=h.useState(!1),[d,p]=vu("showDetailView",!0),y=h.useMemo(()=>l?a?(c(0),l.search(a).slice(0,16)):(c(-1),[]):[],[l,a]),g=y.length,C=y[s],v=h.useCallback(()=>{var _,b,S;if(!r.current)return;const m=new Set;for(const $ of y)for(const k in $.match)m.add(k);const x=new a6(r.current);x.unmark({done(){x==null||x.markRegExp(S6(m))}});const E=r.current.querySelectorAll(`.${hp}`);for(const $ of E)(_=$.querySelector('mark[data-markjs="true"]'))==null||_.scrollIntoView({block:"center"});(S=(b=r.current)==null?void 0:b.firstElementChild)==null||S.scrollIntoView({block:"start"})},[y]);return h.useEffect(()=>{if(!e.open)return;function m(x){var E;switch(x.key){case"ArrowDown":{x.preventDefault(),c(_=>{var $;let b=_+1;b>=g&&(b=0);const S=($=r.current)==null?void 0:$.children[b];return S==null||S.scrollIntoView({block:"nearest"}),b}),u(!0);break}case"ArrowUp":{x.preventDefault(),c(_=>{var $;let b=_-1;b<0&&(b=g-1);const S=($=r.current)==null?void 0:$.children[b];return S==null||S.scrollIntoView({block:"nearest"}),b}),u(!0);break}case"Backspace":{if(!x.metaKey)return;x.preventDefault(),i(""),(E=n.current)==null||E.focus();break}case"Enter":{if(x.target instanceof HTMLButtonElement&&x.target.type!=="submit"||!C)return;x.preventDefault(),t(C.href),e.onClose();break}}}return window.addEventListener("keydown",m),()=>{window.removeEventListener("keydown",m)}},[t,g,i,C,e.open,e.onClose]),h.useEffect(()=>{a!==""&&r.current&&v()},[v,a]),w.jsxs(M4,{children:[w.jsx(j4,{className:h6}),w.jsxs(D4,{onOpenAutoFocus:m=>{n.current&&(m.preventDefault(),n.current.focus()),v()},onCloseAutoFocus:()=>{c(0)},className:g6,"aria-describedby":void 0,children:[w.jsx(F4,{className:G0,children:"Search"}),w.jsxs("form",{className:y6,children:[w.jsx("button",{"aria-label":"Close search dialog",type:"button",onClick:()=>e.onClose(),className:C6,children:w.jsx(t5,{className:Ca,height:20,width:20})}),w.jsx(o6,{htmlFor:"search-input",children:w.jsx(zf,{"aria-label":"Search",className:I(Ca,x6),height:20,width:20})}),w.jsx("input",{ref:n,tabIndex:0,className:w6,id:"search-input",onChange:m=>i(m.target.value),placeholder:"Search",type:"search",value:o}),w.jsx("button",{"aria-label":"Toggle detail view",type:"button",onClick:()=>p(m=>!m),children:w.jsx(c5,{className:Ca,height:20,width:20})}),w.jsx("button",{"aria-label":"Reset search",type:"button",className:Ca,onClick:()=>{var m;i(""),(m=n.current)==null||m.focus()},children:"⌫"})]}),w.jsxs("ul",{className:m6,role:y.length?"listbox":void 0,onMouseMove:()=>u(!1),ref:r,children:[a&&y.length===0&&w.jsxs("li",{children:['No results for "',w.jsx("span",{children:a}),'"']}),y.map((m,x)=>{var E;return w.jsx("li",{role:"option",className:I(p6,x===s&&v6),"aria-selected":x===s,"aria-label":[...m.titles.filter(_=>!!_),m.title].join(" > "),children:w.jsxs(O0,{to:m.href,onClick:_=>{_.metaKey||e.onClose()},onMouseEnter:()=>!f&&c(x),onFocus:()=>c(x),children:[w.jsxs("div",{className:_6,children:[m.isPage?w.jsx(l5,{className:pp}):w.jsx("span",{className:pp,children:"#"}),m.titles.filter(_=>!!_).map(_=>w.jsxs("span",{className:vp,children:[w.jsx("span",{dangerouslySetInnerHTML:{__html:_}}),w.jsx(r5,{className:b6})]},_)),w.jsx("span",{className:vp,children:w.jsx("span",{dangerouslySetInnerHTML:{__html:m.title}})})]}),d&&((E=m.text)==null?void 0:E.trim())&&w.jsx("div",{className:hp,children:w.jsx(H0,{className:d6,children:w.jsx("div",{dangerouslySetInnerHTML:{__html:m.html}})})})]})},m.id)})]}),w.jsxs("div",{className:E6,children:[w.jsx(eo,{description:"Navigate",keys:["↑","↓"]}),w.jsx(eo,{description:"Select",keys:["enter"]}),w.jsx(eo,{description:"Close",keys:["esc"]}),w.jsx(eo,{description:"Reset",keys:["⌘","⌫"]})]})]})]})}function S6(e){return new RegExp([...e].sort((t,n)=>n.length-t.length).map(t=>`(${t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")})`).join("|"),"gi")}function $6(){_g();const[e,t]=h.useState(!1);return h.useEffect(()=>{function n(r){const o=document.activeElement instanceof HTMLElement&&(["input","select","textarea"].includes(document.activeElement.tagName.toLowerCase())||document.activeElement.isContentEditable);r.key==="/"&&!e&&!o?(r.preventDefault(),t(!0)):r.metaKey===!0&&r.key==="k"&&(r.preventDefault(),t(i=>!i))}return window.addEventListener("keydown",n),()=>{window.removeEventListener("keydown",n)}},[e]),w.jsxs(mg,{open:e,onOpenChange:t,children:[w.jsx(gg,{asChild:!0,children:w.jsxs("button",{className:t6,type:"button",children:[w.jsx(zf,{style:{marginTop:2}}),"Search",w.jsx("div",{className:n6,children:w.jsx("div",{style:{background:"currentColor",transform:"rotate(45deg)",width:1.5,borderRadius:2,height:"100%"}})})]})}),w.jsx(Tg,{open:e,onClose:()=>t(!1)})]})}var kg="vocs_DesktopTopNav_button",T6="vocs_DesktopTopNav_content",k6="vocs_DesktopTopNav_curtain",mp="vocs_DesktopTopNav_divider",Xs="vocs_DesktopTopNav_group",Ea="vocs_DesktopTopNav_hideCompact",mu="vocs_DesktopTopNav_icon",vl="vocs_DesktopTopNav_item",R6="vocs_DesktopTopNav_logo",N6="vocs_DesktopTopNav_logoWrapper",P6="vocs_DesktopTopNav",gp="vocs_DesktopTopNav_section",A6="vocs_DesktopTopNav_withLogo",O6="vocs_Icon",gu="var(--vocs_Icon_size)";function st({className:e,label:t,icon:n,size:r,style:o}){return w.jsx("div",{"aria-label":t,className:I(O6,e),role:"img",style:{...o,...Gt({[gu]:r})},children:w.jsx(n,{height:r,width:r})})}var I6="vocs_Logo_logoDark",L6="vocs_Logo_logoLight",Js="vocs_Logo";function M6({className:e}){const{logoUrl:t}=ot();return t?w.jsx(w.Fragment,{children:typeof t=="string"?w.jsx("img",{alt:"Logo",className:I(e,Js),src:t}):w.jsxs(w.Fragment,{children:[w.jsx("img",{alt:"Logo",className:I(e,Js,I6),src:t.dark}),w.jsx("img",{alt:"Logo",className:I(e,Js,L6),src:t.light})]})}):null}var j6="vocs_NavLogo_logoImage",D6="vocs_NavLogo_title";function Wf(){const e=ot();return e.logoUrl?w.jsx(M6,{className:j6}):w.jsx("div",{className:D6,children:e.title})}const F6=h.createContext(void 0);function Vl(e){const t=h.useContext(F6);return e||t||"ltr"}function Hl(e){const t=e+"CollectionProvider",[n,r]=En(t),[o,i]=n(t,{collectionRef:{current:null},itemMap:new Map}),a=p=>{const{scope:y,children:g}=p,C=Q.useRef(null),v=Q.useRef(new Map).current;return Q.createElement(o,{scope:y,itemMap:v,collectionRef:C},g)},l=e+"CollectionSlot",s=Q.forwardRef((p,y)=>{const{scope:g,children:C}=p,v=i(l,g),m=Be(y,v.collectionRef);return Q.createElement(xo,{ref:m},C)}),c=e+"CollectionItemSlot",f="data-radix-collection-item",u=Q.forwardRef((p,y)=>{const{scope:g,children:C,...v}=p,m=Q.useRef(null),x=Be(y,m),E=i(c,g);return Q.useEffect(()=>(E.itemMap.set(m,{ref:m,...v}),()=>void E.itemMap.delete(m))),Q.createElement(xo,{[f]:"",ref:x},C)});function d(p){const y=i(e+"CollectionConsumer",p);return Q.useCallback(()=>{const C=y.collectionRef.current;if(!C)return[];const v=Array.from(C.querySelectorAll(`[${f}]`));return Array.from(y.itemMap.values()).sort((E,_)=>v.indexOf(E.ref.current)-v.indexOf(_.ref.current))},[y.collectionRef,y.itemMap])}return[{Provider:a,Slot:s,ItemSlot:u},d,r]}function z6(e){const t=h.useRef({value:e,previous:e});return h.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}const B6=h.forwardRef((e,t)=>h.createElement(ue.span,G({},e,{ref:t,style:{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal",...e.style}}))),U6=B6,Ui="NavigationMenu",[Kf,V6,H6]=Hl(Ui),[yu,W6,K6]=Hl(Ui),[Gf,Z9]=En(Ui,[H6,K6]),[G6,Nr]=Gf(Ui),[Y6,X9]=Gf(Ui),Q6=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,value:r,onValueChange:o,defaultValue:i,delayDuration:a=200,skipDelayDuration:l=300,orientation:s="horizontal",dir:c,...f}=e,[u,d]=h.useState(null),p=Be(t,k=>d(k)),y=Vl(c),g=h.useRef(0),C=h.useRef(0),v=h.useRef(0),[m,x]=h.useState(!0),[E="",_]=rr({prop:r,onChange:k=>{const P=k!=="",j=l>0;P?(window.clearTimeout(v.current),j&&x(!1)):(window.clearTimeout(v.current),v.current=window.setTimeout(()=>x(!0),l)),o==null||o(k)},defaultProp:i}),b=h.useCallback(()=>{window.clearTimeout(C.current),C.current=window.setTimeout(()=>_(""),150)},[_]),S=h.useCallback(k=>{window.clearTimeout(C.current),_(k)},[_]),$=h.useCallback(k=>{E===k?window.clearTimeout(C.current):g.current=window.setTimeout(()=>{window.clearTimeout(C.current),_(k)},a)},[E,_,a]);return h.useEffect(()=>()=>{window.clearTimeout(g.current),window.clearTimeout(C.current),window.clearTimeout(v.current)},[]),h.createElement(Z6,{scope:n,isRootMenu:!0,value:E,dir:y,orientation:s,rootNavigationMenu:u,onTriggerEnter:k=>{window.clearTimeout(g.current),m?$(k):S(k)},onTriggerLeave:()=>{window.clearTimeout(g.current),b()},onContentEnter:()=>window.clearTimeout(C.current),onContentLeave:b,onItemSelect:k=>{_(P=>P===k?"":k)},onItemDismiss:()=>_("")},h.createElement(ue.nav,G({"aria-label":"Main","data-orientation":s,dir:y},f,{ref:p})))}),Z6=e=>{const{scope:t,isRootMenu:n,rootNavigationMenu:r,dir:o,orientation:i,children:a,value:l,onItemSelect:s,onItemDismiss:c,onTriggerEnter:f,onTriggerLeave:u,onContentEnter:d,onContentLeave:p}=e,[y,g]=h.useState(null),[C,v]=h.useState(new Map),[m,x]=h.useState(null);return h.createElement(G6,{scope:t,isRootMenu:n,rootNavigationMenu:r,value:l,previousValue:z6(l),baseId:rn(),dir:o,orientation:i,viewport:y,onViewportChange:g,indicatorTrack:m,onIndicatorTrackChange:x,onTriggerEnter:at(f),onTriggerLeave:at(u),onContentEnter:at(d),onContentLeave:at(p),onItemSelect:at(s),onItemDismiss:at(c),onViewportContentChange:h.useCallback((E,_)=>{v(b=>(b.set(E,_),new Map(b)))},[]),onViewportContentRemove:h.useCallback(E=>{v(_=>_.has(E)?(_.delete(E),new Map(_)):_)},[])},h.createElement(Kf.Provider,{scope:t},h.createElement(Y6,{scope:t,items:C},a)))},X6="NavigationMenuList",J6=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,...r}=e,o=Nr(X6,n),i=h.createElement(ue.ul,G({"data-orientation":o.orientation},r,{ref:t}));return h.createElement(ue.div,{style:{position:"relative"},ref:o.onIndicatorTrackChange},h.createElement(Kf.Slot,{scope:n},o.isRootMenu?h.createElement(Ng,{asChild:!0},i):i))}),q6="NavigationMenuItem",[e7,Rg]=Gf(q6),t7=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,value:r,...o}=e,i=rn(),a=r||i||"LEGACY_REACT_AUTO_VALUE",l=h.useRef(null),s=h.useRef(null),c=h.useRef(null),f=h.useRef(()=>{}),u=h.useRef(!1),d=h.useCallback((y="start")=>{if(l.current){f.current();const g=wu(l.current);g.length&&Yf(y==="start"?g:g.reverse())}},[]),p=h.useCallback(()=>{if(l.current){const y=wu(l.current);y.length&&(f.current=c7(y))}},[]);return h.createElement(e7,{scope:n,value:a,triggerRef:s,contentRef:l,focusProxyRef:c,wasEscapeCloseRef:u,onEntryKeyDown:d,onFocusProxyEnter:d,onRootContentClose:p,onContentFocusOutside:p},h.createElement(ue.li,G({},o,{ref:t})))}),yp="NavigationMenuTrigger",n7=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,disabled:r,...o}=e,i=Nr(yp,e.__scopeNavigationMenu),a=Rg(yp,e.__scopeNavigationMenu),l=h.useRef(null),s=Be(l,a.triggerRef,t),c=Og(i.baseId,a.value),f=Ig(i.baseId,a.value),u=h.useRef(!1),d=h.useRef(!1),p=a.value===i.value;return h.createElement(h.Fragment,null,h.createElement(Kf.ItemSlot,{scope:n,value:a.value},h.createElement(Pg,{asChild:!0},h.createElement(ue.button,G({id:c,disabled:r,"data-disabled":r?"":void 0,"data-state":Ag(p),"aria-expanded":p,"aria-controls":f},o,{ref:s,onPointerEnter:ae(e.onPointerEnter,()=>{d.current=!1,a.wasEscapeCloseRef.current=!1}),onPointerMove:ae(e.onPointerMove,xu(()=>{r||d.current||a.wasEscapeCloseRef.current||u.current||(i.onTriggerEnter(a.value),u.current=!0)})),onPointerLeave:ae(e.onPointerLeave,xu(()=>{r||(i.onTriggerLeave(),u.current=!1)})),onClick:ae(e.onClick,()=>{i.onItemSelect(a.value),d.current=p}),onKeyDown:ae(e.onKeyDown,y=>{const C={horizontal:"ArrowDown",vertical:i.dir==="rtl"?"ArrowLeft":"ArrowRight"}[i.orientation];p&&y.key===C&&(a.onEntryKeyDown(),y.preventDefault())})})))),p&&h.createElement(h.Fragment,null,h.createElement(U6,{"aria-hidden":!0,tabIndex:0,ref:a.focusProxyRef,onFocus:y=>{const g=a.contentRef.current,C=y.relatedTarget,v=C===l.current,m=g==null?void 0:g.contains(C);(v||!m)&&a.onFocusProxyEnter(v?"start":"end")}}),i.viewport&&h.createElement("span",{"aria-owns":f})))}),wp="navigationMenu.linkSelect",r7=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,active:r,onSelect:o,...i}=e;return h.createElement(Pg,{asChild:!0},h.createElement(ue.a,G({"data-active":r?"":void 0,"aria-current":r?"page":void 0},i,{ref:t,onClick:ae(e.onClick,a=>{const l=a.target,s=new CustomEvent(wp,{bubbles:!0,cancelable:!0});if(l.addEventListener(wp,c=>o==null?void 0:o(c),{once:!0}),su(l,s),!s.defaultPrevented&&!a.metaKey){const c=new CustomEvent(za,{bubbles:!0,cancelable:!0});su(l,c)}},{checkForDefaultPrevented:!1})})))}),ml="NavigationMenuContent",o7=h.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Nr(ml,e.__scopeNavigationMenu),i=Rg(ml,e.__scopeNavigationMenu),a=Be(i.contentRef,t),l=i.value===o.value,s={value:i.value,triggerRef:i.triggerRef,focusProxyRef:i.focusProxyRef,wasEscapeCloseRef:i.wasEscapeCloseRef,onContentFocusOutside:i.onContentFocusOutside,onRootContentClose:i.onRootContentClose,...r};return o.viewport?h.createElement(i7,G({forceMount:n},s,{ref:a})):h.createElement(bn,{present:n||l},h.createElement(a7,G({"data-state":Ag(l)},s,{ref:a,onPointerEnter:ae(e.onPointerEnter,o.onContentEnter),onPointerLeave:ae(e.onPointerLeave,xu(o.onContentLeave)),style:{pointerEvents:!l&&o.isRootMenu?"none":void 0,...s.style}})))}),i7=h.forwardRef((e,t)=>{const n=Nr(ml,e.__scopeNavigationMenu),{onViewportContentChange:r,onViewportContentRemove:o}=n;return gn(()=>{r(e.value,{ref:t,...e})},[e,t,r]),gn(()=>()=>o(e.value),[e.value,o]),null}),za="navigationMenu.rootContentDismiss",a7=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,value:r,triggerRef:o,focusProxyRef:i,wasEscapeCloseRef:a,onRootContentClose:l,onContentFocusOutside:s,...c}=e,f=Nr(ml,n),u=h.useRef(null),d=Be(u,t),p=Og(f.baseId,r),y=Ig(f.baseId,r),g=V6(n),C=h.useRef(null),{onItemDismiss:v}=f;h.useEffect(()=>{const x=u.current;if(f.isRootMenu&&x){const E=()=>{var _;v(),l(),x.contains(document.activeElement)&&((_=o.current)===null||_===void 0||_.focus())};return x.addEventListener(za,E),()=>x.removeEventListener(za,E)}},[f.isRootMenu,e.value,o,v,l]);const m=h.useMemo(()=>{const E=g().map(P=>P.value);f.dir==="rtl"&&E.reverse();const _=E.indexOf(f.value),b=E.indexOf(f.previousValue),S=r===f.value,$=b===E.indexOf(r);if(!S&&!$)return C.current;const k=(()=>{if(_!==b){if(S&&b!==-1)return _>b?"from-end":"from-start";if($&&_!==-1)return _>b?"to-start":"to-end"}return null})();return C.current=k,k},[f.previousValue,f.value,f.dir,g,r]);return h.createElement(Ng,{asChild:!0},h.createElement(Bf,G({id:y,"aria-labelledby":p,"data-motion":m,"data-orientation":f.orientation},c,{ref:d,onDismiss:()=>{var x;const E=new Event(za,{bubbles:!0,cancelable:!0});(x=u.current)===null||x===void 0||x.dispatchEvent(E)},onFocusOutside:ae(e.onFocusOutside,x=>{var E;s();const _=x.target;(E=f.rootNavigationMenu)!==null&&E!==void 0&&E.contains(_)&&x.preventDefault()}),onPointerDownOutside:ae(e.onPointerDownOutside,x=>{var E;const _=x.target,b=g().some($=>{var k;return(k=$.ref.current)===null||k===void 0?void 0:k.contains(_)}),S=f.isRootMenu&&((E=f.viewport)===null||E===void 0?void 0:E.contains(_));(b||S||!f.isRootMenu)&&x.preventDefault()}),onKeyDown:ae(e.onKeyDown,x=>{const E=x.altKey||x.ctrlKey||x.metaKey;if(x.key==="Tab"&&!E){const S=wu(x.currentTarget),$=document.activeElement,k=S.findIndex(L=>L===$),j=x.shiftKey?S.slice(0,k).reverse():S.slice(k+1,S.length);if(Yf(j))x.preventDefault();else{var b;(b=i.current)===null||b===void 0||b.focus()}}}),onEscapeKeyDown:ae(e.onEscapeKeyDown,x=>{a.current=!0})})))}),l7="FocusGroup",Ng=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,...r}=e,o=Nr(l7,n);return h.createElement(yu.Provider,{scope:n},h.createElement(yu.Slot,{scope:n},h.createElement(ue.div,G({dir:o.dir},r,{ref:t}))))}),xp=["ArrowRight","ArrowLeft","ArrowUp","ArrowDown"],s7="FocusGroupItem",Pg=h.forwardRef((e,t)=>{const{__scopeNavigationMenu:n,...r}=e,o=W6(n),i=Nr(s7,n);return h.createElement(yu.ItemSlot,{scope:n},h.createElement(ue.button,G({},r,{ref:t,onKeyDown:ae(e.onKeyDown,a=>{if(["Home","End",...xp].includes(a.key)){let s=o().map(u=>u.ref.current);if([i.dir==="rtl"?"ArrowRight":"ArrowLeft","ArrowUp","End"].includes(a.key)&&s.reverse(),xp.includes(a.key)){const u=s.indexOf(a.currentTarget);s=s.slice(u+1)}setTimeout(()=>Yf(s)),a.preventDefault()}})})))});function wu(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Yf(e){const t=document.activeElement;return e.some(n=>n===t?!0:(n.focus(),document.activeElement!==t))}function c7(e){return e.forEach(t=>{t.dataset.tabindex=t.getAttribute("tabindex")||"",t.setAttribute("tabindex","-1")}),()=>{e.forEach(t=>{const n=t.dataset.tabindex;t.setAttribute("tabindex",n)})}}function Ag(e){return e?"open":"closed"}function Og(e,t){return`${e}-trigger-${t}`}function Ig(e,t){return`${e}-content-${t}`}function xu(e){return t=>t.pointerType==="mouse"?e(t):void 0}const u7=Q6,f7=J6,d7=t7,h7=n7,p7=r7,v7=o7;var m7="var(--vocs_NavigationMenu_chevronDownIcon)",g7="vocs_NavigationMenu_content",y7="vocs_NavigationMenu_item",w7="vocs_NavigationMenu_link",x7="vocs_NavigationMenu_list",C7="vocs_NavigationMenu",E7="vocs_NavigationMenu_trigger vocs_NavigationMenu_link";const Lg=e=>w.jsx(u7,{...e,className:I(e.className,C7)}),Mg=e=>w.jsx(f7,{...e,className:I(e.className,x7)}),Wl=({active:e,children:t,className:n,href:r})=>w.jsx(p7,{asChild:!0,children:w.jsx(nn,{"data-active":e,className:I(n,w7),href:r,variant:"styleless",children:t})}),jg=e=>w.jsx(d7,{...e,className:I(e.className,y7)}),Dg=({active:e,className:t,...n})=>{const{basePath:r}=ot(),o=r;return w.jsx(h7,{...n,"data-active":e,className:I(t,E7),style:Gt({[m7]:`url(${o}/.vocs/icons/chevron-down.svg)`})})},Fg=e=>w.jsx(v7,{...e,className:I(e.className,g7)});function zg(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 127.14 96.36",children:[w.jsx("title",{children:"Discord"}),w.jsx("g",{id:"图层_2","data-name":"图层 2",children:w.jsx("g",{id:"Discord_Logos","data-name":"Discord Logos",children:w.jsx("g",{id:"Discord_Logo_-_Large_-_White","data-name":"Discord Logo - Large - White",children:w.jsx("path",{d:"M107.7,8.07A105.15,105.15,0,0,0,81.47,0a72.06,72.06,0,0,0-3.36,6.83A97.68,97.68,0,0,0,49,6.83,72.37,72.37,0,0,0,45.64,0,105.89,105.89,0,0,0,19.39,8.09C2.79,32.65-1.71,56.6.54,80.21h0A105.73,105.73,0,0,0,32.71,96.36,77.7,77.7,0,0,0,39.6,85.25a68.42,68.42,0,0,1-10.85-5.18c.91-.66,1.8-1.34,2.66-2a75.57,75.57,0,0,0,64.32,0c.87.71,1.76,1.39,2.66,2a68.68,68.68,0,0,1-10.87,5.19,77,77,0,0,0,6.89,11.1A105.25,105.25,0,0,0,126.6,80.22h0C129.24,52.84,122.09,29.11,107.7,8.07ZM42.45,65.69C36.18,65.69,31,60,31,53s5-12.74,11.43-12.74S54,46,53.89,53,48.84,65.69,42.45,65.69Zm42.24,0C78.41,65.69,73.25,60,73.25,53s5-12.74,11.44-12.74S96.23,46,96.12,53,91.08,65.69,84.69,65.69Z",fill:"currentColor"})})})})]})}function Bg(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 98 96",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"GitHub"}),w.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z",fill:"currentColor"})]})}function b7(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 78 82",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Moon"}),w.jsx("path",{d:"M62.8455 45.9668C63.6268 45.9668 64.2127 45.3809 64.3104 44.5508C65.4334 34.3457 66.0682 33.9551 76.4197 32.3438C77.3963 32.1973 77.9334 31.7578 77.9334 30.8789C77.9334 30.0977 77.3963 29.5605 76.6151 29.4629C66.1658 27.4609 65.4334 27.4609 64.3104 17.2559C64.2127 16.377 63.6268 15.8398 62.8455 15.8398C62.0154 15.8398 61.4783 16.377 61.3807 17.207C60.1111 27.6074 59.6229 28.0957 49.0272 29.4629C48.2947 29.5117 47.7088 30.0977 47.7088 30.8789C47.7088 31.709 48.2947 32.1973 49.0272 32.3438C59.6229 34.3457 60.0623 34.4434 61.3807 44.6484C61.4783 45.3809 62.0154 45.9668 62.8455 45.9668ZM44.535 19.5508C45.0233 19.5508 45.3162 19.2578 45.4139 18.7695C46.6834 12.4707 46.5369 12.373 53.1287 11.0547C53.5682 10.957 53.91 10.7129 53.91 10.1758C53.91 9.63868 53.5682 9.39448 53.1287 9.29688C46.5369 7.97848 46.6834 7.88089 45.4139 1.58199C45.3162 1.09379 45.0233 0.800781 44.535 0.800781C43.9979 0.800781 43.7049 1.09379 43.6072 1.58199C42.3377 7.88089 42.4842 7.97848 35.9412 9.29688C35.4529 9.39448 35.1111 9.63868 35.1111 10.1758C35.1111 10.7129 35.4529 10.957 35.9412 11.0547C42.4842 12.373 42.3865 12.4707 43.6072 18.7695C43.7049 19.2578 43.9979 19.5508 44.535 19.5508Z",fill:"currentColor"}),w.jsx("path",{d:"M34.3298 81.2696C48.49 81.2696 59.9157 74.043 65.0915 61.7872C65.8239 59.9806 65.5798 58.6134 64.7497 57.7833C64.0173 57.0509 62.7478 56.9044 61.3318 57.4903C58.4509 58.6134 54.9353 59.2481 50.6384 59.2481C33.695 59.2481 22.7575 48.6036 22.7575 32.2462C22.7575 27.4122 23.6853 22.6759 24.7595 20.5763C25.5407 18.9161 25.4919 17.5001 24.8083 16.67C24.0271 15.7423 22.6599 15.4005 20.7068 16.1329C8.64624 20.7716 0.345459 33.4181 0.345459 47.8712C0.345459 66.8165 14.5056 81.2696 34.3298 81.2696ZM34.4275 74.5801C18.4607 74.5801 7.03494 62.9591 7.03494 47.3341C7.03494 38.2521 10.9411 30.0489 17.6306 24.629C16.8005 27.0704 16.361 30.6837 16.361 34.1505C16.361 52.8517 29.5446 65.6935 48.8806 65.6935C52.0544 65.6935 54.9841 65.3517 56.4001 64.9122C51.615 70.918 43.4607 74.5801 34.4275 74.5801Z",fill:"currentColor"})]})}function _7(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 84 84",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Sun"}),w.jsx("path",{d:"M41.8675 15.5254C43.9183 15.5254 45.6273 13.7676 45.6273 11.7168V3.80658C45.6273 1.75588 43.9183 0.046875 41.8675 0.046875C39.7679 0.046875 38.0589 1.75588 38.0589 3.80658V11.7168C38.0589 13.7676 39.7679 15.5254 41.8675 15.5254ZM60.3246 23.2402C61.7895 24.7051 64.2309 24.7539 65.7446 23.2402L71.3598 17.6738C72.7758 16.209 72.7758 13.7188 71.3598 12.2539C69.8949 10.7891 67.4535 10.7891 65.9887 12.2539L60.3246 17.918C58.9086 19.3828 58.9086 21.7754 60.3246 23.2402ZM67.9906 41.7461C67.9906 43.7969 69.7485 45.5547 71.7992 45.5547H79.6117C81.7113 45.5547 83.4202 43.7969 83.4202 41.7461C83.4202 39.6953 81.7113 37.9375 79.6117 37.9375H71.7992C69.7485 37.9375 67.9906 39.6953 67.9906 41.7461ZM60.3246 60.3008C58.9086 61.7656 58.9086 64.1582 60.3246 65.623L65.9887 71.2871C67.4535 72.7519 69.8949 72.7031 71.3598 71.2383C72.7758 69.7734 72.7758 67.332 71.3598 65.8672L65.6957 60.3008C64.2309 58.8359 61.7895 58.8359 60.3246 60.3008ZM41.8675 67.9668C39.7679 67.9668 38.0589 69.7246 38.0589 71.7754V79.6855C38.0589 81.7363 39.7679 83.4453 41.8675 83.4453C43.9183 83.4453 45.6273 81.7363 45.6273 79.6855V71.7754C45.6273 69.7246 43.9183 67.9668 41.8675 67.9668ZM23.3617 60.3008C21.8969 58.8359 19.4067 58.8359 17.9418 60.3008L12.3754 65.8184C10.9106 67.2832 10.9106 69.7246 12.3266 71.1894C13.7914 72.6543 16.2328 72.7031 17.6977 71.2383L23.3129 65.623C24.7778 64.1582 24.7778 61.7656 23.3617 60.3008ZM15.6957 41.7461C15.6957 39.6953 13.9867 37.9375 11.8871 37.9375H4.07455C1.97497 37.9375 0.265991 39.6953 0.265991 41.7461C0.265991 43.7969 1.97497 45.5547 4.07455 45.5547H11.8871C13.9867 45.5547 15.6957 43.7969 15.6957 41.7461ZM23.3129 23.2402C24.7778 21.8242 24.7778 19.334 23.3617 17.918L17.7465 12.2539C16.3305 10.8379 13.8403 10.7891 12.4242 12.2539C10.9594 13.7188 10.9594 16.209 12.3754 17.625L17.9418 23.2402C19.4067 24.7051 21.8481 24.7051 23.3129 23.2402Z",fill:"currentColor"}),w.jsx("path",{d:"M41.8675 61.668C52.7073 61.668 61.7405 52.6836 61.7405 41.7461C61.7405 30.8086 52.7073 21.8242 41.8675 21.8242C30.9788 21.8242 21.9456 30.8086 21.9456 41.7461C21.9456 52.6836 30.9788 61.668 41.8675 61.668ZM41.8675 55.0273C34.5921 55.0273 28.5862 48.9727 28.5862 41.7461C28.5862 34.5195 34.5921 28.4648 41.8675 28.4648C49.0941 28.4648 55.0999 34.5195 55.0999 41.7461C55.0999 48.9727 49.0941 55.0273 41.8675 55.0273Z",fill:"currentColor"})]})}function Ug(){return w.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"100%",height:"100%",viewBox:"0 0 50 50",children:[w.jsx("title",{children:"Telegram"}),w.jsx("path",{d:"M25 2c12.703 0 23 10.297 23 23S37.703 48 25 48 2 37.703 2 25 12.297 2 25 2zm7.934 32.375c.423-1.298 2.405-14.234 2.65-16.783.074-.772-.17-1.285-.648-1.514-.578-.278-1.434-.139-2.427.219-1.362.491-18.774 7.884-19.78 8.312-.954.405-1.856.847-1.856 1.487 0 .45.267.703 1.003.966.766.273 2.695.858 3.834 1.172 1.097.303 2.346.04 3.046-.395.742-.461 9.305-6.191 9.92-6.693.614-.502 1.104.141.602.644-.502.502-6.38 6.207-7.155 6.997-.941.959-.273 1.953.358 2.351.721.454 5.906 3.932 6.687 4.49.781.558 1.573.811 2.298.811.725 0 1.107-.955 1.468-2.064z",fill:"currentColor"})]})}function Vg(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 1200 1227",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"X"}),w.jsx("path",{d:"M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z",fill:"currentColor"})]})}Cu.Curtain=S7;function Cu(){var r,o,i,a;const e=ot(),{showLogo:t,showSidebar:n}=Rr();return w.jsxs("div",{className:I(P6,t&&!n&&A6),children:[w.jsx($6,{}),t&&w.jsx("div",{className:N6,children:w.jsx("div",{className:R6,children:w.jsx(Yn,{to:"/",style:{alignItems:"center",display:"flex",height:"56px",marginTop:"4px"},children:w.jsx(Wf,{})})})}),w.jsx("div",{className:gp}),w.jsxs("div",{className:gp,children:[(((r=e.topNav)==null?void 0:r.length)||0)>0&&w.jsxs(w.Fragment,{children:[w.jsx("div",{className:Xs,children:w.jsx($7,{})}),w.jsx("div",{className:I(mp,Ea)})]}),e.socials&&((o=e.socials)==null?void 0:o.length)>0&&w.jsxs(w.Fragment,{children:[w.jsx("div",{className:I(Xs,Ea),style:{marginLeft:"-8px",marginRight:"-8px"},children:e.socials.map((l,s)=>w.jsx("div",{className:vl,children:w.jsx(P7,{...l})},s))}),!((i=e.theme)!=null&&i.colorScheme)&&w.jsx("div",{className:I(mp,Ea)})]}),!((a=e.theme)!=null&&a.colorScheme)&&w.jsx("div",{className:I(Xs,Ea),style:{marginLeft:"-8px",marginRight:"-8px"},children:w.jsx("div",{className:vl,children:w.jsx(k7,{})})})]})]})}function S7(){return w.jsx("div",{className:k6})}function $7(){const{topNav:e}=ot();if(!e)return null;const{pathname:t}=Re(),n=Bi({pathname:t,items:e});return w.jsx(Lg,{delayDuration:0,children:w.jsx(Mg,{children:e.map((r,o)=>r.link?w.jsx(Wl,{active:n.includes(r.id),className:vl,href:r.link,children:r.text},o):r.items?w.jsxs(jg,{className:vl,children:[w.jsx(Dg,{active:n.includes(r.id),children:r.text}),w.jsx(Fg,{className:T6,children:w.jsx(T7,{items:r.items})})]},o):null)})})}function T7({items:e}){const{pathname:t}=Re(),n=Bi({pathname:t,items:e});return w.jsx("ul",{children:e==null?void 0:e.map((r,o)=>w.jsx(Wl,{active:n.includes(r.id),href:r.link,children:r.text},o))})}function k7(){const{toggle:e}=v5();return w.jsxs("button",{className:kg,onClick:e,type:"button",children:[w.jsx(st,{className:I(mu,m5),size:"20px",label:"Light",icon:_7}),w.jsx(st,{className:I(mu,g5),size:"20px",label:"Dark",icon:b7,style:{marginTop:"-2px"}})]})}const R7={discord:zg,github:Bg,telegram:Ug,x:Vg},N7={discord:"23px",github:"20px",telegram:"21px",x:"18px"};function P7({icon:e,label:t,link:n}){return w.jsx("a",{className:kg,href:n,target:"_blank",rel:"noopener noreferrer",children:w.jsx(st,{className:mu,label:t,icon:R7[e],size:N7[e]||"20px"})})}const A7=({children:e})=>e,O7=({children:e})=>e;function I7(){const e=kr(),t=ot();return h.useMemo(()=>{const{pattern:n="",text:r="Edit page"}=t.editLink??{};let o="";return typeof n=="function"?o="":e.filePath&&(o=n.replace(/:path/g,e.filePath)),{url:o,text:r}},[t.editLink,e.filePath])}function Hg(){const[e,t]=h.useState(!1);return h.useEffect(()=>{t(!0)},[]),e}var L7="vocs_Footer_container",M7="vocs_Footer_editLink",j7="vocs_Footer_lastUpdated",D7="vocs_Footer_navigation",Cp="vocs_Footer_navigationIcon",F7="vocs_Footer_navigationIcon_left",z7="vocs_Footer_navigationIcon_right",Ep="vocs_Footer_navigationItem",B7="vocs_Footer_navigationItem_left",U7="vocs_Footer_navigationItem_right",bp="vocs_Footer_navigationText",_p="vocs_Footer_navigationTextInner",V7="vocs_Footer";function H7(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 72 60",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Arrow Left"}),w.jsx("path",{d:"M0.325684 29.7461C0.325684 30.8203 0.813963 31.8457 1.69286 32.6758L26.8882 57.8223C27.7671 58.6524 28.7437 59.043 29.7691 59.043C31.9175 59.043 33.5777 57.4317 33.5777 55.2344C33.5777 54.209 33.2359 53.1836 32.5035 52.5L25.7652 45.5176L9.26126 30.6738L8.38236 32.7734L21.3706 33.7012H67.4644C69.7593 33.7012 71.3706 32.041 71.3706 29.7461C71.3706 27.4512 69.7593 25.791 67.4644 25.791H21.3706L8.38236 26.7188L9.26126 28.8672L25.7652 13.9746L32.5035 6.99221C33.2359 6.30861 33.5777 5.28322 33.5777 4.25782C33.5777 2.06052 31.9175 0.449219 29.7691 0.449219C28.7437 0.449219 27.7671 0.839814 26.8882 1.66991L1.69286 26.8164C0.813963 27.6465 0.325684 28.6719 0.325684 29.7461Z",fill:"currentColor"})]})}function W7(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 72 60",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Arrow Right"}),w.jsx("path",{d:"M71.3706 29.7461C71.3706 28.6719 70.8824 27.6465 70.0035 26.8164L44.8081 1.66991C43.9292 0.839814 42.9527 0.449219 41.9273 0.449219C39.7789 0.449219 38.1187 2.06052 38.1187 4.25782C38.1187 5.28322 38.4605 6.30861 39.1929 6.99221L45.9312 13.9746L62.4351 28.8672L63.314 26.7188L50.3257 25.791H4.23196C1.93706 25.791 0.325684 27.4512 0.325684 29.7461C0.325684 32.041 1.93706 33.7012 4.23196 33.7012H50.3257L63.314 32.7734L62.4351 30.6738L45.9312 45.5176L39.1929 52.5C38.4605 53.1836 38.1187 54.209 38.1187 55.2344C38.1187 57.4317 39.7789 59.043 41.9273 59.043C42.9527 59.043 43.9292 58.6524 44.8081 57.8223L70.0035 32.6758C70.8824 31.8457 71.3706 30.8203 71.3706 29.7461Z",fill:"currentColor"})]})}function K7(){const{layout:e}=Rr(),t=Hg(),n=kr(),r=h.useMemo(()=>n.lastUpdatedAt?new Date(n.lastUpdatedAt):void 0,[n.lastUpdatedAt]),o=h.useMemo(()=>r==null?void 0:r.toISOString(),[r]);return w.jsxs("footer",{className:V7,children:[e==="docs"&&w.jsxs(w.Fragment,{children:[w.jsxs("div",{className:L7,children:[w.jsx(G7,{}),t&&n.lastUpdatedAt&&w.jsxs("div",{className:j7,children:["Last updated:"," ",w.jsx("time",{dateTime:o,children:new Intl.DateTimeFormat(void 0,{dateStyle:"short",timeStyle:"short"}).format(r)})]})]}),w.jsx(Y7,{})]}),w.jsx(O7,{})]})}function G7(){const e=I7();return e.url?w.jsx("div",{children:w.jsxs(nn,{className:M7,href:e.url,children:[w.jsx(d5,{})," ",e.text]})}):null}function Y7(){const e=Hg(),t=Bl(),{pathname:n}=Re(),r=h.useMemo(()=>Wg(t.items||[]).filter(s=>s.link),[t]),o=h.useMemo(()=>r.findIndex(s=>s.link===n),[r,n]),[i,a]=h.useMemo(()=>o<0?[]:o===0?[null,r[o+1]]:o===r.length-1?[r[o-1],null]:[r[o-1],r[o+1]],[o,r]),l=jf();return h.useEffect(()=>{let s=o,c=!1;const f=d=>{if(d.code==="ShiftLeft"&&(c=!0),c){const p=r[s+1],y=r[s-1];d.code==="ArrowRight"&&(p!=null&&p.link)&&(l(p.link),s++),d.code==="ArrowLeft"&&(y!=null&&y.link)&&(l(y.link),s--)}},u=d=>{d.code==="ShiftLeft"&&(c=!1)};return window.addEventListener("keydown",f),window.addEventListener("keyup",u),()=>{window.removeEventListener("keydown",f),window.removeEventListener("keyup",u)}},[]),e?w.jsxs("div",{className:D7,children:[i?w.jsxs(nn,{className:I(Ep,B7),href:i.link,variant:"styleless",children:[w.jsxs("div",{className:bp,children:[w.jsx("div",{className:I(Cp,F7),style:Gt({[gu]:"0.75em"}),children:w.jsx(st,{label:"Previous",icon:H7})}),w.jsx("div",{className:_p,children:i.text})]}),w.jsx(eo,{description:"Previous",keys:["shift","←"]})]}):w.jsx("div",{}),a?w.jsxs(nn,{className:I(Ep,U7),href:a.link,variant:"styleless",children:[w.jsxs("div",{className:bp,children:[w.jsx("div",{className:_p,style:{textAlign:"right"},children:a.text}),w.jsx("div",{className:I(Cp,z7),style:Gt({[gu]:"0.75em"}),children:w.jsx(st,{label:"Next",icon:W7})})]}),w.jsx(eo,{description:"Next",keys:["shift","→"]})]}):w.jsx("div",{})]}):null}function Wg(e){const t=[];for(const n of e){if(n.items){t.push(...Wg(n.items));continue}t.push(n)}return t}const Kg="Collapsible",[Q7,Gg]=En(Kg),[Z7,Qf]=Q7(Kg),X7=h.forwardRef((e,t)=>{const{__scopeCollapsible:n,open:r,defaultOpen:o,disabled:i,onOpenChange:a,...l}=e,[s=!1,c]=rr({prop:r,defaultProp:o,onChange:a});return h.createElement(Z7,{scope:n,disabled:i,contentId:rn(),open:s,onOpenToggle:h.useCallback(()=>c(f=>!f),[c])},h.createElement(ue.div,G({"data-state":Zf(s),"data-disabled":i?"":void 0},l,{ref:t})))}),J7="CollapsibleTrigger",q7=h.forwardRef((e,t)=>{const{__scopeCollapsible:n,...r}=e,o=Qf(J7,n);return h.createElement(ue.button,G({type:"button","aria-controls":o.contentId,"aria-expanded":o.open||!1,"data-state":Zf(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled},r,{ref:t,onClick:ae(e.onClick,o.onOpenToggle)}))}),Yg="CollapsibleContent",e8=h.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Qf(Yg,e.__scopeCollapsible);return h.createElement(bn,{present:n||o.open},({present:i})=>h.createElement(t8,G({},r,{ref:t,present:i})))}),t8=h.forwardRef((e,t)=>{const{__scopeCollapsible:n,present:r,children:o,...i}=e,a=Qf(Yg,n),[l,s]=h.useState(r),c=h.useRef(null),f=Be(t,c),u=h.useRef(0),d=u.current,p=h.useRef(0),y=p.current,g=a.open||l,C=h.useRef(g),v=h.useRef();return h.useEffect(()=>{const m=requestAnimationFrame(()=>C.current=!1);return()=>cancelAnimationFrame(m)},[]),gn(()=>{const m=c.current;if(m){v.current=v.current||{transitionDuration:m.style.transitionDuration,animationName:m.style.animationName},m.style.transitionDuration="0s",m.style.animationName="none";const x=m.getBoundingClientRect();u.current=x.height,p.current=x.width,C.current||(m.style.transitionDuration=v.current.transitionDuration,m.style.animationName=v.current.animationName),s(r)}},[a.open,r]),h.createElement(ue.div,G({"data-state":Zf(a.open),"data-disabled":a.disabled?"":void 0,id:a.contentId,hidden:!g},i,{ref:f,style:{"--radix-collapsible-content-height":d?`${d}px`:void 0,"--radix-collapsible-content-width":y?`${y}px`:void 0,...e.style}}),g&&o)});function Zf(e){return e?"open":"closed"}const n8=X7,r8=q7,o8=e8,Pr="Accordion",i8=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[Xf,a8,l8]=Hl(Pr),[Kl,J9]=En(Pr,[l8,Gg]),Jf=Gg(),Qg=Q.forwardRef((e,t)=>{const{type:n,...r}=e,o=r,i=r;return Q.createElement(Xf.Provider,{scope:e.__scopeAccordion},n==="multiple"?Q.createElement(f8,G({},i,{ref:t})):Q.createElement(u8,G({},o,{ref:t})))});Qg.propTypes={type(e){const t=e.value||e.defaultValue;return e.type&&!["single","multiple"].includes(e.type)?new Error("Invalid prop `type` supplied to `Accordion`. Expected one of `single | multiple`."):e.type==="multiple"&&typeof t=="string"?new Error("Invalid prop `type` supplied to `Accordion`. Expected `single` when `defaultValue` or `value` is type `string`."):e.type==="single"&&Array.isArray(t)?new Error("Invalid prop `type` supplied to `Accordion`. Expected `multiple` when `defaultValue` or `value` is type `string[]`."):null}};const[Zg,s8]=Kl(Pr),[Xg,c8]=Kl(Pr,{collapsible:!1}),u8=Q.forwardRef((e,t)=>{const{value:n,defaultValue:r,onValueChange:o=()=>{},collapsible:i=!1,...a}=e,[l,s]=rr({prop:n,defaultProp:r,onChange:o});return Q.createElement(Zg,{scope:e.__scopeAccordion,value:l?[l]:[],onItemOpen:s,onItemClose:Q.useCallback(()=>i&&s(""),[i,s])},Q.createElement(Xg,{scope:e.__scopeAccordion,collapsible:i},Q.createElement(Jg,G({},a,{ref:t}))))}),f8=Q.forwardRef((e,t)=>{const{value:n,defaultValue:r,onValueChange:o=()=>{},...i}=e,[a=[],l]=rr({prop:n,defaultProp:r,onChange:o}),s=Q.useCallback(f=>l((u=[])=>[...u,f]),[l]),c=Q.useCallback(f=>l((u=[])=>u.filter(d=>d!==f)),[l]);return Q.createElement(Zg,{scope:e.__scopeAccordion,value:a,onItemOpen:s,onItemClose:c},Q.createElement(Xg,{scope:e.__scopeAccordion,collapsible:!0},Q.createElement(Jg,G({},i,{ref:t}))))}),[d8,qf]=Kl(Pr),Jg=Q.forwardRef((e,t)=>{const{__scopeAccordion:n,disabled:r,dir:o,orientation:i="vertical",...a}=e,l=Q.useRef(null),s=Be(l,t),c=a8(n),u=Vl(o)==="ltr",d=ae(e.onKeyDown,p=>{var y;if(!i8.includes(p.key))return;const g=p.target,C=c().filter(k=>{var P;return!((P=k.ref.current)!==null&&P!==void 0&&P.disabled)}),v=C.findIndex(k=>k.ref.current===g),m=C.length;if(v===-1)return;p.preventDefault();let x=v;const E=0,_=m-1,b=()=>{x=v+1,x>_&&(x=E)},S=()=>{x=v-1,x{const{__scopeAccordion:n,value:r,...o}=e,i=qf(Eu,n),a=s8(Eu,n),l=Jf(n),s=rn(),c=r&&a.value.includes(r)||!1,f=i.disabled||e.disabled;return Q.createElement(h8,{scope:n,open:c,disabled:f,triggerId:s},Q.createElement(n8,G({"data-orientation":i.orientation,"data-state":y8(c)},l,o,{ref:t,disabled:f,open:c,onOpenChange:u=>{u?a.onItemOpen(r):a.onItemClose(r)}})))}),Sp="AccordionTrigger",v8=Q.forwardRef((e,t)=>{const{__scopeAccordion:n,...r}=e,o=qf(Pr,n),i=qg(Sp,n),a=c8(Sp,n),l=Jf(n);return Q.createElement(Xf.ItemSlot,{scope:n},Q.createElement(r8,G({"aria-disabled":i.open&&!a.collapsible||void 0,"data-orientation":o.orientation,id:i.triggerId},l,r,{ref:t})))}),m8="AccordionContent",g8=Q.forwardRef((e,t)=>{const{__scopeAccordion:n,...r}=e,o=qf(Pr,n),i=qg(m8,n),a=Jf(n);return Q.createElement(o8,G({role:"region","aria-labelledby":i.triggerId,"data-orientation":o.orientation},a,r,{ref:t,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...e.style}}))});function y8(e){return e?"open":"closed"}const w8=Qg,x8=p8,C8=v8,E8=g8;var b8="vocs_MobileSearch_searchButton";function _8(){const[e,t]=h.useState(!1);return w.jsxs(mg,{open:e,onOpenChange:t,children:[w.jsx(gg,{asChild:!0,children:w.jsx("button",{className:b8,type:"button","aria-label":"Search",children:w.jsx(zf,{height:21,width:21})})}),w.jsx(Tg,{open:e,onClose:()=>t(!1)})]})}var S8="vocs_MobileTopNav_button",$8="var(--vocs_MobileTopNav_chevronDownIcon)",T8="var(--vocs_MobileTopNav_chevronUpIcon)",k8="vocs_MobileTopNav_content",R8="vocs_MobileTopNav_curtain",$p="vocs_MobileTopNav_curtainGroup",qs="vocs_MobileTopNav_curtainItem",N8="vocs_MobileTopNav_divider",ba="vocs_MobileTopNav_group",P8="vocs_MobileTopNav_icon",A8="vocs_MobileTopNav_item",O8="vocs_MobileTopNav_logo",I8="vocs_MobileTopNav_menuTitle",e1="vocs_MobileTopNav_menuTrigger",t1="vocs_MobileTopNav_navigation",L8="vocs_MobileTopNav_navigationContent",Ko="vocs_MobileTopNav_navigationItem",M8="vocs_MobileTopNav_trigger",j8="vocs_MobileTopNav_navigation_compact",D8="vocs_MobileTopNav_outlinePopover",Tp="vocs_MobileTopNav_outlineTrigger",F8="vocs_MobileTopNav",kp="vocs_MobileTopNav_section",z8="vocs_MobileTopNav_separator",B8="vocs_MobileTopNav_sidebarPopover",U8="vocs_MobileTopNav_topNavPopover";function V8(e,t){let n=!1;return()=>{n=!0,setTimeout(()=>{n&&e(),n=!1},t)}}var H8="vocs_Outline_heading",W8="vocs_Outline_item",K8="vocs_Outline_items",G8="vocs_Outline_link",Y8="vocs_Outline_nav",Q8="vocs_Outline";function n1({minLevel:e=2,maxLevel:t=3,highlightActive:n=!0,onClickItem:r,showTitle:o=!0}={}){const{showOutline:i}=Rr(),a=typeof i=="number"?e+i-1:t,l=h.useRef(!0),{pathname:s,hash:c}=Re(),[f,u]=h.useState([]);h.useEffect(()=>{if(typeof window>"u")return;const C=Array.from(document.querySelectorAll(`.${z0}`));u(C)},[s]);const d=h.useMemo(()=>f?f.map(C=>{const v=C.querySelector(`.${B0}`);if(!v)return null;const m=v.getBoundingClientRect(),x=v.id,E=Number(C.tagName[1]),_=C.textContent,b=window.scrollY+m.top;return Ea?null:{id:x,level:E,slugTargetElement:v,text:_,topOffset:b}}).filter(Boolean):[],[f,a,e]),[p,y]=h.useState(c.replace("#",""));if(h.useEffect(()=>{if(typeof window>"u")return;const C=new IntersectionObserver(([v])=>{var x;if(!l.current)return;const m=v.target.id;if(v.isIntersecting)y(m);else{if(!(v.target.getBoundingClientRect().top>0))return;const b=d.findIndex($=>$.id===p),S=(x=d[b-1])==null?void 0:x.id;y(S)}},{rootMargin:"0px 0px -95% 0px"});for(const v of d)C.observe(v.slugTargetElement);return()=>C.disconnect()},[p,d]),h.useEffect(()=>{if(typeof window>"u")return;const C=new IntersectionObserver(([v])=>{var x;if(!l.current)return;const m=(x=d[d.length-1])==null?void 0:x.id;v.isIntersecting?y(m):p===m&&y(d[d.length-2].id)});return C.observe(document.querySelector("[data-bottom-observer]")),()=>C.disconnect()},[p,d]),h.useEffect(()=>{if(typeof window>"u")return;const C=V8(()=>{var v,m,x;if(l.current){if(window.scrollY===0){y((v=d[0])==null?void 0:v.id);return}if(window.scrollY+document.documentElement.clientHeight>=document.documentElement.scrollHeight){y((m=d[d.length-1])==null?void 0:m.id);return}for(let E=0;Ewindow.removeEventListener("scroll",C)},[d]),d.length===0)return null;const g=d.filter(C=>C.level===e);return w.jsx("aside",{className:Q8,children:w.jsxs("nav",{className:Y8,children:[o&&w.jsx("h2",{className:H8,children:"On this page"}),w.jsx(r1,{activeId:n?p:null,items:d,onClickItem:()=>{r==null||r(),l.current=!1,setTimeout(()=>{l.current=!0},500)},levelItems:g,setActiveId:y})]})})}function r1({activeId:e,items:t,levelItems:n,onClickItem:r,setActiveId:o}){const{pathname:i}=Re();return w.jsx("ul",{className:K8,children:n.map(({id:a,level:l,text:s})=>{const c=`#${a}`,f=e===a,u=(()=>{var C;const p=t.findIndex(v=>v.id===a)+1,y=(C=t[p])==null?void 0:C.level;if(y<=l)return null;const g=[];for(let v=p;v{r==null||r(),o(a)},className:G8,children:s})}),u&&w.jsx(r1,{activeId:e,levelItems:u,items:t,onClickItem:r,setActiveId:o})]},a)})})}const Z8=["top","right","bottom","left"],Qn=Math.min,xt=Math.max,gl=Math.round,_a=Math.floor,Zn=e=>({x:e,y:e}),X8={left:"right",right:"left",bottom:"top",top:"bottom"},J8={start:"end",end:"start"};function bu(e,t,n){return xt(e,Qn(t,n))}function yn(e,t){return typeof e=="function"?e(t):e}function wn(e){return e.split("-")[0]}function ko(e){return e.split("-")[1]}function ed(e){return e==="x"?"y":"x"}function td(e){return e==="y"?"height":"width"}function Ro(e){return["top","bottom"].includes(wn(e))?"y":"x"}function nd(e){return ed(Ro(e))}function q8(e,t,n){n===void 0&&(n=!1);const r=ko(e),o=nd(e),i=td(o);let a=o==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[i]>t.floating[i]&&(a=yl(a)),[a,yl(a)]}function eC(e){const t=yl(e);return[_u(e),t,_u(t)]}function _u(e){return e.replace(/start|end/g,t=>J8[t])}function tC(e,t,n){const r=["left","right"],o=["right","left"],i=["top","bottom"],a=["bottom","top"];switch(e){case"top":case"bottom":return n?t?o:r:t?r:o;case"left":case"right":return t?i:a;default:return[]}}function nC(e,t,n,r){const o=ko(e);let i=tC(wn(e),n==="start",r);return o&&(i=i.map(a=>a+"-"+o),t&&(i=i.concat(i.map(_u)))),i}function yl(e){return e.replace(/left|right|bottom|top/g,t=>X8[t])}function rC(e){return{top:0,right:0,bottom:0,left:0,...e}}function o1(e){return typeof e!="number"?rC(e):{top:e,right:e,bottom:e,left:e}}function wl(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Rp(e,t,n){let{reference:r,floating:o}=e;const i=Ro(t),a=nd(t),l=td(a),s=wn(t),c=i==="y",f=r.x+r.width/2-o.width/2,u=r.y+r.height/2-o.height/2,d=r[l]/2-o[l]/2;let p;switch(s){case"top":p={x:f,y:r.y-o.height};break;case"bottom":p={x:f,y:r.y+r.height};break;case"right":p={x:r.x+r.width,y:u};break;case"left":p={x:r.x-o.width,y:u};break;default:p={x:r.x,y:r.y}}switch(ko(t)){case"start":p[a]-=d*(n&&c?-1:1);break;case"end":p[a]+=d*(n&&c?-1:1);break}return p}const oC=async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:a}=n,l=i.filter(Boolean),s=await(a.isRTL==null?void 0:a.isRTL(t));let c=await a.getElementRects({reference:e,floating:t,strategy:o}),{x:f,y:u}=Rp(c,r,s),d=r,p={},y=0;for(let g=0;g({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:o,rects:i,platform:a,elements:l,middlewareData:s}=t,{element:c,padding:f=0}=yn(e,t)||{};if(c==null)return{};const u=o1(f),d={x:n,y:r},p=nd(o),y=td(p),g=await a.getDimensions(c),C=p==="y",v=C?"top":"left",m=C?"bottom":"right",x=C?"clientHeight":"clientWidth",E=i.reference[y]+i.reference[p]-d[p]-i.floating[y],_=d[p]-i.reference[p],b=await(a.getOffsetParent==null?void 0:a.getOffsetParent(c));let S=b?b[x]:0;(!S||!await(a.isElement==null?void 0:a.isElement(b)))&&(S=l.floating[x]||i.floating[y]);const $=E/2-_/2,k=S/2-g[y]/2-1,P=Qn(u[v],k),j=Qn(u[m],k),L=P,D=S-g[y]-j,N=S/2-g[y]/2+$,z=bu(L,N,D),H=!s.arrow&&ko(o)!=null&&N!==z&&i.reference[y]/2-(NL<=0)){var k,P;const L=(((k=i.flip)==null?void 0:k.index)||0)+1,D=_[L];if(D)return{data:{index:L,overflows:$},reset:{placement:D}};let N=(P=$.filter(z=>z.overflows[0]<=0).sort((z,H)=>z.overflows[1]-H.overflows[1])[0])==null?void 0:P.placement;if(!N)switch(p){case"bestFit":{var j;const z=(j=$.map(H=>[H.placement,H.overflows.filter(B=>B>0).reduce((B,O)=>B+O,0)]).sort((H,B)=>H[1]-B[1])[0])==null?void 0:j[0];z&&(N=z);break}case"initialPlacement":N=l;break}if(o!==N)return{reset:{placement:N}}}return{}}}};function Np(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Pp(e){return Z8.some(t=>e[t]>=0)}const lC=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...o}=yn(e,t);switch(r){case"referenceHidden":{const i=await Ni(t,{...o,elementContext:"reference"}),a=Np(i,n.reference);return{data:{referenceHiddenOffsets:a,referenceHidden:Pp(a)}}}case"escaped":{const i=await Ni(t,{...o,altBoundary:!0}),a=Np(i,n.floating);return{data:{escapedOffsets:a,escaped:Pp(a)}}}default:return{}}}}};async function sC(e,t){const{placement:n,platform:r,elements:o}=e,i=await(r.isRTL==null?void 0:r.isRTL(o.floating)),a=wn(n),l=ko(n),s=Ro(n)==="y",c=["left","top"].includes(a)?-1:1,f=i&&s?-1:1,u=yn(t,e);let{mainAxis:d,crossAxis:p,alignmentAxis:y}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...u};return l&&typeof y=="number"&&(p=l==="end"?y*-1:y),s?{x:p*f,y:d*c}:{x:d*c,y:p*f}}const i1=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:a,middlewareData:l}=t,s=await sC(t,e);return a===((n=l.offset)==null?void 0:n.placement)&&(r=l.arrow)!=null&&r.alignmentOffset?{}:{x:o+s.x,y:i+s.y,data:{...s,placement:a}}}}},cC=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o}=t,{mainAxis:i=!0,crossAxis:a=!1,limiter:l={fn:C=>{let{x:v,y:m}=C;return{x:v,y:m}}},...s}=yn(e,t),c={x:n,y:r},f=await Ni(t,s),u=Ro(wn(o)),d=ed(u);let p=c[d],y=c[u];if(i){const C=d==="y"?"top":"left",v=d==="y"?"bottom":"right",m=p+f[C],x=p-f[v];p=bu(m,p,x)}if(a){const C=u==="y"?"top":"left",v=u==="y"?"bottom":"right",m=y+f[C],x=y-f[v];y=bu(m,y,x)}const g=l.fn({...t,[d]:p,[u]:y});return{...g,data:{x:g.x-n,y:g.y-r}}}}},uC=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:o,rects:i,middlewareData:a}=t,{offset:l=0,mainAxis:s=!0,crossAxis:c=!0}=yn(e,t),f={x:n,y:r},u=Ro(o),d=ed(u);let p=f[d],y=f[u];const g=yn(l,t),C=typeof g=="number"?{mainAxis:g,crossAxis:0}:{mainAxis:0,crossAxis:0,...g};if(s){const x=d==="y"?"height":"width",E=i.reference[d]-i.floating[x]+C.mainAxis,_=i.reference[d]+i.reference[x]-C.mainAxis;p_&&(p=_)}if(c){var v,m;const x=d==="y"?"width":"height",E=["top","left"].includes(wn(o)),_=i.reference[u]-i.floating[x]+(E&&((v=a.offset)==null?void 0:v[u])||0)+(E?0:C.crossAxis),b=i.reference[u]+i.reference[x]+(E?0:((m=a.offset)==null?void 0:m[u])||0)-(E?C.crossAxis:0);y<_?y=_:y>b&&(y=b)}return{[d]:p,[u]:y}}}},fC=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:n,rects:r,platform:o,elements:i}=t,{apply:a=()=>{},...l}=yn(e,t),s=await Ni(t,l),c=wn(n),f=ko(n),u=Ro(n)==="y",{width:d,height:p}=r.floating;let y,g;c==="top"||c==="bottom"?(y=c,g=f===(await(o.isRTL==null?void 0:o.isRTL(i.floating))?"start":"end")?"left":"right"):(g=c,y=f==="end"?"top":"bottom");const C=p-s[y],v=d-s[g],m=!t.middlewareData.shift;let x=C,E=v;if(u){const b=d-s.left-s.right;E=f||m?Qn(v,b):b}else{const b=p-s.top-s.bottom;x=f||m?Qn(C,b):b}if(m&&!f){const b=xt(s.left,0),S=xt(s.right,0),$=xt(s.top,0),k=xt(s.bottom,0);u?E=d-2*(b!==0||S!==0?b+S:xt(s.left,s.right)):x=p-2*($!==0||k!==0?$+k:xt(s.top,s.bottom))}await a({...t,availableWidth:E,availableHeight:x});const _=await o.getDimensions(i.floating);return d!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function Xn(e){return a1(e)?(e.nodeName||"").toLowerCase():"#document"}function bt(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Sn(e){var t;return(t=(a1(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function a1(e){return e instanceof Node||e instanceof bt(e).Node}function nt(e){return e instanceof Element||e instanceof bt(e).Element}function on(e){return e instanceof HTMLElement||e instanceof bt(e).HTMLElement}function Su(e){return typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof bt(e).ShadowRoot}function Vi(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=Lt(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!["inline","contents"].includes(o)}function dC(e){return["table","td","th"].includes(Xn(e))}function rd(e){const t=od(),n=Lt(e);return n.transform!=="none"||n.perspective!=="none"||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||["transform","perspective","filter"].some(r=>(n.willChange||"").includes(r))||["paint","layout","strict","content"].some(r=>(n.contain||"").includes(r))}function l1(e){let t=Co(e);for(;on(t)&&!Gl(t);){if(rd(t))return t;t=Co(t)}return null}function od(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function Gl(e){return["html","body","#document"].includes(Xn(e))}function Lt(e){return bt(e).getComputedStyle(e)}function Yl(e){return nt(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Co(e){if(Xn(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Su(e)&&e.host||Sn(e);return Su(t)?t.host:t}function s1(e){const t=Co(e);return Gl(t)?e.ownerDocument?e.ownerDocument.body:e.body:on(t)&&Vi(t)?t:s1(t)}function Pi(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=s1(e),i=o===((r=e.ownerDocument)==null?void 0:r.body),a=bt(o);return i?t.concat(a,a.visualViewport||[],Vi(o)?o:[],a.frameElement&&n?Pi(a.frameElement):[]):t.concat(o,Pi(o,[],n))}function c1(e){const t=Lt(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=on(e),i=o?e.offsetWidth:n,a=o?e.offsetHeight:r,l=gl(n)!==i||gl(r)!==a;return l&&(n=i,r=a),{width:n,height:r,$:l}}function id(e){return nt(e)?e:e.contextElement}function lo(e){const t=id(e);if(!on(t))return Zn(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=c1(t);let a=(i?gl(n.width):n.width)/r,l=(i?gl(n.height):n.height)/o;return(!a||!Number.isFinite(a))&&(a=1),(!l||!Number.isFinite(l))&&(l=1),{x:a,y:l}}const hC=Zn(0);function u1(e){const t=bt(e);return!od()||!t.visualViewport?hC:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function pC(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==bt(e)?!1:t}function Er(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),i=id(e);let a=Zn(1);t&&(r?nt(r)&&(a=lo(r)):a=lo(e));const l=pC(i,n,r)?u1(i):Zn(0);let s=(o.left+l.x)/a.x,c=(o.top+l.y)/a.y,f=o.width/a.x,u=o.height/a.y;if(i){const d=bt(i),p=r&&nt(r)?bt(r):r;let y=d.frameElement;for(;y&&r&&p!==d;){const g=lo(y),C=y.getBoundingClientRect(),v=Lt(y),m=C.left+(y.clientLeft+parseFloat(v.paddingLeft))*g.x,x=C.top+(y.clientTop+parseFloat(v.paddingTop))*g.y;s*=g.x,c*=g.y,f*=g.x,u*=g.y,s+=m,c+=x,y=bt(y).frameElement}}return wl({width:f,height:u,x:s,y:c})}const vC=[":popover-open",":modal"];function f1(e){let t=!1,n=0,r=0;function o(i){try{t=t||e.matches(i)}catch{}}if(vC.forEach(i=>{o(i)}),t){const i=l1(e);if(i){const a=i.getBoundingClientRect();n=a.x,r=a.y}}return[t,n,r]}function mC(e){let{elements:t,rect:n,offsetParent:r,strategy:o}=e;const i=Sn(r),[a]=t?f1(t.floating):[!1];if(r===i||a)return n;let l={scrollLeft:0,scrollTop:0},s=Zn(1);const c=Zn(0),f=on(r);if((f||!f&&o!=="fixed")&&((Xn(r)!=="body"||Vi(i))&&(l=Yl(r)),on(r))){const u=Er(r);s=lo(r),c.x=u.x+r.clientLeft,c.y=u.y+r.clientTop}return{width:n.width*s.x,height:n.height*s.y,x:n.x*s.x-l.scrollLeft*s.x+c.x,y:n.y*s.y-l.scrollTop*s.y+c.y}}function gC(e){return Array.from(e.getClientRects())}function d1(e){return Er(Sn(e)).left+Yl(e).scrollLeft}function yC(e){const t=Sn(e),n=Yl(e),r=e.ownerDocument.body,o=xt(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=xt(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let a=-n.scrollLeft+d1(e);const l=-n.scrollTop;return Lt(r).direction==="rtl"&&(a+=xt(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:a,y:l}}function wC(e,t){const n=bt(e),r=Sn(e),o=n.visualViewport;let i=r.clientWidth,a=r.clientHeight,l=0,s=0;if(o){i=o.width,a=o.height;const c=od();(!c||c&&t==="fixed")&&(l=o.offsetLeft,s=o.offsetTop)}return{width:i,height:a,x:l,y:s}}function xC(e,t){const n=Er(e,!0,t==="fixed"),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=on(e)?lo(e):Zn(1),a=e.clientWidth*i.x,l=e.clientHeight*i.y,s=o*i.x,c=r*i.y;return{width:a,height:l,x:s,y:c}}function Ap(e,t,n){let r;if(t==="viewport")r=wC(e,n);else if(t==="document")r=yC(Sn(e));else if(nt(t))r=xC(t,n);else{const o=u1(e);r={...t,x:t.x-o.x,y:t.y-o.y}}return wl(r)}function h1(e,t){const n=Co(e);return n===t||!nt(n)||Gl(n)?!1:Lt(n).position==="fixed"||h1(n,t)}function CC(e,t){const n=t.get(e);if(n)return n;let r=Pi(e,[],!1).filter(l=>nt(l)&&Xn(l)!=="body"),o=null;const i=Lt(e).position==="fixed";let a=i?Co(e):e;for(;nt(a)&&!Gl(a);){const l=Lt(a),s=rd(a);!s&&l.position==="fixed"&&(o=null),(i?!s&&!o:!s&&l.position==="static"&&!!o&&["absolute","fixed"].includes(o.position)||Vi(a)&&!s&&h1(e,a))?r=r.filter(f=>f!==a):o=l,a=Co(a)}return t.set(e,r),r}function EC(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const a=[...n==="clippingAncestors"?CC(t,this._c):[].concat(n),r],l=a[0],s=a.reduce((c,f)=>{const u=Ap(t,f,o);return c.top=xt(u.top,c.top),c.right=Qn(u.right,c.right),c.bottom=Qn(u.bottom,c.bottom),c.left=xt(u.left,c.left),c},Ap(t,l,o));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function bC(e){const{width:t,height:n}=c1(e);return{width:t,height:n}}function _C(e,t,n,r){const o=on(t),i=Sn(t),a=n==="fixed",l=Er(e,!0,a,t);let s={scrollLeft:0,scrollTop:0};const c=Zn(0);if(o||!o&&!a)if((Xn(t)!=="body"||Vi(i))&&(s=Yl(t)),o){const g=Er(t,!0,a,t);c.x=g.x+t.clientLeft,c.y=g.y+t.clientTop}else i&&(c.x=d1(i));let f=l.left+s.scrollLeft-c.x,u=l.top+s.scrollTop-c.y;const[d,p,y]=f1(r);return d&&(f+=p,u+=y,o&&(f+=t.clientLeft,u+=t.clientTop)),{x:f,y:u,width:l.width,height:l.height}}function Op(e,t){return!on(e)||Lt(e).position==="fixed"?null:t?t(e):e.offsetParent}function p1(e,t){const n=bt(e);if(!on(e))return n;let r=Op(e,t);for(;r&&dC(r)&&Lt(r).position==="static";)r=Op(r,t);return r&&(Xn(r)==="html"||Xn(r)==="body"&&Lt(r).position==="static"&&!rd(r))?n:r||l1(e)||n}const SC=async function(e){const t=this.getOffsetParent||p1,n=this.getDimensions;return{reference:_C(e.reference,await t(e.floating),e.strategy,e.floating),floating:{x:0,y:0,...await n(e.floating)}}};function $C(e){return Lt(e).direction==="rtl"}const v1={convertOffsetParentRelativeRectToViewportRelativeRect:mC,getDocumentElement:Sn,getClippingRect:EC,getOffsetParent:p1,getElementRects:SC,getClientRects:gC,getDimensions:bC,getScale:lo,isElement:nt,isRTL:$C};function TC(e,t){let n=null,r;const o=Sn(e);function i(){var l;clearTimeout(r),(l=n)==null||l.disconnect(),n=null}function a(l,s){l===void 0&&(l=!1),s===void 0&&(s=1),i();const{left:c,top:f,width:u,height:d}=e.getBoundingClientRect();if(l||t(),!u||!d)return;const p=_a(f),y=_a(o.clientWidth-(c+u)),g=_a(o.clientHeight-(f+d)),C=_a(c),m={rootMargin:-p+"px "+-y+"px "+-g+"px "+-C+"px",threshold:xt(0,Qn(1,s))||1};let x=!0;function E(_){const b=_[0].intersectionRatio;if(b!==s){if(!x)return a();b?a(!1,b):r=setTimeout(()=>{a(!1,1e-7)},100)}x=!1}try{n=new IntersectionObserver(E,{...m,root:o.ownerDocument})}catch{n=new IntersectionObserver(E,m)}n.observe(e)}return a(!0),i}function kC(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:s=!1}=r,c=id(e),f=o||i?[...c?Pi(c):[],...Pi(t)]:[];f.forEach(v=>{o&&v.addEventListener("scroll",n,{passive:!0}),i&&v.addEventListener("resize",n)});const u=c&&l?TC(c,n):null;let d=-1,p=null;a&&(p=new ResizeObserver(v=>{let[m]=v;m&&m.target===c&&p&&(p.unobserve(t),cancelAnimationFrame(d),d=requestAnimationFrame(()=>{var x;(x=p)==null||x.observe(t)})),n()}),c&&!s&&p.observe(c),p.observe(t));let y,g=s?Er(e):null;s&&C();function C(){const v=Er(e);g&&(v.x!==g.x||v.y!==g.y||v.width!==g.width||v.height!==g.height)&&n(),g=v,y=requestAnimationFrame(C)}return n(),()=>{var v;f.forEach(m=>{o&&m.removeEventListener("scroll",n),i&&m.removeEventListener("resize",n)}),u==null||u(),(v=p)==null||v.disconnect(),p=null,s&&cancelAnimationFrame(y)}}const m1=cC,RC=aC,NC=fC,PC=lC,Ip=iC,AC=uC,OC=(e,t,n)=>{const r=new Map,o={platform:v1,...n},i={...o.platform,_c:r};return oC(e,t,{...o,platform:i})},g1=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:o}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?Ip({element:r.current,padding:o}).fn(n):{}:r?Ip({element:r,padding:o}).fn(n):{}}}};var Ba=typeof document<"u"?h.useLayoutEffect:h.useEffect;function xl(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,r,o;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!xl(e[r],t[r]))return!1;return!0}if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,o[r]))return!1;for(r=n;r--!==0;){const i=o[r];if(!(i==="_owner"&&e.$$typeof)&&!xl(e[i],t[i]))return!1}return!0}return e!==e&&t!==t}function y1(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Lp(e,t){const n=y1(e);return Math.round(t*n)/n}function Mp(e){const t=h.useRef(e);return Ba(()=>{t.current=e}),t}function w1(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:o,elements:{reference:i,floating:a}={},transform:l=!0,whileElementsMounted:s,open:c}=e,[f,u]=h.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[d,p]=h.useState(r);xl(d,r)||p(r);const[y,g]=h.useState(null),[C,v]=h.useState(null),m=h.useCallback(B=>{B!==b.current&&(b.current=B,g(B))},[]),x=h.useCallback(B=>{B!==S.current&&(S.current=B,v(B))},[]),E=i||y,_=a||C,b=h.useRef(null),S=h.useRef(null),$=h.useRef(f),k=s!=null,P=Mp(s),j=Mp(o),L=h.useCallback(()=>{if(!b.current||!S.current)return;const B={placement:t,strategy:n,middleware:d};j.current&&(B.platform=j.current),OC(b.current,S.current,B).then(O=>{const F={...O,isPositioned:!0};D.current&&!xl($.current,F)&&($.current=F,So.flushSync(()=>{u(F)}))})},[d,t,n,j]);Ba(()=>{c===!1&&$.current.isPositioned&&($.current.isPositioned=!1,u(B=>({...B,isPositioned:!1})))},[c]);const D=h.useRef(!1);Ba(()=>(D.current=!0,()=>{D.current=!1}),[]),Ba(()=>{if(E&&(b.current=E),_&&(S.current=_),E&&_){if(P.current)return P.current(E,_,L);L()}},[E,_,L,P,k]);const N=h.useMemo(()=>({reference:b,floating:S,setReference:m,setFloating:x}),[m,x]),z=h.useMemo(()=>({reference:E,floating:_}),[E,_]),H=h.useMemo(()=>{const B={position:n,left:0,top:0};if(!z.floating)return B;const O=Lp(z.floating,f.x),F=Lp(z.floating,f.y);return l?{...B,transform:"translate("+O+"px, "+F+"px)",...y1(z.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:O,top:F}},[n,l,z.floating,f.x,f.y]);return h.useMemo(()=>({...f,update:L,refs:N,elements:z,floatingStyles:H}),[f,L,N,z,H])}function IC(e){const[t,n]=h.useState(void 0);return gn(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const i=o[0];let a,l;if("borderBoxSize"in i){const s=i.borderBoxSize,c=Array.isArray(s)?s[0]:s;a=c.inlineSize,l=c.blockSize}else a=e.offsetWidth,l=e.offsetHeight;n({width:a,height:l})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}const x1="Popper",[C1,E1]=En(x1),[LC,b1]=C1(x1),MC=e=>{const{__scopePopper:t,children:n}=e,[r,o]=h.useState(null);return h.createElement(LC,{scope:t,anchor:r,onAnchorChange:o},n)},jC="PopperAnchor",DC=h.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...o}=e,i=b1(jC,n),a=h.useRef(null),l=Be(t,a);return h.useEffect(()=>{i.onAnchorChange((r==null?void 0:r.current)||a.current)}),r?null:h.createElement(ue.div,G({},o,{ref:l}))}),_1="PopperContent",[FC,q9]=C1(_1),zC=h.forwardRef((e,t)=>{var n,r,o,i,a,l,s,c;const{__scopePopper:f,side:u="bottom",sideOffset:d=0,align:p="center",alignOffset:y=0,arrowPadding:g=0,avoidCollisions:C=!0,collisionBoundary:v=[],collisionPadding:m=0,sticky:x="partial",hideWhenDetached:E=!1,updatePositionStrategy:_="optimized",onPlaced:b,...S}=e,$=b1(_1,f),[k,P]=h.useState(null),j=Be(t,yt=>P(yt)),[L,D]=h.useState(null),N=IC(L),z=(n=N==null?void 0:N.width)!==null&&n!==void 0?n:0,H=(r=N==null?void 0:N.height)!==null&&r!==void 0?r:0,B=u+(p!=="center"?"-"+p:""),O=typeof m=="number"?m:{top:0,right:0,bottom:0,left:0,...m},F=Array.isArray(v)?v:[v],W=F.length>0,J={padding:O,boundary:F.filter(BC),altBoundary:W},{refs:se,floatingStyles:Ue,placement:ge,isPositioned:Ne,middlewareData:ye}=w1({strategy:"fixed",placement:B,whileElementsMounted:(...yt)=>kC(...yt,{animationFrame:_==="always"}),elements:{reference:$.anchor},middleware:[i1({mainAxis:d+H,alignmentAxis:y}),C&&m1({mainAxis:!0,crossAxis:!1,limiter:x==="partial"?AC():void 0,...J}),C&&RC({...J}),NC({...J,apply:({elements:yt,rects:Wi,availableWidth:Zl,availableHeight:Xl})=>{const{width:Jl,height:ql}=Wi.reference,Yt=yt.floating.style;Yt.setProperty("--radix-popper-available-width",`${Zl}px`),Yt.setProperty("--radix-popper-available-height",`${Xl}px`),Yt.setProperty("--radix-popper-anchor-width",`${Jl}px`),Yt.setProperty("--radix-popper-anchor-height",`${ql}px`)}}),L&&g1({element:L,padding:g}),UC({arrowWidth:z,arrowHeight:H}),E&&PC({strategy:"referenceHidden",...J})]}),[Ve,we]=S1(ge),_e=at(b);gn(()=>{Ne&&(_e==null||_e())},[Ne,_e]);const Mt=(o=ye.arrow)===null||o===void 0?void 0:o.x,Se=(i=ye.arrow)===null||i===void 0?void 0:i.y,ft=((a=ye.arrow)===null||a===void 0?void 0:a.centerOffset)!==0,[Hi,Ql]=h.useState();return gn(()=>{k&&Ql(window.getComputedStyle(k).zIndex)},[k]),h.createElement("div",{ref:se.setFloating,"data-radix-popper-content-wrapper":"",style:{...Ue,transform:Ne?Ue.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:Hi,"--radix-popper-transform-origin":[(l=ye.transformOrigin)===null||l===void 0?void 0:l.x,(s=ye.transformOrigin)===null||s===void 0?void 0:s.y].join(" ")},dir:e.dir},h.createElement(FC,{scope:f,placedSide:Ve,onArrowChange:D,arrowX:Mt,arrowY:Se,shouldHideArrow:ft},h.createElement(ue.div,G({"data-side":Ve,"data-align":we},S,{ref:j,style:{...S.style,animation:Ne?void 0:"none",opacity:(c=ye.hide)!==null&&c!==void 0&&c.referenceHidden?0:void 0}}))))});function BC(e){return e!==null}const UC=e=>({name:"transformOrigin",options:e,fn(t){var n,r,o,i,a;const{placement:l,rects:s,middlewareData:c}=t,u=((n=c.arrow)===null||n===void 0?void 0:n.centerOffset)!==0,d=u?0:e.arrowWidth,p=u?0:e.arrowHeight,[y,g]=S1(l),C={start:"0%",center:"50%",end:"100%"}[g],v=((r=(o=c.arrow)===null||o===void 0?void 0:o.x)!==null&&r!==void 0?r:0)+d/2,m=((i=(a=c.arrow)===null||a===void 0?void 0:a.y)!==null&&i!==void 0?i:0)+p/2;let x="",E="";return y==="bottom"?(x=u?C:`${v}px`,E=`${-p}px`):y==="top"?(x=u?C:`${v}px`,E=`${s.floating.height+p}px`):y==="right"?(x=`${-p}px`,E=u?C:`${m}px`):y==="left"&&(x=`${s.floating.width+p}px`,E=u?C:`${m}px`),{data:{x,y:E}}}});function S1(e){const[t,n="center"]=e.split("-");return[t,n]}const VC=MC,HC=DC,WC=zC,$1="Popover",[T1,e$]=En($1,[E1]),ad=E1(),[KC,No]=T1($1),GC=e=>{const{__scopePopover:t,children:n,open:r,defaultOpen:o,onOpenChange:i,modal:a=!1}=e,l=ad(t),s=h.useRef(null),[c,f]=h.useState(!1),[u=!1,d]=rr({prop:r,defaultProp:o,onChange:i});return h.createElement(VC,l,h.createElement(KC,{scope:t,contentId:rn(),triggerRef:s,open:u,onOpenChange:d,onOpenToggle:h.useCallback(()=>d(p=>!p),[d]),hasCustomAnchor:c,onCustomAnchorAdd:h.useCallback(()=>f(!0),[]),onCustomAnchorRemove:h.useCallback(()=>f(!1),[]),modal:a},n))},YC="PopoverTrigger",QC=h.forwardRef((e,t)=>{const{__scopePopover:n,...r}=e,o=No(YC,n),i=ad(n),a=Be(t,o.triggerRef),l=h.createElement(ue.button,G({type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":N1(o.open)},r,{ref:a,onClick:ae(e.onClick,o.onOpenToggle)}));return o.hasCustomAnchor?l:h.createElement(HC,G({asChild:!0},i),l)}),k1="PopoverPortal",[ZC,XC]=T1(k1,{forceMount:void 0}),JC=e=>{const{__scopePopover:t,forceMount:n,children:r,container:o}=e,i=No(k1,t);return h.createElement(ZC,{scope:t,forceMount:n},h.createElement(bn,{present:n||i.open},h.createElement(J0,{asChild:!0,container:o},r)))},Ai="PopoverContent",qC=h.forwardRef((e,t)=>{const n=XC(Ai,e.__scopePopover),{forceMount:r=n.forceMount,...o}=e,i=No(Ai,e.__scopePopover);return h.createElement(bn,{present:r||i.open},i.modal?h.createElement(eE,G({},o,{ref:t})):h.createElement(tE,G({},o,{ref:t})))}),eE=h.forwardRef((e,t)=>{const n=No(Ai,e.__scopePopover),r=h.useRef(null),o=Be(t,r),i=h.useRef(!1);return h.useEffect(()=>{const a=r.current;if(a)return ug(a)},[]),h.createElement(sg,{as:xo,allowPinchZoom:!0},h.createElement(R1,G({},e,{ref:o,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:ae(e.onCloseAutoFocus,a=>{var l;a.preventDefault(),i.current||(l=n.triggerRef.current)===null||l===void 0||l.focus()}),onPointerDownOutside:ae(e.onPointerDownOutside,a=>{const l=a.detail.originalEvent,s=l.button===0&&l.ctrlKey===!0,c=l.button===2||s;i.current=c},{checkForDefaultPrevented:!1}),onFocusOutside:ae(e.onFocusOutside,a=>a.preventDefault(),{checkForDefaultPrevented:!1})})))}),tE=h.forwardRef((e,t)=>{const n=No(Ai,e.__scopePopover),r=h.useRef(!1),o=h.useRef(!1);return h.createElement(R1,G({},e,{ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{var a;if((a=e.onCloseAutoFocus)===null||a===void 0||a.call(e,i),!i.defaultPrevented){var l;r.current||(l=n.triggerRef.current)===null||l===void 0||l.focus(),i.preventDefault()}r.current=!1,o.current=!1},onInteractOutside:i=>{var a,l;(a=e.onInteractOutside)===null||a===void 0||a.call(e,i),i.defaultPrevented||(r.current=!0,i.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const s=i.target;((l=n.triggerRef.current)===null||l===void 0?void 0:l.contains(s))&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&o.current&&i.preventDefault()}}))}),R1=h.forwardRef((e,t)=>{const{__scopePopover:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:i,disableOutsidePointerEvents:a,onEscapeKeyDown:l,onPointerDownOutside:s,onFocusOutside:c,onInteractOutside:f,...u}=e,d=No(Ai,n),p=ad(n);return q0(),h.createElement(Z0,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:i},h.createElement(Bf,{asChild:!0,disableOutsidePointerEvents:a,onInteractOutside:f,onEscapeKeyDown:l,onPointerDownOutside:s,onFocusOutside:c,onDismiss:()=>d.onOpenChange(!1)},h.createElement(WC,G({"data-state":N1(d.open),role:"dialog",id:d.contentId},p,u,{ref:t,style:{...u.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}}))))});function N1(e){return e?"open":"closed"}const nE=GC,rE=QC,oE=JC,iE=qC;var aE="vocs_Popover";Ut.Root=nE;Ut.Trigger=rE;function Ut({children:e,className:t}){return w.jsx(oE,{children:w.jsx(iE,{className:I(aE,t),sideOffset:12,children:e})})}var lE="vocs_Sidebar_backLink",sE="vocs_Sidebar_divider",cE="vocs_Sidebar_group",qo="vocs_Sidebar_item",P1="vocs_Sidebar_items",uE="vocs_Sidebar_level",fE="vocs_Sidebar_levelCollapsed",dE="vocs_Sidebar_levelInset",hE="vocs_Sidebar_logo",pE="vocs_Sidebar_logoWrapper",vE="vocs_Sidebar_navigation",mE="vocs_Sidebar",A1="vocs_Sidebar_section",gE="vocs_Sidebar_sectionCollapse",yE="vocs_Sidebar_sectionCollapseActive",wE="vocs_Sidebar_sectionHeader",xE="vocs_Sidebar_sectionHeaderActive",jp="vocs_Sidebar_sectionTitle";function O1(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 39 69",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Chevron Right"}),w.jsx("path",{d:"M38.8697 34.7461C38.8697 33.6719 38.4791 32.6953 37.649 31.8652L7.47318 1.8848C6.74078 1.1035 5.76418 0.712891 4.64118 0.712891C2.34618 0.712891 0.588379 2.42189 0.588379 4.71679C0.588379 5.79099 1.07668 6.81639 1.76028 7.59769L29.0552 34.7461L1.76028 61.8945C1.07668 62.6758 0.588379 63.6523 0.588379 64.7754C0.588379 67.0703 2.34618 68.7793 4.64118 68.7793C5.76418 68.7793 6.74078 68.3887 7.47318 67.6074L37.649 37.627C38.4791 36.7969 38.8697 35.8203 38.8697 34.7461Z",fill:"currentColor"})]})}function I1(e){const{className:t,onClickItem:n}=e,{previousPath:r}=kr(),o=h.useRef(null),i=Bl(),[a,l]=h.useState("/");if(h.useEffect(()=>{typeof window>"u"||r&&l(r)},[i.key,i.backLink]),!i)return null;const s=CE(i.items);return w.jsxs("aside",{ref:o,className:I(mE,t),children:[w.jsxs("div",{className:pE,children:[w.jsx("div",{className:hE,children:w.jsx(Yn,{to:"/",style:{alignItems:"center",display:"flex",height:"100%"},children:w.jsx(Wf,{})})}),w.jsx("div",{className:sE})]}),w.jsx("nav",{className:vE,children:w.jsxs("div",{className:cE,children:[i.backLink&&w.jsx("section",{className:A1,children:w.jsx("div",{className:P1,children:w.jsxs(Yn,{className:I(qo,lE),to:a,children:["←"," ",typeof history<"u"&&history.state.key&&a!=="/"?"Back":"Home"]})})}),s.map((c,f)=>w.jsx(M1,{depth:0,item:c,onClick:n,sidebarRef:o},`${c.text}${f}`))]})})]},i.key)}function CE(e){const t=[];let n=0;for(const r of e){if(r.items){n=t.push(r);continue}t[n]?t[n].items.push(r):t.push({text:"",items:[r]})}return t}function L1(e,t){return e.find(n=>Fl(t,n.link??"")||n.link===t?!0:n.items?L1(n.items,t):!1)}function M1(e){const{depth:t,item:n,onClick:r,sidebarRef:o}=e,i=h.useRef(null),{pathname:a}=Re(),l=Mw(n.link??""),s=h.useMemo(()=>n.items?!!L1(n.items,a):!1,[n.items,a]),[c,f]=h.useState(()=>l||!n.items||s?!1:!!n.collapsed),u=n.collapsed!==void 0&&n.items!==void 0,d=h.useCallback(g=>{"key"in g&&g.key!=="Enter"||n.link||f(C=>!C)},[n.link]),p=h.useCallback(g=>{"key"in g&&g.key!=="Enter"||n.link&&f(C=>!C)},[n.link]),y=h.useRef(!0);return h.useEffect(()=>{!y.current||(y.current=!1,!Fl(a,n.link??""))||requestAnimationFrame(()=>{var m,x,E;const C=((m=i.current)==null?void 0:m.offsetTop)??0,v=((x=o==null?void 0:o.current)==null?void 0:x.clientHeight)??0;C0&&t<5&&n.items.map((g,C)=>w.jsx(M1,{depth:t+1,item:g,onClick:r,sidebarRef:o},`${g.text}${C}`))})]}):w.jsx(w.Fragment,{children:n.link?w.jsx(Yn,{ref:i,"data-active":!!l,onClick:r,className:qo,to:n.link,children:n.text}):w.jsx("div",{className:qo,children:n.text})})}function EE(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 69 39",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Chevron Down"}),w.jsx("path",{d:"M34.8677 38.8398C35.9419 38.8398 37.0161 38.4492 37.7485 37.6191L67.729 7.44339C68.4614 6.71089 68.9009 5.73439 68.9009 4.61129C68.9009 2.31639 67.1919 0.558594 64.897 0.558594C63.8227 0.558594 62.7485 1.04689 62.0161 1.73049L32.5727 31.2715H37.1138L7.67042 1.73049C6.93802 1.04689 5.96142 0.558594 4.83842 0.558594C2.54342 0.558594 0.785645 2.31639 0.785645 4.61129C0.785645 5.73439 1.22512 6.71089 1.95752 7.44339L31.9868 37.6191C32.768 38.4492 33.7446 38.8398 34.8677 38.8398Z",fill:"currentColor"})]})}function bE(){return w.jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 69 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[w.jsx("title",{children:"Chevron Up"}),w.jsx("path",{d:"M1.95752 32.2441C1.22512 32.9277 0.785645 33.9531 0.785645 35.0762C0.785645 37.3711 2.54342 39.1289 4.83842 39.1289C5.96142 39.1289 6.98682 38.6895 7.67042 37.957L37.1138 8.36716H32.5727L62.0161 37.957C62.6997 38.6895 63.8227 39.1289 64.897 39.1289C67.1919 39.1289 68.9009 37.3711 68.9009 35.0762C68.9009 33.9531 68.4614 32.9277 67.729 32.2441L37.7485 2.06836C37.0161 1.23826 35.9419 0.847656 34.8677 0.847656C33.7446 0.847656 32.7192 1.23826 31.9868 2.06836L1.95752 32.2441Z",fill:"currentColor"})]})}function _E(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 79 48",fill:"none",children:[w.jsx("title",{children:"Menu"}),w.jsx("path",{fill:"currentColor",d:"M19.528 47.232h40.87c1.952 0 3.515-1.562 3.515-3.564a3.5 3.5 0 0 0-3.516-3.516H19.528a3.501 3.501 0 0 0-3.515 3.516c0 2.002 1.562 3.564 3.515 3.564ZM12.057 27.262h55.81a3.501 3.501 0 0 0 3.516-3.516 3.501 3.501 0 0 0-3.515-3.515h-55.81a3.501 3.501 0 0 0-3.516 3.515 3.501 3.501 0 0 0 3.515 3.516ZM4.391 7.34H75.29c2.002 0 3.515-1.563 3.515-3.516 0-2.002-1.513-3.564-3.515-3.564H4.39C2.438.26.876 1.822.876 3.824A3.501 3.501 0 0 0 4.39 7.34Z"})]})}$u.Curtain=PE;function $u(){var n,r;const e=ot(),{showLogo:t}=Rr();return w.jsxs("div",{className:F8,children:[w.jsxs("div",{className:kp,children:[t&&w.jsx("div",{className:ba,children:w.jsx("div",{className:O8,children:w.jsx(Yn,{to:"/",style:{alignItems:"center",display:"flex",height:"100%"},children:w.jsx(Wf,{})})})}),e.topNav&&w.jsx(w.Fragment,{children:w.jsxs("div",{className:ba,children:[w.jsx(SE,{items:e.topNav}),w.jsx(TE,{items:e.topNav})]})})]}),w.jsxs("div",{className:kp,children:[w.jsx("div",{className:ba,style:{marginRight:"-8px"},children:w.jsx(_8,{})}),e.socials&&((n=e.socials)==null?void 0:n.length)>0&&w.jsxs(w.Fragment,{children:[w.jsx("div",{className:N8}),w.jsx("div",{className:ba,style:{marginLeft:"-8px"},children:(r=e.socials)==null?void 0:r.map((o,i)=>w.jsx(NE,{...o},i))})]})]})]})}function SE({items:e}){const{pathname:t}=Re(),n=Bi({pathname:t,items:e});return w.jsx(Lg,{className:t1,children:w.jsx(Mg,{children:e.map((r,o)=>r!=null&&r.link?w.jsx(Wl,{active:n==null?void 0:n.includes(r.id),href:r.link,children:r.text},o):w.jsxs(jg,{className:A8,children:[w.jsx(Dg,{active:n==null?void 0:n.includes(r.id),children:r.text}),w.jsx(Fg,{className:k8,children:w.jsx($E,{items:r.items||[]})})]},o))})})}function $E({items:e}){const{pathname:t}=Re(),n=Bi({pathname:t,items:e});return w.jsx("ul",{children:e==null?void 0:e.map((r,o)=>w.jsx(Wl,{active:n.includes(r.id),href:r.link,children:r.text},o))})}function TE({items:e}){var s;const[t,n]=h.useState(!1),{pathname:r}=Re(),o=Bi({pathname:r,items:e}),i=e.filter(c=>c.id===o[0])[0],{basePath:a}=ot(),l=a;return w.jsx("div",{className:I(t1,j8),children:i?w.jsxs(Ut.Root,{modal:!0,open:t,onOpenChange:n,children:[w.jsxs(Ut.Trigger,{className:I(e1,Ko),children:[i.text,w.jsx(st,{label:"Menu",icon:EE,size:"11px"})]}),w.jsx(Ut,{className:U8,children:w.jsx(w8,{type:"single",collapsible:!0,style:{display:"flex",flexDirection:"column"},children:e.map((c,f)=>{var u;return c!=null&&c.link?w.jsx(nn,{"data-active":o.includes(c.id),className:Ko,href:c.link,onClick:()=>n(!1),variant:"styleless",children:c.text},f):w.jsxs(x8,{value:f.toString(),children:[w.jsx(C8,{className:I(Ko,M8),"data-active":o.includes(c.id),style:Gt({[$8]:`url(${l}/.vocs/icons/chevron-down.svg)`,[T8]:`url(${l}/.vocs/icons/chevron-up.svg)`}),children:c.text}),w.jsx(E8,{className:L8,children:(u=c.items)==null?void 0:u.map((d,p)=>w.jsx(nn,{className:Ko,href:d.link,onClick:()=>n(!1),variant:"styleless",children:d.text},p))})]},f)})})})]}):(s=e[0])!=null&&s.link?w.jsx(nn,{className:Ko,href:e[0].link,variant:"styleless",children:e[0].text}):null})}const kE={discord:zg,github:Bg,telegram:Ug,x:Vg},RE={discord:"21px",github:"18px",telegram:"21px",x:"16px"};function NE({icon:e,label:t,link:n,type:r}){return w.jsx("a",{className:S8,href:n,target:"_blank",rel:"noopener noreferrer",children:w.jsx(st,{className:P8,label:t,icon:kE[e],size:RE[r]||"18px"})})}function PE({enableScrollToTop:e}){const{pathname:t}=Re(),{layout:n,showSidebar:r}=Rr(),{frontmatter:o={}}=kr(),i=Bl(),[a,l]=h.useState(!1),[s,c]=h.useState(!1),f=h.useMemo(()=>{if(!i||n==="minimal")return;const p=j1({sidebarItems:i.items,pathname:t});return p==null?void 0:p.text},[n,t,i]),u=h.useMemo(()=>{var p;if(!(typeof window>"u"))return(p=document.querySelector(".vocs_Content h1"))==null?void 0:p.textContent},[]),d=f||o.title||u;return w.jsxs("div",{className:R8,children:[w.jsx("div",{className:$p,children:w.jsx("div",{className:qs,children:r?w.jsxs(Ut.Root,{modal:!0,open:s,onOpenChange:c,children:[w.jsxs(Ut.Trigger,{className:e1,children:[w.jsx(st,{label:"Menu",icon:_E,size:"13px"}),w.jsx("div",{className:I8,children:d})]}),w.jsx(Ut,{className:B8,children:w.jsx(I1,{onClickItem:()=>c(!1)})})]}):d})}),w.jsxs("div",{className:$p,children:[e&&w.jsxs(w.Fragment,{children:[w.jsx("div",{className:qs,children:w.jsxs("button",{className:Tp,onClick:()=>window.scrollTo({behavior:"smooth",top:0}),type:"button",children:["Top",w.jsx(st,{label:"Scroll to top",icon:bE,size:"10px"})]})}),w.jsx("div",{className:z8})]}),n==="docs"&&w.jsx("div",{className:qs,children:w.jsxs(Ut.Root,{modal:!0,open:a,onOpenChange:l,children:[w.jsxs(Ut.Trigger,{className:Tp,children:["On this page",w.jsx(st,{label:"On this page",icon:O1,size:"10px"})]}),w.jsx(Ut,{className:D8,children:w.jsx(n1,{onClickItem:()=>l(!1),showTitle:!1})})]})})]})]})}function j1({sidebarItems:e,pathname:t}){const n=t.replace(/(.+)\/$/,"$1");for(const r of e){if((r==null?void 0:r.link)===n)return r;if(r.items){const o=j1({sidebarItems:r.items,pathname:n});if(o)return o}}}var AE="vocs_SkipLink";const D1="vocs-content";function OE(){const{pathname:e}=Re();return w.jsx("a",{className:I(AE,G0),href:`${e}#${D1}`,children:"Skip to content"})}var IE="vocs_DocsLayout_content",LE="vocs_DocsLayout_content_withSidebar",ME="vocs_DocsLayout_content_withTopNav",jE="vocs_DocsLayout_gutterLeft",DE="vocs_DocsLayout_gutterRight",FE="vocs_DocsLayout_gutterRight_withSidebar",zE="vocs_DocsLayout_gutterTop",BE="vocs_DocsLayout_gutterTopCurtain",UE="vocs_DocsLayout_gutterTopCurtain_hidden",VE="vocs_DocsLayout_gutterTopCurtain_withSidebar",HE="vocs_DocsLayout_gutterTop_offsetLeftGutter",WE="vocs_DocsLayout_gutterTop_sticky",KE="vocs_DocsLayout",GE="vocs_DocsLayout_sidebar";function Tu({children:e}){const{banner:t,font:n}=ot(),{frontmatter:r={}}=kr(),{content:o}=r,{layout:i,showOutline:a,showSidebar:l,showTopNav:s}=Rr(),{ref:c,inView:f}=F0({initialInView:!0,rootMargin:"100px 0px 0px 0px"}),[u,d]=vu("banner",!0);return w.jsxs("div",{className:KE,"data-layout":i,style:Gt({[Wx]:u?t==null?void 0:t.height:void 0,[Tx.default]:n!=null&&n.google?`${n.google}, ${$x.default}`:void 0}),children:[w.jsx(OE,{}),u&&w.jsx(h5,{hide:()=>d(!1)}),l&&w.jsx("div",{className:jE,children:w.jsx(I1,{className:GE})}),s&&w.jsxs(w.Fragment,{children:[w.jsxs("div",{ref:c,className:I(zE,l&&HE,(i==="minimal"||i==="landing")&&WE),children:[w.jsx(Cu,{}),w.jsx($u,{})]}),w.jsxs("div",{className:I(BE,l&&VE,(i==="minimal"||i==="landing")&&UE),children:[w.jsx(Cu.Curtain,{}),w.jsx($u.Curtain,{enableScrollToTop:!f})]})]}),a&&w.jsx("div",{className:I(DE,l&&FE),children:w.jsx(n1,{})}),w.jsxs("div",{id:D1,className:I(IE,l&&LE,s&&ME),style:Gt({[Ls.horizontalPadding]:o==null?void 0:o.horizontalPadding,[Ls.width]:o==null?void 0:o.width,[Ls.verticalPadding]:o==null?void 0:o.verticalPadding}),children:[w.jsx(H0,{children:e}),w.jsx(K7,{})]}),w.jsx("div",{"data-bottom-observer":!0})]})}const ku={},F1=Q.createContext(ku);function YE(e){const t=Q.useContext(F1);return Q.useMemo(function(){return typeof e=="function"?e(t):{...t,...e}},[t,e])}function QE(e){let t;return e.disableParentContext?t=typeof e.components=="function"?e.components(ku):e.components||ku:t=YE(e.components),Q.createElement(F1.Provider,{value:t},e.children)}var z1={exports:{}},ZE="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",XE=ZE,JE=XE;function B1(){}function U1(){}U1.resetWarningCache=B1;var qE=function(){function e(r,o,i,a,l,s){if(s!==JE){var c=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw c.name="Invariant Violation",c}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:U1,resetWarningCache:B1};return n.PropTypes=n,n};z1.exports=qE();var eb=z1.exports;const Ce=Jn(eb);function tb(e){return e&&typeof e=="object"&&"default"in e?e.default:e}var V1=h,nb=tb(V1);function Dp(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function rb(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var ob=!!(typeof window<"u"&&window.document&&window.document.createElement);function ib(e,t,n){if(typeof e!="function")throw new Error("Expected reducePropsToState to be a function.");if(typeof t!="function")throw new Error("Expected handleStateChangeOnClient to be a function.");if(typeof n<"u"&&typeof n!="function")throw new Error("Expected mapStateOnServer to either be undefined or a function.");function r(o){return o.displayName||o.name||"Component"}return function(i){if(typeof i!="function")throw new Error("Expected WrappedComponent to be a React component.");var a=[],l;function s(){l=e(a.map(function(f){return f.props})),c.canUseDOM?t(l):n&&(l=n(l))}var c=function(f){rb(u,f);function u(){return f.apply(this,arguments)||this}u.peek=function(){return l},u.rewind=function(){if(u.canUseDOM)throw new Error("You may only call rewind() on the server. Call peek() to read the current state.");var y=l;return l=void 0,a=[],y};var d=u.prototype;return d.UNSAFE_componentWillMount=function(){a.push(this),s()},d.componentDidUpdate=function(){s()},d.componentWillUnmount=function(){var y=a.indexOf(this);a.splice(y,1),s()},d.render=function(){return nb.createElement(i,this.props)},u}(V1.PureComponent);return Dp(c,"displayName","SideEffect("+r(i)+")"),Dp(c,"canUseDOM",ob),c}}var ab=ib;const lb=Jn(ab);var sb=typeof Element<"u",cb=typeof Map=="function",ub=typeof Set=="function",fb=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function Ua(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;var n,r,o;if(Array.isArray(e)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(!Ua(e[r],t[r]))return!1;return!0}var i;if(cb&&e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(i=e.entries();!(r=i.next()).done;)if(!t.has(r.value[0]))return!1;for(i=e.entries();!(r=i.next()).done;)if(!Ua(r.value[1],t.get(r.value[0])))return!1;return!0}if(ub&&e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(i=e.entries();!(r=i.next()).done;)if(!t.has(r.value[0]))return!1;return!0}if(fb&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(e[r]!==t[r])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf&&typeof e.valueOf=="function"&&typeof t.valueOf=="function")return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString&&typeof e.toString=="function"&&typeof t.toString=="function")return e.toString()===t.toString();if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(t,o[r]))return!1;if(sb&&e instanceof Element)return!1;for(r=n;r--!==0;)if(!((o[r]==="_owner"||o[r]==="__v"||o[r]==="__o")&&e.$$typeof)&&!Ua(e[o[r]],t[o[r]]))return!1;return!0}return e!==e&&t!==t}var db=function(t,n){try{return Ua(t,n)}catch(r){if((r.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw r}};const hb=Jn(db);/* object-assign (c) Sindre Sorhus @license MIT -*/var Fp=Object.getOwnPropertySymbols,pb=Object.prototype.hasOwnProperty,vb=Object.prototype.propertyIsEnumerable;function mb(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function gb(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;var r=Object.getOwnPropertyNames(t).map(function(i){return t[i]});if(r.join("")!=="0123456789")return!1;var o={};return"abcdefghijklmnopqrst".split("").forEach(function(i){o[i]=i}),Object.keys(Object.assign({},o)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}var yb=gb()?Object.assign:function(e,t){for(var n,r=mb(e),o,i=1;i=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n},$b=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&(typeof t=="object"||typeof t=="function")?t:e},Ru=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return n===!1?String(t):String(t).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},Tb=function(t){var n=so(t,q.TITLE),r=so(t,Oi.TITLE_TEMPLATE);if(r&&n)return r.replace(/%s/g,function(){return Array.isArray(n)?n.join(""):n});var o=so(t,Oi.DEFAULT_TITLE);return n||o||void 0},kb=function(t){return so(t,Oi.ON_CHANGE_CLIENT_STATE)||function(){}},ec=function(t,n){return n.filter(function(r){return typeof r[t]<"u"}).map(function(r){return r[t]}).reduce(function(r,o){return dt({},r,o)},{})},Rb=function(t,n){return n.filter(function(r){return typeof r[q.BASE]<"u"}).map(function(r){return r[q.BASE]}).reverse().reduce(function(r,o){if(!r.length)for(var i=Object.keys(o),a=0;a=0;r--){var o=t[r];if(o.hasOwnProperty(n))return o[n]}return null},Nb=function(t){return{baseTag:Rb([Ee.HREF,Ee.TARGET],t),bodyAttributes:ec(vr.BODY,t),defer:so(t,Oi.DEFER),encode:so(t,Oi.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:ec(vr.HTML,t),linkTags:Yo(q.LINK,[Ee.REL,Ee.HREF],t),metaTags:Yo(q.META,[Ee.NAME,Ee.CHARSET,Ee.HTTPEQUIV,Ee.PROPERTY,Ee.ITEM_PROP],t),noscriptTags:Yo(q.NOSCRIPT,[Ee.INNER_HTML],t),onChangeClientState:kb(t),scriptTags:Yo(q.SCRIPT,[Ee.SRC,Ee.INNER_HTML],t),styleTags:Yo(q.STYLE,[Ee.CSS_TEXT],t),title:Tb(t),titleAttributes:ec(vr.TITLE,t)}},Nu=function(){var e=Date.now();return function(t){var n=Date.now();n-e>16?(e=n,t(n)):setTimeout(function(){Nu(t)},0)}}(),Bp=function(t){return clearTimeout(t)},Pb=typeof window<"u"?window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||Nu:global.requestAnimationFrame||Nu,Ab=typeof window<"u"?window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||Bp:global.cancelAnimationFrame||Bp,Ob=function(t){return console&&typeof console.warn=="function"&&console.warn(t)},Go=null,Ib=function(t){Go&&Ab(Go),t.defer?Go=Pb(function(){Up(t,function(){Go=null})}):(Up(t),Go=null)},Up=function(t,n){var r=t.baseTag,o=t.bodyAttributes,i=t.htmlAttributes,a=t.linkTags,l=t.metaTags,s=t.noscriptTags,c=t.onChangeClientState,f=t.scriptTags,u=t.styleTags,d=t.title,p=t.titleAttributes;Pu(q.BODY,o),Pu(q.HTML,i),Lb(d,p);var y={baseTag:zr(q.BASE,r),linkTags:zr(q.LINK,a),metaTags:zr(q.META,l),noscriptTags:zr(q.NOSCRIPT,s),scriptTags:zr(q.SCRIPT,f),styleTags:zr(q.STYLE,u)},g={},C={};Object.keys(y).forEach(function(v){var m=y[v],x=m.newTags,E=m.oldTags;x.length&&(g[v]=x),E.length&&(C[v]=y[v].oldTags)}),n&&n(),c(t,g,C)},H1=function(t){return Array.isArray(t)?t.join(""):t},Lb=function(t,n){typeof t<"u"&&document.title!==t&&(document.title=H1(t)),Pu(q.TITLE,n)},Pu=function(t,n){var r=document.getElementsByTagName(t)[0];if(r){for(var o=r.getAttribute(Vt),i=o?o.split(","):[],a=[].concat(i),l=Object.keys(n),s=0;s=0;d--)r.removeAttribute(a[d]);i.length===a.length?r.removeAttribute(Vt):r.getAttribute(Vt)!==l.join(",")&&r.setAttribute(Vt,l.join(","))}},zr=function(t,n){var r=document.head||document.querySelector(q.HEAD),o=r.querySelectorAll(t+"["+Vt+"]"),i=Array.prototype.slice.call(o),a=[],l=void 0;return n&&n.length&&n.forEach(function(s){var c=document.createElement(t);for(var f in s)if(s.hasOwnProperty(f))if(f===Ee.INNER_HTML)c.innerHTML=s.innerHTML;else if(f===Ee.CSS_TEXT)c.styleSheet?c.styleSheet.cssText=s.cssText:c.appendChild(document.createTextNode(s.cssText));else{var u=typeof s[f]>"u"?"":s[f];c.setAttribute(f,u)}c.setAttribute(Vt,"true"),i.some(function(d,p){return l=p,c.isEqualNode(d)})?i.splice(l,1):a.push(c)}),i.forEach(function(s){return s.parentNode.removeChild(s)}),a.forEach(function(s){return r.appendChild(s)}),{oldTags:i,newTags:a}},W1=function(t){return Object.keys(t).reduce(function(n,r){var o=typeof t[r]<"u"?r+'="'+t[r]+'"':""+r;return n?n+" "+o:o},"")},Mb=function(t,n,r,o){var i=W1(r),a=H1(n);return i?"<"+t+" "+Vt+'="true" '+i+">"+Ru(a,o)+"":"<"+t+" "+Vt+'="true">'+Ru(a,o)+""},jb=function(t,n,r){return n.reduce(function(o,i){var a=Object.keys(i).filter(function(c){return!(c===Ee.INNER_HTML||c===Ee.CSS_TEXT)}).reduce(function(c,f){var u=typeof i[f]>"u"?f:f+'="'+Ru(i[f],r)+'"';return c?c+" "+u:u},""),l=i.innerHTML||i.cssText||"",s=Cb.indexOf(t)===-1;return o+"<"+t+" "+Vt+'="true" '+a+(s?"/>":">"+l+"")},"")},K1=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return Object.keys(t).reduce(function(r,o){return r[Cl[o]||o]=t[o],r},n)},Db=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return Object.keys(t).reduce(function(r,o){return r[xb[o]||o]=t[o],r},n)},Fb=function(t,n,r){var o,i=(o={key:n},o[Vt]=!0,o),a=K1(r,i);return[Q.createElement(q.TITLE,a,n)]},zb=function(t,n){return n.map(function(r,o){var i,a=(i={key:o},i[Vt]=!0,i);return Object.keys(r).forEach(function(l){var s=Cl[l]||l;if(s===Ee.INNER_HTML||s===Ee.CSS_TEXT){var c=r.innerHTML||r.cssText;a.dangerouslySetInnerHTML={__html:c}}else a[s]=r[l]}),Q.createElement(t,a)})},an=function(t,n,r){switch(t){case q.TITLE:return{toComponent:function(){return Fb(t,n.title,n.titleAttributes)},toString:function(){return Mb(t,n.title,n.titleAttributes,r)}};case vr.BODY:case vr.HTML:return{toComponent:function(){return K1(n)},toString:function(){return W1(n)}};default:return{toComponent:function(){return zb(t,n)},toString:function(){return jb(t,n,r)}}}},Y1=function(t){var n=t.baseTag,r=t.bodyAttributes,o=t.encode,i=t.htmlAttributes,a=t.linkTags,l=t.metaTags,s=t.noscriptTags,c=t.scriptTags,f=t.styleTags,u=t.title,d=u===void 0?"":u,p=t.titleAttributes;return{base:an(q.BASE,n,o),bodyAttributes:an(vr.BODY,r,o),htmlAttributes:an(vr.HTML,i,o),link:an(q.LINK,a,o),meta:an(q.META,l,o),noscript:an(q.NOSCRIPT,s,o),script:an(q.SCRIPT,c,o),style:an(q.STYLE,f,o),title:an(q.TITLE,{title:d,titleAttributes:p},o)}},Bb=function(t){var n,r;return r=n=function(o){Sb(i,o);function i(){return bb(this,i),$b(this,o.apply(this,arguments))}return i.prototype.shouldComponentUpdate=function(l){return!hb(this.props,l)},i.prototype.mapNestedChildrenToProps=function(l,s){if(!s)return null;switch(l.type){case q.SCRIPT:case q.NOSCRIPT:return{innerHTML:s};case q.STYLE:return{cssText:s}}throw new Error("<"+l.type+" /> elements are self-closing and can not contain children. Refer to our API for more information.")},i.prototype.flattenArrayTypeChildren=function(l){var s,c=l.child,f=l.arrayTypeChildren,u=l.newChildProps,d=l.nestedChildren;return dt({},f,(s={},s[c.type]=[].concat(f[c.type]||[],[dt({},u,this.mapNestedChildrenToProps(c,d))]),s))},i.prototype.mapObjectTypeChildren=function(l){var s,c,f=l.child,u=l.newProps,d=l.newChildProps,p=l.nestedChildren;switch(f.type){case q.TITLE:return dt({},u,(s={},s[f.type]=p,s.titleAttributes=dt({},d),s));case q.BODY:return dt({},u,{bodyAttributes:dt({},d)});case q.HTML:return dt({},u,{htmlAttributes:dt({},d)})}return dt({},u,(c={},c[f.type]=dt({},d),c))},i.prototype.mapArrayTypeChildrenToProps=function(l,s){var c=dt({},s);return Object.keys(l).forEach(function(f){var u;c=dt({},c,(u={},u[f]=l[f],u))}),c},i.prototype.warnOnInvalidChildren=function(l,s){return!0},i.prototype.mapChildrenToProps=function(l,s){var c=this,f={};return Q.Children.forEach(l,function(u){if(!(!u||!u.props)){var d=u.props,p=d.children,y=zp(d,["children"]),g=Db(y);switch(c.warnOnInvalidChildren(u,p),u.type){case q.LINK:case q.META:case q.NOSCRIPT:case q.SCRIPT:case q.STYLE:f=c.flattenArrayTypeChildren({child:u,arrayTypeChildren:f,newChildProps:g,nestedChildren:p});break;default:s=c.mapObjectTypeChildren({child:u,newProps:s,newChildProps:g,nestedChildren:p});break}}}),s=this.mapArrayTypeChildrenToProps(f,s),s},i.prototype.render=function(){var l=this.props,s=l.children,c=zp(l,["children"]),f=dt({},c);return s&&(f=this.mapChildrenToProps(s,f)),Q.createElement(t,f)},_b(i,null,[{key:"canUseDOM",set:function(l){t.canUseDOM=l}}]),i}(Q.Component),n.propTypes={base:Ce.object,bodyAttributes:Ce.object,children:Ce.oneOfType([Ce.arrayOf(Ce.node),Ce.node]),defaultTitle:Ce.string,defer:Ce.bool,encodeSpecialCharacters:Ce.bool,htmlAttributes:Ce.object,link:Ce.arrayOf(Ce.object),meta:Ce.arrayOf(Ce.object),noscript:Ce.arrayOf(Ce.object),onChangeClientState:Ce.func,script:Ce.arrayOf(Ce.object),style:Ce.arrayOf(Ce.object),title:Ce.string,titleAttributes:Ce.object,titleTemplate:Ce.string},n.defaultProps={defer:!0,encodeSpecialCharacters:!0},n.peek=t.peek,n.rewind=function(){var o=t.rewind();return o||(o=Y1({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}})),o},r},Ub=function(){return null},Vb=lb(Nb,Ib,Y1)(Ub),Au=Bb(Vb);Au.renderStatic=Au.rewind;var tc="vocs_Anchor",Hb="vocs_Autolink";function Wb(e){const{pathname:t}=Re();return w.jsx("a",{...e,className:I(e.className,Hb),href:`${t}${e.href}`})}function Kb(e){const{children:t,href:n}=e,{pathname:r}=Re();return t&&typeof t=="object"&&"props"in t&&t.props["data-autolink-icon"]?w.jsx(Wb,{className:I(e.className,tc),...e}):n!=null&&n.match(/^#/)?w.jsx("a",{className:I(e.className,tc),...e,href:`${r}${n}`}):w.jsx(nn,{className:I(e.className,tc),...e})}var Yb="vocs_Callout_danger",Gb="vocs_Callout_info",Qb="vocs_Callout_note",G1="vocs_Callout",Zb="vocs_Callout_success",Xb="vocs_Callout_tip",Jb="vocs_Callout_warning";const qb=Object.freeze(Object.defineProperty({__proto__:null,danger:Yb,info:Gb,note:Qb,root:G1,success:Zb,tip:Xb,warning:Jb},Symbol.toStringTag,{value:"Module"}));function e_({className:e,children:t,type:n}){return w.jsx("aside",{className:I(e,G1,qb[n]),children:t})}var t_="vocs_Aside";function n_(e){const t=I(e.className,t_);return"data-callout"in e?w.jsx(e_,{className:t,type:e["data-callout"],children:e.children}):w.jsx("aside",{...e,className:t})}var r_="vocs_Blockquote";function o_(e){return w.jsx("blockquote",{...e,className:I(e.className,r_)})}var i_="vocs_Code";function a_(e){const t=l_(e.children);return w.jsx("code",{...e,className:I(e.className,i_),children:t})}function l_(e){return Array.isArray(e)?e.map((t,n)=>{var r,o,i;return t.props&&"data-line"in t.props&&typeof t.props.children=="string"&&t.props.children.trim()===""&&((i=(o=(r=e[n+1])==null?void 0:r.props)==null?void 0:o.className)!=null&&i.includes("twoslash-tag-line"))?null:t}).filter(Boolean):e}var s_="vocs_Details";function c_(e){return w.jsx("details",{...e,className:I(e.className,s_)})}var u_="vocs_Authors_authors",f_="vocs_Authors_link",d_="vocs_Authors",Vp="vocs_Authors_separator";function Q1(e){const{frontmatter:t}=kr(),{authors:n=t==null?void 0:t.authors,date:r=t==null?void 0:t.date}=e,o=h.useMemo(()=>{if(n)return Array.isArray(n)?n:n.split(",").map(a=>a.trim())},[n]),i=h.useMemo(()=>r?new Date(r).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"}):null,[r]);return w.jsxs("div",{className:d_,children:[i,o&&(i?" by ":"By "),w.jsx("span",{className:u_,children:o==null?void 0:o.map((a,l)=>{const{text:s,url:c}=h_(a);return w.jsxs(h.Fragment,{children:[c?w.jsx("a",{className:f_,href:c,target:"_blank",rel:"noopener noreferrer",children:s}):s,lw.jsxs(h.Fragment,{children:[w.jsx("div",{className:m_,children:w.jsxs(Gn,{to:e.path,children:[w.jsx("h2",{className:w_,children:e.title}),w.jsx(Q1,{authors:e.authors,date:e.date}),w.jsxs("p",{className:p_,children:[e.description," ",w.jsx("span",{className:g_,children:"[→]"})]})]})}),tw.jsxs(h.Fragment,{children:[w.jsx("div",{className:k_,children:t.name}),t.items.map((r,o)=>{var i;return w.jsx("div",{className:$_,style:Yt({[E_]:r.length.toString(),[b_]:`${((i=t.height)==null?void 0:i.toString())??"40"}px`}),children:r.map((a,l)=>w.jsx(nn,{className:I(C_,a?T_:void 0),hideExternalIcon:!0,href:a==null?void 0:a.link,variant:"styleless",children:w.jsx("img",{className:__,src:a==null?void 0:a.image,alt:a==null?void 0:a.name})},l))},o)})]},n))})}var N_="var(--vocs_AutolinkIcon_iconUrl)",P_="vocs_AutolinkIcon";function A_(e){const{basePath:t}=ot(),n=t;return w.jsx("div",{...e,className:I(e.className,P_),style:Yt({[N_]:`url(${n}/.vocs/icons/link.svg)`})})}const nc="rovingFocusGroup.onEntryFocus",O_={bubbles:!1,cancelable:!0},ld="RovingFocusGroup",[Ou,Z1,I_]=Hl(ld),[L_,X1]=En(ld,[I_]),[M_,j_]=L_(ld),D_=h.forwardRef((e,t)=>h.createElement(Ou.Provider,{scope:e.__scopeRovingFocusGroup},h.createElement(Ou.Slot,{scope:e.__scopeRovingFocusGroup},h.createElement(F_,Y({},e,{ref:t}))))),F_=h.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:r,loop:o=!1,dir:i,currentTabStopId:a,defaultCurrentTabStopId:l,onCurrentTabStopIdChange:s,onEntryFocus:c,...f}=e,u=h.useRef(null),d=Be(t,u),p=Vl(i),[y=null,g]=rr({prop:a,defaultProp:l,onChange:s}),[C,v]=h.useState(!1),m=at(c),x=Z1(n),E=h.useRef(!1),[_,b]=h.useState(0);return h.useEffect(()=>{const S=u.current;if(S)return S.addEventListener(nc,m),()=>S.removeEventListener(nc,m)},[m]),h.createElement(M_,{scope:n,orientation:r,dir:p,loop:o,currentTabStopId:y,onItemFocus:h.useCallback(S=>g(S),[g]),onItemShiftTab:h.useCallback(()=>v(!0),[]),onFocusableItemAdd:h.useCallback(()=>b(S=>S+1),[]),onFocusableItemRemove:h.useCallback(()=>b(S=>S-1),[])},h.createElement(ue.div,Y({tabIndex:C||_===0?-1:0,"data-orientation":r},f,{ref:d,style:{outline:"none",...e.style},onMouseDown:ae(e.onMouseDown,()=>{E.current=!0}),onFocus:ae(e.onFocus,S=>{const $=!E.current;if(S.target===S.currentTarget&&$&&!C){const k=new CustomEvent(nc,O_);if(S.currentTarget.dispatchEvent(k),!k.defaultPrevented){const P=x().filter(z=>z.focusable),j=P.find(z=>z.active),L=P.find(z=>z.id===y),N=[j,L,...P].filter(Boolean).map(z=>z.ref.current);J1(N)}}E.current=!1}),onBlur:ae(e.onBlur,()=>v(!1))})))}),z_="RovingFocusGroupItem",B_=h.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:r=!0,active:o=!1,tabStopId:i,...a}=e,l=rn(),s=i||l,c=j_(z_,n),f=c.currentTabStopId===s,u=Z1(n),{onFocusableItemAdd:d,onFocusableItemRemove:p}=c;return h.useEffect(()=>{if(r)return d(),()=>p()},[r,d,p]),h.createElement(Ou.ItemSlot,{scope:n,id:s,focusable:r,active:o},h.createElement(ue.span,Y({tabIndex:f?0:-1,"data-orientation":c.orientation},a,{ref:t,onMouseDown:ae(e.onMouseDown,y=>{r?c.onItemFocus(s):y.preventDefault()}),onFocus:ae(e.onFocus,()=>c.onItemFocus(s)),onKeyDown:ae(e.onKeyDown,y=>{if(y.key==="Tab"&&y.shiftKey){c.onItemShiftTab();return}if(y.target!==y.currentTarget)return;const g=H_(y,c.orientation,c.dir);if(g!==void 0){y.preventDefault();let v=u().filter(m=>m.focusable).map(m=>m.ref.current);if(g==="last")v.reverse();else if(g==="prev"||g==="next"){g==="prev"&&v.reverse();const m=v.indexOf(y.currentTarget);v=c.loop?W_(v,m+1):v.slice(m+1)}setTimeout(()=>J1(v))}})})))}),U_={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function V_(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function H_(e,t,n){const r=V_(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(r))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(r)))return U_[r]}function J1(e){const t=document.activeElement;for(const n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function W_(e,t){return e.map((n,r)=>e[(t+r)%e.length])}const K_=D_,Y_=B_,q1="Tabs",[G_,t$]=En(q1,[X1]),ey=X1(),[Q_,sd]=G_(q1),Z_=h.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,onValueChange:o,defaultValue:i,orientation:a="horizontal",dir:l,activationMode:s="automatic",...c}=e,f=Vl(l),[u,d]=rr({prop:r,onChange:o,defaultProp:i});return h.createElement(Q_,{scope:n,baseId:rn(),value:u,onValueChange:d,orientation:a,dir:f,activationMode:s},h.createElement(ue.div,Y({dir:f,"data-orientation":a},c,{ref:t})))}),X_="TabsList",J_=h.forwardRef((e,t)=>{const{__scopeTabs:n,loop:r=!0,...o}=e,i=sd(X_,n),a=ey(n);return h.createElement(K_,Y({asChild:!0},a,{orientation:i.orientation,dir:i.dir,loop:r}),h.createElement(ue.div,Y({role:"tablist","aria-orientation":i.orientation},o,{ref:t})))}),q_="TabsTrigger",eS=h.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,disabled:o=!1,...i}=e,a=sd(q_,n),l=ey(n),s=ty(a.baseId,r),c=ny(a.baseId,r),f=r===a.value;return h.createElement(Y_,Y({asChild:!0},l,{focusable:!o,active:f}),h.createElement(ue.button,Y({type:"button",role:"tab","aria-selected":f,"aria-controls":c,"data-state":f?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:s},i,{ref:t,onMouseDown:ae(e.onMouseDown,u=>{!o&&u.button===0&&u.ctrlKey===!1?a.onValueChange(r):u.preventDefault()}),onKeyDown:ae(e.onKeyDown,u=>{[" ","Enter"].includes(u.key)&&a.onValueChange(r)}),onFocus:ae(e.onFocus,()=>{const u=a.activationMode!=="manual";!f&&!o&&u&&a.onValueChange(r)})})))}),tS="TabsContent",nS=h.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,forceMount:o,children:i,...a}=e,l=sd(tS,n),s=ty(l.baseId,r),c=ny(l.baseId,r),f=r===l.value,u=h.useRef(f);return h.useEffect(()=>{const d=requestAnimationFrame(()=>u.current=!1);return()=>cancelAnimationFrame(d)},[]),h.createElement(bn,{present:o||f},({present:d})=>h.createElement(ue.div,Y({"data-state":f?"active":"inactive","data-orientation":l.orientation,role:"tabpanel","aria-labelledby":s,hidden:!d,id:c,tabIndex:0},a,{ref:t,style:{...e.style,animationDuration:u.current?"0s":void 0}}),d&&i))});function ty(e,t){return`${e}-trigger-${t}`}function ny(e,t){return`${e}-content-${t}`}const rS=Z_,oS=J_,iS=eS,aS=nS;var lS="vocs_Tabs_content",sS="vocs_Tabs_list",cS="vocs_Tabs",uS="vocs_Tabs_trigger";function fS(e){return w.jsx(rS,{...e,className:I(e.className,cS)})}function dS(e){return w.jsx(oS,{...e,className:I(e.className,sS)})}function hS(e){return w.jsx(iS,{...e,className:I(e.className,uS)})}function pS(e){return w.jsx(aS,{...e,className:I(e.className,lS)})}var vS="vocs_CodeGroup";function mS({children:e}){const t=e.map(n=>{const r=n.props["data-title"]?n:n.props.children,{props:o}=r,i=o["data-title"],a=o.children;return{title:i,content:a}});return w.jsxs(fS,{className:vS,defaultValue:t[0].title,children:[w.jsx(dS,{"aria-label":"Code group",children:t.map(({title:n},r)=>w.jsx(hS,{value:n||r.toString(),children:n},n||r.toString()))}),t.map(({title:n,content:r},o)=>{var a,l;const i=(l=(a=r.props)==null?void 0:a.className)==null?void 0:l.includes("shiki");return w.jsx(pS,{"data-shiki":i,value:n||o.toString(),children:r},n||o.toString())})]})}var gS="vocs_Div",yS="vocs_Step_content",wS="vocs_Step",ry="vocs_Step_title",xS="vocs_H2";function oy(e){return w.jsx(To,{...e,className:I(e.className,xS),level:2})}var CS="vocs_H3";function iy(e){return w.jsx(To,{...e,className:I(e.className,CS),level:3})}var ES="vocs_H4";function ay(e){return w.jsx(To,{...e,className:I(e.className,ES),level:4})}var bS="vocs_H5";function ly(e){return w.jsx(To,{...e,className:I(e.className,bS),level:5})}var _S="vocs_H6";function sy(e){return w.jsx(To,{...e,className:I(e.className,_S),level:6})}function SS({children:e,className:t,title:n,titleLevel:r=2}){const o=(()=>{if(r===2)return oy;if(r===3)return iy;if(r===4)return ay;if(r===5)return ly;if(r===6)return sy;throw new Error("Invalid.")})();return w.jsxs("div",{className:I(t,wS),children:[typeof n=="string"?w.jsx(o,{className:ry,children:n}):n,w.jsx("div",{className:yS,children:e})]})}var $S="vocs_Steps";function TS({children:e,className:t}){return w.jsx("div",{className:I(t,$S),children:e})}function kS({children:e}){return Array.isArray(e)?w.jsx(TS,{children:e.map(({props:t},n)=>{const[r,...o]=Array.isArray(t.children)?t.children:[t.children];return w.jsx(SS,{title:h.cloneElement(r,{className:ry}),children:o},n)})}):null}var RS="vocs_Subtitle";function NS({children:e}){return w.jsx("div",{className:RS,role:"doc-subtitle",children:e})}function PS(e){const{layout:t}=Rr(),n=I(e.className,gS);return e.className==="code-group"?w.jsx(mS,{...e,className:n}):"data-authors"in e?w.jsx(Q1,{}):"data-blog-posts"in e?w.jsx(x_,{}):"data-sponsors"in e?w.jsx(R_,{}):"data-autolink-icon"in e&&t==="docs"?w.jsx(A_,{...e,className:n}):"data-vocs-steps"in e?w.jsx(kS,{...e,className:n}):e.role==="doc-subtitle"?w.jsx(NS,{...e}):w.jsx("div",{...e,className:n})}var AS="vocs_Figcaption";function OS(e){const t=I(e.className,AS);return w.jsx("figcaption",{...e,className:t})}var IS="vocs_Figure";function LS(e){const t=I(e.className,IS);return w.jsx("figure",{...e,className:t})}var MS="vocs_Header";function jS(e){return w.jsx("header",{...e,className:I(e.className,MS)})}var DS="vocs_HorizontalRule";function FS(e){return w.jsx("hr",{...e,className:I(e.className,DS)})}var zS="vocs_List_ordered",BS="vocs_List",US="vocs_List_unordered";function Wp({ordered:e,...t}){const n=e?"ol":"ul";return w.jsx(n,{...t,className:I(t.className,BS,e?zS:US)})}var VS="vocs_ListItem";function HS(e){return w.jsx("li",{...e,className:I(e.className,VS)})}function WS(){const e=h.useRef(null),[t,n]=h.useState(!1);h.useEffect(()=>{if(!t)return;const o=setTimeout(()=>n(!1),1e3);return()=>clearTimeout(o)},[t]);function r(){var a;n(!0);const o=(a=e.current)==null?void 0:a.cloneNode(!0),i=o==null?void 0:o.querySelectorAll("button,.line.diff.remove,.twoslash-popup-info-hover,.twoslash-popup-info,.twoslash-meta-line,.twoslash-tag-line");for(const l of i??[])l.remove();navigator.clipboard.writeText(o==null?void 0:o.textContent)}return{copied:t,copy:r,ref:e}}var KS="vocs_CopyButton";function YS(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 68 67",children:[w.jsx("title",{children:"Checkmark"}),w.jsx("path",{fill:"currentColor",d:"M26.175 66.121c1.904 0 3.418-.83 4.492-2.49L66.263 7.332c.83-1.27 1.123-2.295 1.123-3.32 0-2.393-1.563-4.004-4.004-4.004-1.758 0-2.734.586-3.809 2.295L25.98 56.209 8.304 32.381c-1.123-1.514-2.198-2.149-3.809-2.149-2.441 0-4.2 1.71-4.2 4.15 0 1.026.44 2.15 1.27 3.224l19.971 25.927c1.367 1.758 2.734 2.588 4.639 2.588Z"})]})}function GS(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 82 82",children:[w.jsx("title",{children:"Copy"}),w.jsx("path",{fill:"currentColor",d:"M12.451 63.281h38.38c8.3 0 12.45-4.053 12.45-12.256v-38.77C63.281 4.054 59.131 0 50.831 0H12.45C4.101 0 0 4.053 0 12.256v38.77C0 59.227 4.102 63.28 12.451 63.28Zm.098-7.031c-3.516 0-5.518-1.904-5.518-5.615V12.647c0-3.711 2.002-5.616 5.518-5.616h38.183c3.516 0 5.518 1.905 5.518 5.615v37.989c0 3.71-2.002 5.615-5.518 5.615H12.55Z"}),w.jsx("path",{stroke:"currentColor",strokeWidth:"6.75px",d:"M69.385 78.266h-38.38c-3.679 0-5.782-.894-6.987-2.081-1.196-1.178-2.088-3.219-2.088-6.8v-38.77c0-3.581.892-5.622 2.088-6.8 1.205-1.187 3.308-2.08 6.988-2.08h38.379c3.65 0 5.758.89 6.973 2.084 1.203 1.182 2.103 3.225 2.103 6.796v38.77c0 3.57-.9 5.614-2.103 6.796-1.215 1.193-3.323 2.085-6.973 2.085Z"})]})}function QS({copy:e,copied:t}){return w.jsx("button",{className:KS,onClick:e,type:"button",children:t?w.jsx(st,{label:"Copied",size:"14px",icon:YS}):w.jsx(st,{label:"Copy",size:"18px",icon:GS})})}var ZS="vocs_CodeBlock";function XS(e){return w.jsx("div",{...e,className:I(e.className,ZS)})}function JS(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 94 99",fill:"none",children:[w.jsx("title",{children:"File"}),w.jsx("rect",{width:"77px",height:"89px",x:"8px",y:"3px",stroke:"currentColor",strokeWidth:"6px",rx:"7px"}),w.jsx("path",{stroke:"currentColor",strokeLinecap:"round",strokeWidth:"6px",d:"M25 22h43M25 35h43M25 48h22"})]})}function qS(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 79 95",fill:"none",children:[w.jsx("title",{children:"Terminal"}),w.jsx("path",{fill:"currentColor",d:"M38.281 34.033c0-1.074-.39-2.05-1.22-2.88L6.885 1.171C6.152.39 5.175 0 4.053 0 1.758 0 0 1.709 0 4.004c0 1.074.488 2.1 1.172 2.88l27.295 27.15L1.172 61.181C.488 61.962 0 62.939 0 64.062c0 2.295 1.758 4.004 4.053 4.004 1.123 0 2.1-.39 2.832-1.172l30.176-29.98c.83-.83 1.22-1.807 1.22-2.88Z"}),w.jsx("path",{stroke:"currentColor",strokeLinecap:"round",strokeWidth:"8px",d:"M36 75h55"})]})}var e9="vocs_CodeTitle";function t9({children:e,className:t,language:n,...r}){return w.jsxs("div",{...r,className:I(t,e9),children:[n==="bash"?w.jsx(st,{label:"Terminal",size:"14px",icon:qS,style:{marginTop:3}}):e.match(/\.(.*)$/)?w.jsx(st,{label:"File",size:"14px",icon:JS,style:{marginTop:1}}):null,e]})}var n9="vocs_Pre",r9="vocs_Pre_wrapper";function o9({children:e,className:t,...n}){const{copied:r,copy:o,ref:i}=WS();function a(c){return!c||typeof c!="object"?c:"props"in c?{...c,props:{...c.props,children:Array.isArray(c.props.children)?c.props.children.map(a):a(c.props.children)}}:c}const l=h.useMemo(()=>a(e),[e]);return(c=>t!=null&&t.includes("shiki")?w.jsxs(XS,{children:[n["data-title"]&&w.jsx(t9,{language:n["data-lang"],children:n["data-title"]}),c]}):c)(w.jsx("div",{className:I(r9),children:w.jsxs("pre",{ref:i,...n,className:I(t,n9),children:["data-language"in n&&w.jsx(QS,{copied:r,copy:o}),l]})}))}var i9="vocs_Footnotes";function a9(e){return w.jsx("section",{...e,className:I(e.className,i9)})}var Kp="vocs_Section";function l9(e){return"data-footnotes"in e?w.jsx(a9,{...e,className:I(e.className,Kp)}):w.jsx("section",{...e,className:I(e.className,Kp)})}var Yp="vocs_Span";function Va(e,t){if(!e||!t)return!1;const n=t.getRootNode==null?void 0:t.getRootNode();if(e.contains(t))return!0;if(n&&Su(n)){let r=t;for(;r;){if(e===r)return!0;r=r.parentNode||r.host}}return!1}function cy(e,t){const n=["mouse","pen"];return t||n.push("",void 0),n.includes(e)}function Sa(e){return(e==null?void 0:e.ownerDocument)||document}function s9(e){return"composedPath"in e?e.composedPath()[0]:e.target}const c9=bl.useInsertionEffect,u9=c9||(e=>e());function f9(e){const t=h.useRef(()=>{});return u9(()=>{t.current=e}),h.useCallback(function(){for(var n=arguments.length,r=new Array(n),o=0;o"floating-ui-"+d9++;function h9(){const[e,t]=h.useState(()=>rc?Gp():void 0);return Ii(()=>{e==null&&t(Gp())},[]),h.useEffect(()=>{rc||(rc=!0)},[]),e}const p9=bl.useId,uy=p9||h9,v9=h.forwardRef(function(t,n){let{context:{placement:r,elements:{floating:o},middlewareData:{arrow:i}},width:a=14,height:l=7,tipRadius:s=0,strokeWidth:c=0,staticOffset:f,stroke:u,d,style:{transform:p,...y}={},...g}=t;const C=uy();if(!o)return null;c*=2;const v=c/2,m=a/2*(s/-8+1),x=l/2*s/4,[E,_]=r.split("-"),b=v1.isRTL(o),S=!!d,$=E==="top"||E==="bottom",k=f&&_==="end"?"bottom":"top";let P=f&&_==="end"?"right":"left";f&&b&&(P=_==="end"?"left":"right");const j=(i==null?void 0:i.x)!=null?f||i.x:"",L=(i==null?void 0:i.y)!=null?f||i.y:"",D=d||"M0,0"+(" H"+a)+(" L"+(a-m)+","+(l-x))+(" Q"+a/2+","+l+" "+m+","+(l-x))+" Z",N={top:S?"rotate(180deg)":"",left:S?"rotate(90deg)":"rotate(-90deg)",bottom:S?"":"rotate(180deg)",right:S?"rotate(-90deg)":"rotate(90deg)"}[E];return h.createElement("svg",Iu({},g,{"aria-hidden":!0,ref:n,width:S?a:a+c,height:a,viewBox:"0 0 "+a+" "+(l>a?l:a),style:{position:"absolute",pointerEvents:"none",[P]:j,[k]:L,[E]:$||S?"100%":"calc(100% - "+c/2+"px)",transform:""+N+(p??""),...y}}),c>0&&h.createElement("path",{clipPath:"url(#"+C+")",fill:"none",stroke:u,strokeWidth:c+(d?0:1),d:D}),h.createElement("path",{stroke:c&&!d?g.fill:"none",d:D}),h.createElement("clipPath",{id:C},h.createElement("rect",{x:-v,y:v*(S?-1:1),width:a+c,height:a})))});function m9(){const e=new Map;return{emit(t,n){var r;(r=e.get(t))==null||r.forEach(o=>o(n))},on(t,n){e.set(t,[...e.get(t)||[],n])},off(t,n){var r;e.set(t,((r=e.get(t))==null?void 0:r.filter(o=>o!==n))||[])}}}const g9=h.createContext(null),y9=h.createContext(null),fy=()=>{var e;return((e=h.useContext(g9))==null?void 0:e.id)||null},dy=()=>h.useContext(y9);function w9(e){return"data-floating-ui-"+e}function Qp(e){const t=h.useRef(e);return Ii(()=>{t.current=e}),t}const Zp=w9("safe-polygon");function oc(e,t,n){return n&&!cy(n)?0:typeof e=="number"?e:e==null?void 0:e[t]}function x9(e,t){t===void 0&&(t={});const{open:n,onOpenChange:r,dataRef:o,events:i,elements:{domReference:a,floating:l},refs:s}=e,{enabled:c=!0,delay:f=0,handleClose:u=null,mouseOnly:d=!1,restMs:p=0,move:y=!0}=t,g=dy(),C=fy(),v=Qp(u),m=Qp(f),x=h.useRef(),E=h.useRef(),_=h.useRef(),b=h.useRef(),S=h.useRef(!0),$=h.useRef(!1),k=h.useRef(()=>{}),P=h.useCallback(()=>{var N;const z=(N=o.current.openEvent)==null?void 0:N.type;return(z==null?void 0:z.includes("mouse"))&&z!=="mousedown"},[o]);h.useEffect(()=>{if(!c)return;function N(z){let{open:H}=z;H||(clearTimeout(E.current),clearTimeout(b.current),S.current=!0)}return i.on("openchange",N),()=>{i.off("openchange",N)}},[c,i]),h.useEffect(()=>{if(!c||!v.current||!n)return;function N(H){P()&&r(!1,H,"hover")}const z=Sa(l).documentElement;return z.addEventListener("mouseleave",N),()=>{z.removeEventListener("mouseleave",N)}},[l,n,r,c,v,P]);const j=h.useCallback(function(N,z,H){z===void 0&&(z=!0),H===void 0&&(H="hover");const B=oc(m.current,"close",x.current);B&&!_.current?(clearTimeout(E.current),E.current=setTimeout(()=>r(!1,N,H),B)):z&&(clearTimeout(E.current),r(!1,N,H))},[m,r]),L=h.useCallback(()=>{k.current(),_.current=void 0},[]),D=h.useCallback(()=>{if($.current){const N=Sa(s.floating.current).body;N.style.pointerEvents="",N.removeAttribute(Zp),$.current=!1}},[s]);return h.useEffect(()=>{if(!c)return;function N(){return o.current.openEvent?["click","mousedown"].includes(o.current.openEvent.type):!1}function z(O){if(clearTimeout(E.current),S.current=!1,d&&!cy(x.current)||p>0&&oc(m.current,"open")===0)return;const F=oc(m.current,"open",x.current);F?E.current=setTimeout(()=>{r(!0,O,"hover")},F):r(!0,O,"hover")}function H(O){if(N())return;k.current();const F=Sa(l);if(clearTimeout(b.current),v.current){n||clearTimeout(E.current),_.current=v.current({...e,tree:g,x:O.clientX,y:O.clientY,onClose(){D(),L(),j(O,!0,"safe-polygon")}});const J=_.current;F.addEventListener("mousemove",J),k.current=()=>{F.removeEventListener("mousemove",J)};return}(x.current==="touch"?!Va(l,O.relatedTarget):!0)&&j(O)}function B(O){N()||v.current==null||v.current({...e,tree:g,x:O.clientX,y:O.clientY,onClose(){D(),L(),j(O)}})(O)}if(nt(a)){const O=a;return n&&O.addEventListener("mouseleave",B),l==null||l.addEventListener("mouseleave",B),y&&O.addEventListener("mousemove",z,{once:!0}),O.addEventListener("mouseenter",z),O.addEventListener("mouseleave",H),()=>{n&&O.removeEventListener("mouseleave",B),l==null||l.removeEventListener("mouseleave",B),y&&O.removeEventListener("mousemove",z),O.removeEventListener("mouseenter",z),O.removeEventListener("mouseleave",H)}}},[a,l,c,e,d,p,y,j,L,D,r,n,g,m,v,o]),Ii(()=>{var N;if(c&&n&&(N=v.current)!=null&&N.__options.blockPointerEvents&&P()){const H=Sa(l).body;if(H.setAttribute(Zp,""),H.style.pointerEvents="none",$.current=!0,nt(a)&&l){var z;const B=a,O=g==null||(z=g.nodesRef.current.find(F=>F.id===C))==null||(z=z.context)==null?void 0:z.elements.floating;return O&&(O.style.pointerEvents=""),B.style.pointerEvents="auto",l.style.pointerEvents="auto",()=>{B.style.pointerEvents="",l.style.pointerEvents=""}}}},[c,n,C,l,a,g,v,P]),Ii(()=>{n||(x.current=void 0,L(),D())},[n,L,D]),h.useEffect(()=>()=>{L(),clearTimeout(E.current),clearTimeout(b.current),D()},[c,a,L,D]),h.useMemo(()=>{if(!c)return{};function N(z){x.current=z.pointerType}return{reference:{onPointerDown:N,onPointerEnter:N,onMouseMove(z){n||p===0||(clearTimeout(b.current),b.current=setTimeout(()=>{S.current||r(!0,z.nativeEvent,"hover")},p))}},floating:{onMouseEnter(){clearTimeout(E.current)},onMouseLeave(z){j(z.nativeEvent,!1)}}}},[c,p,n,r,j])}function C9(e,t){let n=e.filter(o=>{var i;return o.parentId===t&&((i=o.context)==null?void 0:i.open)}),r=n;for(;r.length;)r=e.filter(o=>{var i;return(i=r)==null?void 0:i.some(a=>{var l;return o.parentId===a.id&&((l=o.context)==null?void 0:l.open)})}),n=n.concat(r);return n}function E9(e){var t;e===void 0&&(e={});const{open:n=!1,onOpenChange:r,nodeId:o}=e,[i,a]=h.useState(null),l=((t=e.elements)==null?void 0:t.reference)||i,s=w1(e),c=dy(),f=fy()!=null,u=f9((_,b,S)=>{_&&(p.current.openEvent=b),y.emit("openchange",{open:_,event:b,reason:S,nested:f}),r==null||r(_,b,S)}),d=h.useRef(null),p=h.useRef({}),y=h.useState(()=>m9())[0],g=uy(),C=h.useCallback(_=>{const b=nt(_)?{getBoundingClientRect:()=>_.getBoundingClientRect(),contextElement:_}:_;s.refs.setReference(b)},[s.refs]),v=h.useCallback(_=>{(nt(_)||_===null)&&(d.current=_,a(_)),(nt(s.refs.reference.current)||s.refs.reference.current===null||_!==null&&!nt(_))&&s.refs.setReference(_)},[s.refs]),m=h.useMemo(()=>({...s.refs,setReference:v,setPositionReference:C,domReference:d}),[s.refs,v,C]),x=h.useMemo(()=>({...s.elements,domReference:l}),[s.elements,l]),E=h.useMemo(()=>({...s,refs:m,elements:x,dataRef:p,nodeId:o,floatingId:g,events:y,open:n,onOpenChange:u}),[s,o,g,y,n,u,m,x]);return Ii(()=>{const _=c==null?void 0:c.nodesRef.current.find(b=>b.id===o);_&&(_.context=E)}),h.useMemo(()=>({...s,context:E,refs:m,elements:x}),[s,m,x,E])}const Xp="active",Jp="selected";function ic(e,t,n){const r=new Map,o=n==="item";let i=e;if(o&&e){const{[Xp]:a,[Jp]:l,...s}=e;i=s}return{...n==="floating"&&{tabIndex:-1},...i,...t.map(a=>{const l=a?a[n]:null;return typeof l=="function"?e?l(e):null:l}).concat(e).reduce((a,l)=>(l&&Object.entries(l).forEach(s=>{let[c,f]=s;if(!(o&&[Xp,Jp].includes(c)))if(c.indexOf("on")===0){if(r.has(c)||r.set(c,[]),typeof f=="function"){var u;(u=r.get(c))==null||u.push(f),a[c]=function(){for(var d,p=arguments.length,y=new Array(p),g=0;gC(...y)).find(C=>C!==void 0)}}}else a[c]=f}),a),{})}}function b9(e){e===void 0&&(e=[]);const t=e,n=h.useCallback(i=>ic(i,e,"reference"),t),r=h.useCallback(i=>ic(i,e,"floating"),t),o=h.useCallback(i=>ic(i,e,"item"),e.map(i=>i==null?void 0:i.item));return h.useMemo(()=>({getReferenceProps:n,getFloatingProps:r,getItemProps:o}),[n,r,o])}function qp(e,t){const[n,r]=e;let o=!1;const i=t.length;for(let a=0,l=i-1;a=r!=u>=r&&n<=(f-s)*(r-c)/(u-c)+s&&(o=!o)}return o}function _9(e,t){return e[0]>=t.x&&e[0]<=t.x+t.width&&e[1]>=t.y&&e[1]<=t.y+t.height}function S9(e){e===void 0&&(e={});const{buffer:t=.5,blockPointerEvents:n=!1,requireIntent:r=!0}=e;let o,i=!1,a=null,l=null,s=performance.now();function c(u,d){const p=performance.now(),y=p-s;if(a===null||l===null||y===0)return a=u,l=d,s=p,null;const g=u-a,C=d-l,m=Math.sqrt(g*g+C*C)/y;return a=u,l=d,s=p,m}const f=u=>{let{x:d,y:p,placement:y,elements:g,onClose:C,nodeId:v,tree:m}=u;return function(E){function _(){clearTimeout(o),C()}if(clearTimeout(o),!g.domReference||!g.floating||y==null||d==null||p==null)return;const{clientX:b,clientY:S}=E,$=[b,S],k=s9(E),P=E.type==="mouseleave",j=Va(g.floating,k),L=Va(g.domReference,k),D=g.domReference.getBoundingClientRect(),N=g.floating.getBoundingClientRect(),z=y.split("-")[0],H=d>N.right-N.width/2,B=p>N.bottom-N.height/2,O=_9($,D),F=N.width>D.width,W=N.height>D.height,J=(F?D:N).left,se=(F?D:N).right,Ue=(W?D:N).top,ge=(W?D:N).bottom;if(j&&(i=!0,!P))return;if(L&&(i=!1),L&&!P){i=!0;return}if(P&&nt(E.relatedTarget)&&Va(g.floating,E.relatedTarget)||m&&C9(m.nodesRef.current,v).some(Ve=>{let{context:we}=Ve;return we==null?void 0:we.open}))return;if(z==="top"&&p>=D.bottom-1||z==="bottom"&&p<=D.top+1||z==="left"&&d>=D.right-1||z==="right"&&d<=D.left+1)return _();let Ne=[];switch(z){case"top":Ne=[[J,D.top+1],[J,N.bottom-1],[se,N.bottom-1],[se,D.top+1]];break;case"bottom":Ne=[[J,N.top+1],[J,D.bottom-1],[se,D.bottom-1],[se,N.top+1]];break;case"left":Ne=[[N.right-1,ge],[N.right-1,Ue],[D.left+1,Ue],[D.left+1,ge]];break;case"right":Ne=[[D.right-1,ge],[D.right-1,Ue],[N.left+1,Ue],[N.left+1,ge]];break}function ye(Ve){let[we,_e]=Ve;switch(z){case"top":{const Mt=[F?we+t/2:H?we+t*4:we-t*4,_e+t+1],Se=[F?we-t/2:H?we+t*4:we-t*4,_e+t+1],ft=[[N.left,H||F?N.bottom-t:N.top],[N.right,H?F?N.bottom-t:N.top:N.bottom-t]];return[Mt,Se,...ft]}case"bottom":{const Mt=[F?we+t/2:H?we+t*4:we-t*4,_e-t],Se=[F?we-t/2:H?we+t*4:we-t*4,_e-t],ft=[[N.left,H||F?N.top+t:N.bottom],[N.right,H?F?N.top+t:N.bottom:N.top+t]];return[Mt,Se,...ft]}case"left":{const Mt=[we+t+1,W?_e+t/2:B?_e+t*4:_e-t*4],Se=[we+t+1,W?_e-t/2:B?_e+t*4:_e-t*4];return[...[[B||W?N.right-t:N.left,N.top],[B?W?N.right-t:N.left:N.right-t,N.bottom]],Mt,Se]}case"right":{const Mt=[we-t,W?_e+t/2:B?_e+t*4:_e-t*4],Se=[we-t,W?_e-t/2:B?_e+t*4:_e-t*4],ft=[[B||W?N.left+t:N.right,N.top],[B?W?N.left+t:N.right:N.left+t,N.bottom]];return[Mt,Se,...ft]}}}if(!qp([b,S],Ne)){if(i&&!O)return _();if(!P&&r){const Ve=c(E.clientX,E.clientY);if(Ve!==null&&Ve<.1)return _()}qp([b,S],ye([d,p]))?!i&&r&&(o=window.setTimeout(_,40)):_()}}};return f.__options={blockPointerEvents:n},f}function $9({children:e,...t}){const[n,r]=e,o=h.useRef(null),[i,a]=h.useState(!1),{context:l,refs:s,floatingStyles:c}=E9({middleware:[g1({element:o}),i1(8),m1()],open:i,onOpenChange:a,placement:"bottom-start"}),f=x9(l,{handleClose:S9()}),{getReferenceProps:u,getFloatingProps:d}=b9([f]),p=r.props.children,y=n.props.children;return w.jsxs("span",{...t,children:[w.jsx("span",{className:"twoslash-target",ref:s.setReference,...u(),children:p}),i&&w.jsxs("div",{className:"twoslash-popup-info-hover",ref:s.setFloating,style:c,...d(),children:[w.jsx(v9,{ref:o,context:l,fill:Kh.background5,height:3,stroke:Kh.border2,strokeWidth:1,width:7}),w.jsx("div",{className:"twoslash-popup-scroll-container",children:y})]})]})}function T9(e){var n;const t=I(e.className,Yp);return(n=e.className)!=null&&n.includes("twoslash-hover")?w.jsx($9,{...e,className:t}):w.jsx("span",{...e,className:I(e.className,Yp)})}var k9="vocs_CalloutTitle";function R9({className:e,children:t}){return w.jsx("strong",{className:I(e,k9),children:t})}var ev="vocs_Strong";function N9(e){return"data-callout-title"in e&&typeof e.children=="string"?w.jsx(R9,{...e,className:I(e.className,ev),children:e.children}):w.jsx("strong",{...e,className:I(e.className,ev)})}var P9="vocs_Summary";function A9(e){return w.jsx("summary",{...e,className:I(e.className,P9)})}var O9="vocs_Table";function I9(e){return w.jsx("table",{...e,className:I(e.className,O9)})}var L9="vocs_TableCell";function M9(e){return w.jsx("td",{...e,className:I(e.className,L9)})}var j9="vocs_TableHeader";function D9(e){return w.jsx("th",{...e,className:I(e.className,j9)})}var F9="vocs_TableRow";function z9(e){return w.jsx("tr",{...e,className:I(e.className,F9)})}const B9={a:Kb,aside:n_,blockquote:o_,code:a_,details:c_,div:PS,pre:o9,header:jS,figcaption:OS,figure:LS,h1:U0,h2:oy,h3:iy,h4:ay,h5:ly,h6:sy,hr:FS,kd:$g,li:HS,ol:e=>w.jsx(Wp,{ordered:!0,...e}),p:V0,section:l9,span:T9,strong:N9,summary:A9,table:I9,td:M9,th:D9,tr:z9,ul:e=>w.jsx(Wp,{ordered:!1,...e})};function U9(){const{pathname:e}=Re(),t=ot(),{ogImageUrl:n}=t;if(!n)return;if(typeof n=="string")return n;const r=h.useMemo(()=>{const o=Object.keys(n).filter(i=>e.startsWith(i));return o[o.length-1]},[n,e]);if(r)return n[r]}function Lu(e){const{children:t,filePath:n,frontmatter:r,lastUpdatedAt:o,path:i}=e,{pathname:a}=Re(),l=h.useRef();return h.useEffect(()=>{l.current=a}),w.jsxs(w.Fragment,{children:[w.jsx(V9,{frontmatter:r}),typeof window<"u"&&w.jsx(gx,{}),w.jsx(QE,{components:B9,children:w.jsx(A7,{frontmatter:r,path:i,children:w.jsx(K0.Provider,{value:{filePath:n,frontmatter:r,lastUpdatedAt:o,previousPath:l.current},children:t})})})]})}function V9({frontmatter:e}){const t=ot(),n=U9(),{baseUrl:r,font:o,iconUrl:i,logoUrl:a}=t,l=(e==null?void 0:e.title)??t.title,s=(e==null?void 0:e.description)??t.description,c=t.title&&!l.includes(t.title),f=typeof window<"u"&&window.location.hostname==="localhost";return w.jsxs(Au,{defaultTitle:t.title,titleTemplate:c?t.titleTemplate:void 0,children:[l&&w.jsx("title",{children:l}),r&&!0&&!f&&w.jsx("base",{href:r}),s!=="undefined"&&w.jsx("meta",{name:"description",content:s}),i&&typeof i=="string"&&w.jsx("link",{rel:"icon",href:i,type:ac(i)}),i&&typeof i!="string"&&w.jsx("link",{rel:"icon",href:i.light,type:ac(i.light)}),i&&typeof i!="string"&&w.jsx("link",{rel:"icon",href:i.dark,type:ac(i.dark),media:"(prefers-color-scheme: dark)"}),w.jsx("meta",{property:"og:type",content:"website"}),w.jsx("meta",{property:"og:title",content:l||t.title}),r&&w.jsx("meta",{property:"og:url",content:r}),s!=="undefined"&&w.jsx("meta",{property:"og:description",content:s}),n&&w.jsx("meta",{property:"og:image",content:n.replace("%logo",`${r||""}${typeof a=="string"?a:(a==null?void 0:a.dark)||""}`).replace("%title",l||"").replace("%description",(s!=="undefined"?s:"")||"")}),(o==null?void 0:o.google)&&w.jsx("link",{rel:"preconnect",href:"https://fonts.googleapis.com"}),(o==null?void 0:o.google)&&w.jsx("link",{rel:"preconnect",href:"https://fonts.gstatic.com",crossOrigin:""}),(o==null?void 0:o.google)&&w.jsx("link",{href:`https://fonts.googleapis.com/css2?family=${o.google}:wght@300;400;500&display=swap`,rel:"stylesheet"}),w.jsx("meta",{name:"twitter:card",content:"summary_large_image"}),n&&w.jsx("meta",{property:"twitter:image",content:n.replace("%logo",`${r||""}${typeof a=="string"?a:(a==null?void 0:a.dark)||""}`).replace("%title",l||"").replace("%description",(s!=="undefined"?s:"")||"")})]})}function ac(e){if(e.endsWith(".svg"))return"image/svg+xml";if(e.endsWith(".png"))return"image/png";if(e.endsWith(".jpg"))return"image/jpeg";if(e.endsWith(".ico"))return"image/x-icon";if(e.endsWith(".webp"))return"image/webp"}const H9=(()=>{const e=Ff.find(({path:t})=>t==="*");return e?{path:e.path,lazy:async()=>{const{frontmatter:t,...n}=await e.lazy();return{...n,element:w.jsx(Lu,{frontmatter:t,path:e.path,children:w.jsx(Tu,{children:w.jsx(n.default,{})})})}}}:{path:"*",lazy:void 0,element:w.jsx(Lu,{frontmatter:{layout:"minimal"},path:"*",children:w.jsx(Tu,{children:w.jsx(Vx,{})})})}})(),tv=[...Ff.filter(({path:e})=>e!=="*").map(e=>({path:e.path,lazy:async()=>{const{frontmatter:t,...n}=await e.lazy();return{...n,element:w.jsx(Lu,{filePath:e.filePath,frontmatter:t,lastUpdatedAt:e.lastUpdatedAt,path:e.path,children:w.jsx(Tu,{children:w.jsx(n.default,{})})})}}})),H9];async function W9(e,t){var r;const n=(r=ur(e,window.location,t))==null?void 0:r.filter(o=>o.route.lazy);n&&(n==null?void 0:n.length)>0&&await Promise.all(n.map(async o=>{const i=await o.route.lazy();Object.assign(o.route,{...i,lazy:void 0})}))}function K9(){const e=document.querySelectorAll('style[data-vocs-temp-style="true"]');for(const t of e)t.remove()}Y9();async function Y9(){const e=M0().basePath;await W9(tv,e),K9();const t=ox(tv,{basename:e});m0(document.getElementById("app"),w.jsx(bx,{children:w.jsx(hx,{router:t})}))}export{pS as C,nn as L,fS as R,hS as T,M6 as a,dS as b,I as c,GE as d,Jn as e,G9 as g,w as j,eb as p,h as r,ot as u}; +*/var Fp=Object.getOwnPropertySymbols,pb=Object.prototype.hasOwnProperty,vb=Object.prototype.propertyIsEnumerable;function mb(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function gb(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;var r=Object.getOwnPropertyNames(t).map(function(i){return t[i]});if(r.join("")!=="0123456789")return!1;var o={};return"abcdefghijklmnopqrst".split("").forEach(function(i){o[i]=i}),Object.keys(Object.assign({},o)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}var yb=gb()?Object.assign:function(e,t){for(var n,r=mb(e),o,i=1;i=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n},$b=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&(typeof t=="object"||typeof t=="function")?t:e},Ru=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return n===!1?String(t):String(t).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},Tb=function(t){var n=so(t,q.TITLE),r=so(t,Oi.TITLE_TEMPLATE);if(r&&n)return r.replace(/%s/g,function(){return Array.isArray(n)?n.join(""):n});var o=so(t,Oi.DEFAULT_TITLE);return n||o||void 0},kb=function(t){return so(t,Oi.ON_CHANGE_CLIENT_STATE)||function(){}},ec=function(t,n){return n.filter(function(r){return typeof r[t]<"u"}).map(function(r){return r[t]}).reduce(function(r,o){return dt({},r,o)},{})},Rb=function(t,n){return n.filter(function(r){return typeof r[q.BASE]<"u"}).map(function(r){return r[q.BASE]}).reverse().reduce(function(r,o){if(!r.length)for(var i=Object.keys(o),a=0;a=0;r--){var o=t[r];if(o.hasOwnProperty(n))return o[n]}return null},Nb=function(t){return{baseTag:Rb([Ee.HREF,Ee.TARGET],t),bodyAttributes:ec(vr.BODY,t),defer:so(t,Oi.DEFER),encode:so(t,Oi.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:ec(vr.HTML,t),linkTags:Go(q.LINK,[Ee.REL,Ee.HREF],t),metaTags:Go(q.META,[Ee.NAME,Ee.CHARSET,Ee.HTTPEQUIV,Ee.PROPERTY,Ee.ITEM_PROP],t),noscriptTags:Go(q.NOSCRIPT,[Ee.INNER_HTML],t),onChangeClientState:kb(t),scriptTags:Go(q.SCRIPT,[Ee.SRC,Ee.INNER_HTML],t),styleTags:Go(q.STYLE,[Ee.CSS_TEXT],t),title:Tb(t),titleAttributes:ec(vr.TITLE,t)}},Nu=function(){var e=Date.now();return function(t){var n=Date.now();n-e>16?(e=n,t(n)):setTimeout(function(){Nu(t)},0)}}(),Bp=function(t){return clearTimeout(t)},Pb=typeof window<"u"?window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||Nu:global.requestAnimationFrame||Nu,Ab=typeof window<"u"?window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||Bp:global.cancelAnimationFrame||Bp,Ob=function(t){return console&&typeof console.warn=="function"&&console.warn(t)},Yo=null,Ib=function(t){Yo&&Ab(Yo),t.defer?Yo=Pb(function(){Up(t,function(){Yo=null})}):(Up(t),Yo=null)},Up=function(t,n){var r=t.baseTag,o=t.bodyAttributes,i=t.htmlAttributes,a=t.linkTags,l=t.metaTags,s=t.noscriptTags,c=t.onChangeClientState,f=t.scriptTags,u=t.styleTags,d=t.title,p=t.titleAttributes;Pu(q.BODY,o),Pu(q.HTML,i),Lb(d,p);var y={baseTag:zr(q.BASE,r),linkTags:zr(q.LINK,a),metaTags:zr(q.META,l),noscriptTags:zr(q.NOSCRIPT,s),scriptTags:zr(q.SCRIPT,f),styleTags:zr(q.STYLE,u)},g={},C={};Object.keys(y).forEach(function(v){var m=y[v],x=m.newTags,E=m.oldTags;x.length&&(g[v]=x),E.length&&(C[v]=y[v].oldTags)}),n&&n(),c(t,g,C)},H1=function(t){return Array.isArray(t)?t.join(""):t},Lb=function(t,n){typeof t<"u"&&document.title!==t&&(document.title=H1(t)),Pu(q.TITLE,n)},Pu=function(t,n){var r=document.getElementsByTagName(t)[0];if(r){for(var o=r.getAttribute(Vt),i=o?o.split(","):[],a=[].concat(i),l=Object.keys(n),s=0;s=0;d--)r.removeAttribute(a[d]);i.length===a.length?r.removeAttribute(Vt):r.getAttribute(Vt)!==l.join(",")&&r.setAttribute(Vt,l.join(","))}},zr=function(t,n){var r=document.head||document.querySelector(q.HEAD),o=r.querySelectorAll(t+"["+Vt+"]"),i=Array.prototype.slice.call(o),a=[],l=void 0;return n&&n.length&&n.forEach(function(s){var c=document.createElement(t);for(var f in s)if(s.hasOwnProperty(f))if(f===Ee.INNER_HTML)c.innerHTML=s.innerHTML;else if(f===Ee.CSS_TEXT)c.styleSheet?c.styleSheet.cssText=s.cssText:c.appendChild(document.createTextNode(s.cssText));else{var u=typeof s[f]>"u"?"":s[f];c.setAttribute(f,u)}c.setAttribute(Vt,"true"),i.some(function(d,p){return l=p,c.isEqualNode(d)})?i.splice(l,1):a.push(c)}),i.forEach(function(s){return s.parentNode.removeChild(s)}),a.forEach(function(s){return r.appendChild(s)}),{oldTags:i,newTags:a}},W1=function(t){return Object.keys(t).reduce(function(n,r){var o=typeof t[r]<"u"?r+'="'+t[r]+'"':""+r;return n?n+" "+o:o},"")},Mb=function(t,n,r,o){var i=W1(r),a=H1(n);return i?"<"+t+" "+Vt+'="true" '+i+">"+Ru(a,o)+"":"<"+t+" "+Vt+'="true">'+Ru(a,o)+""},jb=function(t,n,r){return n.reduce(function(o,i){var a=Object.keys(i).filter(function(c){return!(c===Ee.INNER_HTML||c===Ee.CSS_TEXT)}).reduce(function(c,f){var u=typeof i[f]>"u"?f:f+'="'+Ru(i[f],r)+'"';return c?c+" "+u:u},""),l=i.innerHTML||i.cssText||"",s=Cb.indexOf(t)===-1;return o+"<"+t+" "+Vt+'="true" '+a+(s?"/>":">"+l+"")},"")},K1=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return Object.keys(t).reduce(function(r,o){return r[Cl[o]||o]=t[o],r},n)},Db=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return Object.keys(t).reduce(function(r,o){return r[xb[o]||o]=t[o],r},n)},Fb=function(t,n,r){var o,i=(o={key:n},o[Vt]=!0,o),a=K1(r,i);return[Q.createElement(q.TITLE,a,n)]},zb=function(t,n){return n.map(function(r,o){var i,a=(i={key:o},i[Vt]=!0,i);return Object.keys(r).forEach(function(l){var s=Cl[l]||l;if(s===Ee.INNER_HTML||s===Ee.CSS_TEXT){var c=r.innerHTML||r.cssText;a.dangerouslySetInnerHTML={__html:c}}else a[s]=r[l]}),Q.createElement(t,a)})},an=function(t,n,r){switch(t){case q.TITLE:return{toComponent:function(){return Fb(t,n.title,n.titleAttributes)},toString:function(){return Mb(t,n.title,n.titleAttributes,r)}};case vr.BODY:case vr.HTML:return{toComponent:function(){return K1(n)},toString:function(){return W1(n)}};default:return{toComponent:function(){return zb(t,n)},toString:function(){return jb(t,n,r)}}}},G1=function(t){var n=t.baseTag,r=t.bodyAttributes,o=t.encode,i=t.htmlAttributes,a=t.linkTags,l=t.metaTags,s=t.noscriptTags,c=t.scriptTags,f=t.styleTags,u=t.title,d=u===void 0?"":u,p=t.titleAttributes;return{base:an(q.BASE,n,o),bodyAttributes:an(vr.BODY,r,o),htmlAttributes:an(vr.HTML,i,o),link:an(q.LINK,a,o),meta:an(q.META,l,o),noscript:an(q.NOSCRIPT,s,o),script:an(q.SCRIPT,c,o),style:an(q.STYLE,f,o),title:an(q.TITLE,{title:d,titleAttributes:p},o)}},Bb=function(t){var n,r;return r=n=function(o){Sb(i,o);function i(){return bb(this,i),$b(this,o.apply(this,arguments))}return i.prototype.shouldComponentUpdate=function(l){return!hb(this.props,l)},i.prototype.mapNestedChildrenToProps=function(l,s){if(!s)return null;switch(l.type){case q.SCRIPT:case q.NOSCRIPT:return{innerHTML:s};case q.STYLE:return{cssText:s}}throw new Error("<"+l.type+" /> elements are self-closing and can not contain children. Refer to our API for more information.")},i.prototype.flattenArrayTypeChildren=function(l){var s,c=l.child,f=l.arrayTypeChildren,u=l.newChildProps,d=l.nestedChildren;return dt({},f,(s={},s[c.type]=[].concat(f[c.type]||[],[dt({},u,this.mapNestedChildrenToProps(c,d))]),s))},i.prototype.mapObjectTypeChildren=function(l){var s,c,f=l.child,u=l.newProps,d=l.newChildProps,p=l.nestedChildren;switch(f.type){case q.TITLE:return dt({},u,(s={},s[f.type]=p,s.titleAttributes=dt({},d),s));case q.BODY:return dt({},u,{bodyAttributes:dt({},d)});case q.HTML:return dt({},u,{htmlAttributes:dt({},d)})}return dt({},u,(c={},c[f.type]=dt({},d),c))},i.prototype.mapArrayTypeChildrenToProps=function(l,s){var c=dt({},s);return Object.keys(l).forEach(function(f){var u;c=dt({},c,(u={},u[f]=l[f],u))}),c},i.prototype.warnOnInvalidChildren=function(l,s){return!0},i.prototype.mapChildrenToProps=function(l,s){var c=this,f={};return Q.Children.forEach(l,function(u){if(!(!u||!u.props)){var d=u.props,p=d.children,y=zp(d,["children"]),g=Db(y);switch(c.warnOnInvalidChildren(u,p),u.type){case q.LINK:case q.META:case q.NOSCRIPT:case q.SCRIPT:case q.STYLE:f=c.flattenArrayTypeChildren({child:u,arrayTypeChildren:f,newChildProps:g,nestedChildren:p});break;default:s=c.mapObjectTypeChildren({child:u,newProps:s,newChildProps:g,nestedChildren:p});break}}}),s=this.mapArrayTypeChildrenToProps(f,s),s},i.prototype.render=function(){var l=this.props,s=l.children,c=zp(l,["children"]),f=dt({},c);return s&&(f=this.mapChildrenToProps(s,f)),Q.createElement(t,f)},_b(i,null,[{key:"canUseDOM",set:function(l){t.canUseDOM=l}}]),i}(Q.Component),n.propTypes={base:Ce.object,bodyAttributes:Ce.object,children:Ce.oneOfType([Ce.arrayOf(Ce.node),Ce.node]),defaultTitle:Ce.string,defer:Ce.bool,encodeSpecialCharacters:Ce.bool,htmlAttributes:Ce.object,link:Ce.arrayOf(Ce.object),meta:Ce.arrayOf(Ce.object),noscript:Ce.arrayOf(Ce.object),onChangeClientState:Ce.func,script:Ce.arrayOf(Ce.object),style:Ce.arrayOf(Ce.object),title:Ce.string,titleAttributes:Ce.object,titleTemplate:Ce.string},n.defaultProps={defer:!0,encodeSpecialCharacters:!0},n.peek=t.peek,n.rewind=function(){var o=t.rewind();return o||(o=G1({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}})),o},r},Ub=function(){return null},Vb=lb(Nb,Ib,G1)(Ub),Au=Bb(Vb);Au.renderStatic=Au.rewind;var tc="vocs_Anchor",Hb="vocs_Autolink";function Wb(e){const{pathname:t}=Re();return w.jsx("a",{...e,className:I(e.className,Hb),href:`${t}${e.href}`})}function Kb(e){const{children:t,href:n}=e,{pathname:r}=Re();return t&&typeof t=="object"&&"props"in t&&t.props["data-autolink-icon"]?w.jsx(Wb,{className:I(e.className,tc),...e}):n!=null&&n.match(/^#/)?w.jsx("a",{className:I(e.className,tc),...e,href:`${r}${n}`}):w.jsx(nn,{className:I(e.className,tc),...e})}var Gb="vocs_Callout_danger",Yb="vocs_Callout_info",Qb="vocs_Callout_note",Y1="vocs_Callout",Zb="vocs_Callout_success",Xb="vocs_Callout_tip",Jb="vocs_Callout_warning";const qb=Object.freeze(Object.defineProperty({__proto__:null,danger:Gb,info:Yb,note:Qb,root:Y1,success:Zb,tip:Xb,warning:Jb},Symbol.toStringTag,{value:"Module"}));function e_({className:e,children:t,type:n}){return w.jsx("aside",{className:I(e,Y1,qb[n]),children:t})}var t_="vocs_Aside";function n_(e){const t=I(e.className,t_);return"data-callout"in e?w.jsx(e_,{className:t,type:e["data-callout"],children:e.children}):w.jsx("aside",{...e,className:t})}var r_="vocs_Blockquote";function o_(e){return w.jsx("blockquote",{...e,className:I(e.className,r_)})}var i_="vocs_Code";function a_(e){const t=l_(e.children);return w.jsx("code",{...e,className:I(e.className,i_),children:t})}function l_(e){return Array.isArray(e)?e.map((t,n)=>{var r,o,i;return t.props&&"data-line"in t.props&&typeof t.props.children=="string"&&t.props.children.trim()===""&&((i=(o=(r=e[n+1])==null?void 0:r.props)==null?void 0:o.className)!=null&&i.includes("twoslash-tag-line"))?null:t}).filter(Boolean):e}var s_="vocs_Details";function c_(e){return w.jsx("details",{...e,className:I(e.className,s_)})}var u_="vocs_Authors_authors",f_="vocs_Authors_link",d_="vocs_Authors",Vp="vocs_Authors_separator";function Q1(e){const{frontmatter:t}=kr(),{authors:n=t==null?void 0:t.authors,date:r=t==null?void 0:t.date}=e,o=h.useMemo(()=>{if(n)return Array.isArray(n)?n:n.split(",").map(a=>a.trim())},[n]),i=h.useMemo(()=>r?new Date(r).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"}):null,[r]);return w.jsxs("div",{className:d_,children:[i,o&&(i?" by ":"By "),w.jsx("span",{className:u_,children:o==null?void 0:o.map((a,l)=>{const{text:s,url:c}=h_(a);return w.jsxs(h.Fragment,{children:[c?w.jsx("a",{className:f_,href:c,target:"_blank",rel:"noopener noreferrer",children:s}):s,lw.jsxs(h.Fragment,{children:[w.jsx("div",{className:m_,children:w.jsxs(Yn,{to:e.path,children:[w.jsx("h2",{className:w_,children:e.title}),w.jsx(Q1,{authors:e.authors,date:e.date}),w.jsxs("p",{className:p_,children:[e.description," ",w.jsx("span",{className:g_,children:"[→]"})]})]})}),tw.jsxs(h.Fragment,{children:[w.jsx("div",{className:k_,children:t.name}),t.items.map((r,o)=>{var i;return w.jsx("div",{className:$_,style:Gt({[E_]:r.length.toString(),[b_]:`${((i=t.height)==null?void 0:i.toString())??"40"}px`}),children:r.map((a,l)=>w.jsx(nn,{className:I(C_,a?T_:void 0),hideExternalIcon:!0,href:a==null?void 0:a.link,variant:"styleless",children:w.jsx("img",{className:__,src:a==null?void 0:a.image,alt:a==null?void 0:a.name})},l))},o)})]},n))})}var N_="var(--vocs_AutolinkIcon_iconUrl)",P_="vocs_AutolinkIcon";function A_(e){const{basePath:t}=ot(),n=t;return w.jsx("div",{...e,className:I(e.className,P_),style:Gt({[N_]:`url(${n}/.vocs/icons/link.svg)`})})}const nc="rovingFocusGroup.onEntryFocus",O_={bubbles:!1,cancelable:!0},ld="RovingFocusGroup",[Ou,Z1,I_]=Hl(ld),[L_,X1]=En(ld,[I_]),[M_,j_]=L_(ld),D_=h.forwardRef((e,t)=>h.createElement(Ou.Provider,{scope:e.__scopeRovingFocusGroup},h.createElement(Ou.Slot,{scope:e.__scopeRovingFocusGroup},h.createElement(F_,G({},e,{ref:t}))))),F_=h.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:r,loop:o=!1,dir:i,currentTabStopId:a,defaultCurrentTabStopId:l,onCurrentTabStopIdChange:s,onEntryFocus:c,...f}=e,u=h.useRef(null),d=Be(t,u),p=Vl(i),[y=null,g]=rr({prop:a,defaultProp:l,onChange:s}),[C,v]=h.useState(!1),m=at(c),x=Z1(n),E=h.useRef(!1),[_,b]=h.useState(0);return h.useEffect(()=>{const S=u.current;if(S)return S.addEventListener(nc,m),()=>S.removeEventListener(nc,m)},[m]),h.createElement(M_,{scope:n,orientation:r,dir:p,loop:o,currentTabStopId:y,onItemFocus:h.useCallback(S=>g(S),[g]),onItemShiftTab:h.useCallback(()=>v(!0),[]),onFocusableItemAdd:h.useCallback(()=>b(S=>S+1),[]),onFocusableItemRemove:h.useCallback(()=>b(S=>S-1),[])},h.createElement(ue.div,G({tabIndex:C||_===0?-1:0,"data-orientation":r},f,{ref:d,style:{outline:"none",...e.style},onMouseDown:ae(e.onMouseDown,()=>{E.current=!0}),onFocus:ae(e.onFocus,S=>{const $=!E.current;if(S.target===S.currentTarget&&$&&!C){const k=new CustomEvent(nc,O_);if(S.currentTarget.dispatchEvent(k),!k.defaultPrevented){const P=x().filter(z=>z.focusable),j=P.find(z=>z.active),L=P.find(z=>z.id===y),N=[j,L,...P].filter(Boolean).map(z=>z.ref.current);J1(N)}}E.current=!1}),onBlur:ae(e.onBlur,()=>v(!1))})))}),z_="RovingFocusGroupItem",B_=h.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:r=!0,active:o=!1,tabStopId:i,...a}=e,l=rn(),s=i||l,c=j_(z_,n),f=c.currentTabStopId===s,u=Z1(n),{onFocusableItemAdd:d,onFocusableItemRemove:p}=c;return h.useEffect(()=>{if(r)return d(),()=>p()},[r,d,p]),h.createElement(Ou.ItemSlot,{scope:n,id:s,focusable:r,active:o},h.createElement(ue.span,G({tabIndex:f?0:-1,"data-orientation":c.orientation},a,{ref:t,onMouseDown:ae(e.onMouseDown,y=>{r?c.onItemFocus(s):y.preventDefault()}),onFocus:ae(e.onFocus,()=>c.onItemFocus(s)),onKeyDown:ae(e.onKeyDown,y=>{if(y.key==="Tab"&&y.shiftKey){c.onItemShiftTab();return}if(y.target!==y.currentTarget)return;const g=H_(y,c.orientation,c.dir);if(g!==void 0){y.preventDefault();let v=u().filter(m=>m.focusable).map(m=>m.ref.current);if(g==="last")v.reverse();else if(g==="prev"||g==="next"){g==="prev"&&v.reverse();const m=v.indexOf(y.currentTarget);v=c.loop?W_(v,m+1):v.slice(m+1)}setTimeout(()=>J1(v))}})})))}),U_={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function V_(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function H_(e,t,n){const r=V_(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(r))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(r)))return U_[r]}function J1(e){const t=document.activeElement;for(const n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function W_(e,t){return e.map((n,r)=>e[(t+r)%e.length])}const K_=D_,G_=B_,q1="Tabs",[Y_,t$]=En(q1,[X1]),ey=X1(),[Q_,sd]=Y_(q1),Z_=h.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,onValueChange:o,defaultValue:i,orientation:a="horizontal",dir:l,activationMode:s="automatic",...c}=e,f=Vl(l),[u,d]=rr({prop:r,onChange:o,defaultProp:i});return h.createElement(Q_,{scope:n,baseId:rn(),value:u,onValueChange:d,orientation:a,dir:f,activationMode:s},h.createElement(ue.div,G({dir:f,"data-orientation":a},c,{ref:t})))}),X_="TabsList",J_=h.forwardRef((e,t)=>{const{__scopeTabs:n,loop:r=!0,...o}=e,i=sd(X_,n),a=ey(n);return h.createElement(K_,G({asChild:!0},a,{orientation:i.orientation,dir:i.dir,loop:r}),h.createElement(ue.div,G({role:"tablist","aria-orientation":i.orientation},o,{ref:t})))}),q_="TabsTrigger",eS=h.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,disabled:o=!1,...i}=e,a=sd(q_,n),l=ey(n),s=ty(a.baseId,r),c=ny(a.baseId,r),f=r===a.value;return h.createElement(G_,G({asChild:!0},l,{focusable:!o,active:f}),h.createElement(ue.button,G({type:"button",role:"tab","aria-selected":f,"aria-controls":c,"data-state":f?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:s},i,{ref:t,onMouseDown:ae(e.onMouseDown,u=>{!o&&u.button===0&&u.ctrlKey===!1?a.onValueChange(r):u.preventDefault()}),onKeyDown:ae(e.onKeyDown,u=>{[" ","Enter"].includes(u.key)&&a.onValueChange(r)}),onFocus:ae(e.onFocus,()=>{const u=a.activationMode!=="manual";!f&&!o&&u&&a.onValueChange(r)})})))}),tS="TabsContent",nS=h.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,forceMount:o,children:i,...a}=e,l=sd(tS,n),s=ty(l.baseId,r),c=ny(l.baseId,r),f=r===l.value,u=h.useRef(f);return h.useEffect(()=>{const d=requestAnimationFrame(()=>u.current=!1);return()=>cancelAnimationFrame(d)},[]),h.createElement(bn,{present:o||f},({present:d})=>h.createElement(ue.div,G({"data-state":f?"active":"inactive","data-orientation":l.orientation,role:"tabpanel","aria-labelledby":s,hidden:!d,id:c,tabIndex:0},a,{ref:t,style:{...e.style,animationDuration:u.current?"0s":void 0}}),d&&i))});function ty(e,t){return`${e}-trigger-${t}`}function ny(e,t){return`${e}-content-${t}`}const rS=Z_,oS=J_,iS=eS,aS=nS;var lS="vocs_Tabs_content",sS="vocs_Tabs_list",cS="vocs_Tabs",uS="vocs_Tabs_trigger";function fS(e){return w.jsx(rS,{...e,className:I(e.className,cS)})}function dS(e){return w.jsx(oS,{...e,className:I(e.className,sS)})}function hS(e){return w.jsx(iS,{...e,className:I(e.className,uS)})}function pS(e){return w.jsx(aS,{...e,className:I(e.className,lS)})}var vS="vocs_CodeGroup";function mS({children:e}){const t=e.map(n=>{const r=n.props["data-title"]?n:n.props.children,{props:o}=r,i=o["data-title"],a=o.children;return{title:i,content:a}});return w.jsxs(fS,{className:vS,defaultValue:t[0].title,children:[w.jsx(dS,{"aria-label":"Code group",children:t.map(({title:n},r)=>w.jsx(hS,{value:n||r.toString(),children:n},n||r.toString()))}),t.map(({title:n,content:r},o)=>{var a,l;const i=(l=(a=r.props)==null?void 0:a.className)==null?void 0:l.includes("shiki");return w.jsx(pS,{"data-shiki":i,value:n||o.toString(),children:r},n||o.toString())})]})}var gS="vocs_Div",yS="vocs_Step_content",wS="vocs_Step",ry="vocs_Step_title",xS="vocs_H2";function oy(e){return w.jsx(To,{...e,className:I(e.className,xS),level:2})}var CS="vocs_H3";function iy(e){return w.jsx(To,{...e,className:I(e.className,CS),level:3})}var ES="vocs_H4";function ay(e){return w.jsx(To,{...e,className:I(e.className,ES),level:4})}var bS="vocs_H5";function ly(e){return w.jsx(To,{...e,className:I(e.className,bS),level:5})}var _S="vocs_H6";function sy(e){return w.jsx(To,{...e,className:I(e.className,_S),level:6})}function SS({children:e,className:t,title:n,titleLevel:r=2}){const o=(()=>{if(r===2)return oy;if(r===3)return iy;if(r===4)return ay;if(r===5)return ly;if(r===6)return sy;throw new Error("Invalid.")})();return w.jsxs("div",{className:I(t,wS),children:[typeof n=="string"?w.jsx(o,{className:ry,children:n}):n,w.jsx("div",{className:yS,children:e})]})}var $S="vocs_Steps";function TS({children:e,className:t}){return w.jsx("div",{className:I(t,$S),children:e})}function kS({children:e}){return Array.isArray(e)?w.jsx(TS,{children:e.map(({props:t},n)=>{const[r,...o]=Array.isArray(t.children)?t.children:[t.children];return w.jsx(SS,{title:h.cloneElement(r,{className:ry}),children:o},n)})}):null}var RS="vocs_Subtitle";function NS({children:e}){return w.jsx("div",{className:RS,role:"doc-subtitle",children:e})}function PS(e){const{layout:t}=Rr(),n=I(e.className,gS);return e.className==="code-group"?w.jsx(mS,{...e,className:n}):"data-authors"in e?w.jsx(Q1,{}):"data-blog-posts"in e?w.jsx(x_,{}):"data-sponsors"in e?w.jsx(R_,{}):"data-autolink-icon"in e&&t==="docs"?w.jsx(A_,{...e,className:n}):"data-vocs-steps"in e?w.jsx(kS,{...e,className:n}):e.role==="doc-subtitle"?w.jsx(NS,{...e}):w.jsx("div",{...e,className:n})}var AS="vocs_Figcaption";function OS(e){const t=I(e.className,AS);return w.jsx("figcaption",{...e,className:t})}var IS="vocs_Figure";function LS(e){const t=I(e.className,IS);return w.jsx("figure",{...e,className:t})}var MS="vocs_Header";function jS(e){return w.jsx("header",{...e,className:I(e.className,MS)})}var DS="vocs_HorizontalRule";function FS(e){return w.jsx("hr",{...e,className:I(e.className,DS)})}var zS="vocs_List_ordered",BS="vocs_List",US="vocs_List_unordered";function Wp({ordered:e,...t}){const n=e?"ol":"ul";return w.jsx(n,{...t,className:I(t.className,BS,e?zS:US)})}var VS="vocs_ListItem";function HS(e){return w.jsx("li",{...e,className:I(e.className,VS)})}function WS(){const e=h.useRef(null),[t,n]=h.useState(!1);h.useEffect(()=>{if(!t)return;const o=setTimeout(()=>n(!1),1e3);return()=>clearTimeout(o)},[t]);function r(){var a;n(!0);const o=(a=e.current)==null?void 0:a.cloneNode(!0),i=o==null?void 0:o.querySelectorAll("button,.line.diff.remove,.twoslash-popup-info-hover,.twoslash-popup-info,.twoslash-meta-line,.twoslash-tag-line");for(const l of i??[])l.remove();navigator.clipboard.writeText(o==null?void 0:o.textContent)}return{copied:t,copy:r,ref:e}}var KS="vocs_CopyButton";function GS(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 68 67",children:[w.jsx("title",{children:"Checkmark"}),w.jsx("path",{fill:"currentColor",d:"M26.175 66.121c1.904 0 3.418-.83 4.492-2.49L66.263 7.332c.83-1.27 1.123-2.295 1.123-3.32 0-2.393-1.563-4.004-4.004-4.004-1.758 0-2.734.586-3.809 2.295L25.98 56.209 8.304 32.381c-1.123-1.514-2.198-2.149-3.809-2.149-2.441 0-4.2 1.71-4.2 4.15 0 1.026.44 2.15 1.27 3.224l19.971 25.927c1.367 1.758 2.734 2.588 4.639 2.588Z"})]})}function YS(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 82 82",children:[w.jsx("title",{children:"Copy"}),w.jsx("path",{fill:"currentColor",d:"M12.451 63.281h38.38c8.3 0 12.45-4.053 12.45-12.256v-38.77C63.281 4.054 59.131 0 50.831 0H12.45C4.101 0 0 4.053 0 12.256v38.77C0 59.227 4.102 63.28 12.451 63.28Zm.098-7.031c-3.516 0-5.518-1.904-5.518-5.615V12.647c0-3.711 2.002-5.616 5.518-5.616h38.183c3.516 0 5.518 1.905 5.518 5.615v37.989c0 3.71-2.002 5.615-5.518 5.615H12.55Z"}),w.jsx("path",{stroke:"currentColor",strokeWidth:"6.75px",d:"M69.385 78.266h-38.38c-3.679 0-5.782-.894-6.987-2.081-1.196-1.178-2.088-3.219-2.088-6.8v-38.77c0-3.581.892-5.622 2.088-6.8 1.205-1.187 3.308-2.08 6.988-2.08h38.379c3.65 0 5.758.89 6.973 2.084 1.203 1.182 2.103 3.225 2.103 6.796v38.77c0 3.57-.9 5.614-2.103 6.796-1.215 1.193-3.323 2.085-6.973 2.085Z"})]})}function QS({copy:e,copied:t}){return w.jsx("button",{className:KS,onClick:e,type:"button",children:t?w.jsx(st,{label:"Copied",size:"14px",icon:GS}):w.jsx(st,{label:"Copy",size:"18px",icon:YS})})}var ZS="vocs_CodeBlock";function XS(e){return w.jsx("div",{...e,className:I(e.className,ZS)})}function JS(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 94 99",fill:"none",children:[w.jsx("title",{children:"File"}),w.jsx("rect",{width:"77px",height:"89px",x:"8px",y:"3px",stroke:"currentColor",strokeWidth:"6px",rx:"7px"}),w.jsx("path",{stroke:"currentColor",strokeLinecap:"round",strokeWidth:"6px",d:"M25 22h43M25 35h43M25 48h22"})]})}function qS(){return w.jsxs("svg",{width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 79 95",fill:"none",children:[w.jsx("title",{children:"Terminal"}),w.jsx("path",{fill:"currentColor",d:"M38.281 34.033c0-1.074-.39-2.05-1.22-2.88L6.885 1.171C6.152.39 5.175 0 4.053 0 1.758 0 0 1.709 0 4.004c0 1.074.488 2.1 1.172 2.88l27.295 27.15L1.172 61.181C.488 61.962 0 62.939 0 64.062c0 2.295 1.758 4.004 4.053 4.004 1.123 0 2.1-.39 2.832-1.172l30.176-29.98c.83-.83 1.22-1.807 1.22-2.88Z"}),w.jsx("path",{stroke:"currentColor",strokeLinecap:"round",strokeWidth:"8px",d:"M36 75h55"})]})}var e9="vocs_CodeTitle";function t9({children:e,className:t,language:n,...r}){return w.jsxs("div",{...r,className:I(t,e9),children:[n==="bash"?w.jsx(st,{label:"Terminal",size:"14px",icon:qS,style:{marginTop:3}}):e.match(/\.(.*)$/)?w.jsx(st,{label:"File",size:"14px",icon:JS,style:{marginTop:1}}):null,e]})}var n9="vocs_Pre",r9="vocs_Pre_wrapper";function o9({children:e,className:t,...n}){const{copied:r,copy:o,ref:i}=WS();function a(c){return!c||typeof c!="object"?c:"props"in c?{...c,props:{...c.props,children:Array.isArray(c.props.children)?c.props.children.map(a):a(c.props.children)}}:c}const l=h.useMemo(()=>a(e),[e]);return(c=>t!=null&&t.includes("shiki")?w.jsxs(XS,{children:[n["data-title"]&&w.jsx(t9,{language:n["data-lang"],children:n["data-title"]}),c]}):c)(w.jsx("div",{className:I(r9),children:w.jsxs("pre",{ref:i,...n,className:I(t,n9),children:["data-language"in n&&w.jsx(QS,{copied:r,copy:o}),l]})}))}var i9="vocs_Footnotes";function a9(e){return w.jsx("section",{...e,className:I(e.className,i9)})}var Kp="vocs_Section";function l9(e){return"data-footnotes"in e?w.jsx(a9,{...e,className:I(e.className,Kp)}):w.jsx("section",{...e,className:I(e.className,Kp)})}var Gp="vocs_Span";function Va(e,t){if(!e||!t)return!1;const n=t.getRootNode==null?void 0:t.getRootNode();if(e.contains(t))return!0;if(n&&Su(n)){let r=t;for(;r;){if(e===r)return!0;r=r.parentNode||r.host}}return!1}function cy(e,t){const n=["mouse","pen"];return t||n.push("",void 0),n.includes(e)}function Sa(e){return(e==null?void 0:e.ownerDocument)||document}function s9(e){return"composedPath"in e?e.composedPath()[0]:e.target}const c9=bl.useInsertionEffect,u9=c9||(e=>e());function f9(e){const t=h.useRef(()=>{});return u9(()=>{t.current=e}),h.useCallback(function(){for(var n=arguments.length,r=new Array(n),o=0;o"floating-ui-"+d9++;function h9(){const[e,t]=h.useState(()=>rc?Yp():void 0);return Ii(()=>{e==null&&t(Yp())},[]),h.useEffect(()=>{rc||(rc=!0)},[]),e}const p9=bl.useId,uy=p9||h9,v9=h.forwardRef(function(t,n){let{context:{placement:r,elements:{floating:o},middlewareData:{arrow:i}},width:a=14,height:l=7,tipRadius:s=0,strokeWidth:c=0,staticOffset:f,stroke:u,d,style:{transform:p,...y}={},...g}=t;const C=uy();if(!o)return null;c*=2;const v=c/2,m=a/2*(s/-8+1),x=l/2*s/4,[E,_]=r.split("-"),b=v1.isRTL(o),S=!!d,$=E==="top"||E==="bottom",k=f&&_==="end"?"bottom":"top";let P=f&&_==="end"?"right":"left";f&&b&&(P=_==="end"?"left":"right");const j=(i==null?void 0:i.x)!=null?f||i.x:"",L=(i==null?void 0:i.y)!=null?f||i.y:"",D=d||"M0,0"+(" H"+a)+(" L"+(a-m)+","+(l-x))+(" Q"+a/2+","+l+" "+m+","+(l-x))+" Z",N={top:S?"rotate(180deg)":"",left:S?"rotate(90deg)":"rotate(-90deg)",bottom:S?"":"rotate(180deg)",right:S?"rotate(-90deg)":"rotate(90deg)"}[E];return h.createElement("svg",Iu({},g,{"aria-hidden":!0,ref:n,width:S?a:a+c,height:a,viewBox:"0 0 "+a+" "+(l>a?l:a),style:{position:"absolute",pointerEvents:"none",[P]:j,[k]:L,[E]:$||S?"100%":"calc(100% - "+c/2+"px)",transform:""+N+(p??""),...y}}),c>0&&h.createElement("path",{clipPath:"url(#"+C+")",fill:"none",stroke:u,strokeWidth:c+(d?0:1),d:D}),h.createElement("path",{stroke:c&&!d?g.fill:"none",d:D}),h.createElement("clipPath",{id:C},h.createElement("rect",{x:-v,y:v*(S?-1:1),width:a+c,height:a})))});function m9(){const e=new Map;return{emit(t,n){var r;(r=e.get(t))==null||r.forEach(o=>o(n))},on(t,n){e.set(t,[...e.get(t)||[],n])},off(t,n){var r;e.set(t,((r=e.get(t))==null?void 0:r.filter(o=>o!==n))||[])}}}const g9=h.createContext(null),y9=h.createContext(null),fy=()=>{var e;return((e=h.useContext(g9))==null?void 0:e.id)||null},dy=()=>h.useContext(y9);function w9(e){return"data-floating-ui-"+e}function Qp(e){const t=h.useRef(e);return Ii(()=>{t.current=e}),t}const Zp=w9("safe-polygon");function oc(e,t,n){return n&&!cy(n)?0:typeof e=="number"?e:e==null?void 0:e[t]}function x9(e,t){t===void 0&&(t={});const{open:n,onOpenChange:r,dataRef:o,events:i,elements:{domReference:a,floating:l},refs:s}=e,{enabled:c=!0,delay:f=0,handleClose:u=null,mouseOnly:d=!1,restMs:p=0,move:y=!0}=t,g=dy(),C=fy(),v=Qp(u),m=Qp(f),x=h.useRef(),E=h.useRef(),_=h.useRef(),b=h.useRef(),S=h.useRef(!0),$=h.useRef(!1),k=h.useRef(()=>{}),P=h.useCallback(()=>{var N;const z=(N=o.current.openEvent)==null?void 0:N.type;return(z==null?void 0:z.includes("mouse"))&&z!=="mousedown"},[o]);h.useEffect(()=>{if(!c)return;function N(z){let{open:H}=z;H||(clearTimeout(E.current),clearTimeout(b.current),S.current=!0)}return i.on("openchange",N),()=>{i.off("openchange",N)}},[c,i]),h.useEffect(()=>{if(!c||!v.current||!n)return;function N(H){P()&&r(!1,H,"hover")}const z=Sa(l).documentElement;return z.addEventListener("mouseleave",N),()=>{z.removeEventListener("mouseleave",N)}},[l,n,r,c,v,P]);const j=h.useCallback(function(N,z,H){z===void 0&&(z=!0),H===void 0&&(H="hover");const B=oc(m.current,"close",x.current);B&&!_.current?(clearTimeout(E.current),E.current=setTimeout(()=>r(!1,N,H),B)):z&&(clearTimeout(E.current),r(!1,N,H))},[m,r]),L=h.useCallback(()=>{k.current(),_.current=void 0},[]),D=h.useCallback(()=>{if($.current){const N=Sa(s.floating.current).body;N.style.pointerEvents="",N.removeAttribute(Zp),$.current=!1}},[s]);return h.useEffect(()=>{if(!c)return;function N(){return o.current.openEvent?["click","mousedown"].includes(o.current.openEvent.type):!1}function z(O){if(clearTimeout(E.current),S.current=!1,d&&!cy(x.current)||p>0&&oc(m.current,"open")===0)return;const F=oc(m.current,"open",x.current);F?E.current=setTimeout(()=>{r(!0,O,"hover")},F):r(!0,O,"hover")}function H(O){if(N())return;k.current();const F=Sa(l);if(clearTimeout(b.current),v.current){n||clearTimeout(E.current),_.current=v.current({...e,tree:g,x:O.clientX,y:O.clientY,onClose(){D(),L(),j(O,!0,"safe-polygon")}});const J=_.current;F.addEventListener("mousemove",J),k.current=()=>{F.removeEventListener("mousemove",J)};return}(x.current==="touch"?!Va(l,O.relatedTarget):!0)&&j(O)}function B(O){N()||v.current==null||v.current({...e,tree:g,x:O.clientX,y:O.clientY,onClose(){D(),L(),j(O)}})(O)}if(nt(a)){const O=a;return n&&O.addEventListener("mouseleave",B),l==null||l.addEventListener("mouseleave",B),y&&O.addEventListener("mousemove",z,{once:!0}),O.addEventListener("mouseenter",z),O.addEventListener("mouseleave",H),()=>{n&&O.removeEventListener("mouseleave",B),l==null||l.removeEventListener("mouseleave",B),y&&O.removeEventListener("mousemove",z),O.removeEventListener("mouseenter",z),O.removeEventListener("mouseleave",H)}}},[a,l,c,e,d,p,y,j,L,D,r,n,g,m,v,o]),Ii(()=>{var N;if(c&&n&&(N=v.current)!=null&&N.__options.blockPointerEvents&&P()){const H=Sa(l).body;if(H.setAttribute(Zp,""),H.style.pointerEvents="none",$.current=!0,nt(a)&&l){var z;const B=a,O=g==null||(z=g.nodesRef.current.find(F=>F.id===C))==null||(z=z.context)==null?void 0:z.elements.floating;return O&&(O.style.pointerEvents=""),B.style.pointerEvents="auto",l.style.pointerEvents="auto",()=>{B.style.pointerEvents="",l.style.pointerEvents=""}}}},[c,n,C,l,a,g,v,P]),Ii(()=>{n||(x.current=void 0,L(),D())},[n,L,D]),h.useEffect(()=>()=>{L(),clearTimeout(E.current),clearTimeout(b.current),D()},[c,a,L,D]),h.useMemo(()=>{if(!c)return{};function N(z){x.current=z.pointerType}return{reference:{onPointerDown:N,onPointerEnter:N,onMouseMove(z){n||p===0||(clearTimeout(b.current),b.current=setTimeout(()=>{S.current||r(!0,z.nativeEvent,"hover")},p))}},floating:{onMouseEnter(){clearTimeout(E.current)},onMouseLeave(z){j(z.nativeEvent,!1)}}}},[c,p,n,r,j])}function C9(e,t){let n=e.filter(o=>{var i;return o.parentId===t&&((i=o.context)==null?void 0:i.open)}),r=n;for(;r.length;)r=e.filter(o=>{var i;return(i=r)==null?void 0:i.some(a=>{var l;return o.parentId===a.id&&((l=o.context)==null?void 0:l.open)})}),n=n.concat(r);return n}function E9(e){var t;e===void 0&&(e={});const{open:n=!1,onOpenChange:r,nodeId:o}=e,[i,a]=h.useState(null),l=((t=e.elements)==null?void 0:t.reference)||i,s=w1(e),c=dy(),f=fy()!=null,u=f9((_,b,S)=>{_&&(p.current.openEvent=b),y.emit("openchange",{open:_,event:b,reason:S,nested:f}),r==null||r(_,b,S)}),d=h.useRef(null),p=h.useRef({}),y=h.useState(()=>m9())[0],g=uy(),C=h.useCallback(_=>{const b=nt(_)?{getBoundingClientRect:()=>_.getBoundingClientRect(),contextElement:_}:_;s.refs.setReference(b)},[s.refs]),v=h.useCallback(_=>{(nt(_)||_===null)&&(d.current=_,a(_)),(nt(s.refs.reference.current)||s.refs.reference.current===null||_!==null&&!nt(_))&&s.refs.setReference(_)},[s.refs]),m=h.useMemo(()=>({...s.refs,setReference:v,setPositionReference:C,domReference:d}),[s.refs,v,C]),x=h.useMemo(()=>({...s.elements,domReference:l}),[s.elements,l]),E=h.useMemo(()=>({...s,refs:m,elements:x,dataRef:p,nodeId:o,floatingId:g,events:y,open:n,onOpenChange:u}),[s,o,g,y,n,u,m,x]);return Ii(()=>{const _=c==null?void 0:c.nodesRef.current.find(b=>b.id===o);_&&(_.context=E)}),h.useMemo(()=>({...s,context:E,refs:m,elements:x}),[s,m,x,E])}const Xp="active",Jp="selected";function ic(e,t,n){const r=new Map,o=n==="item";let i=e;if(o&&e){const{[Xp]:a,[Jp]:l,...s}=e;i=s}return{...n==="floating"&&{tabIndex:-1},...i,...t.map(a=>{const l=a?a[n]:null;return typeof l=="function"?e?l(e):null:l}).concat(e).reduce((a,l)=>(l&&Object.entries(l).forEach(s=>{let[c,f]=s;if(!(o&&[Xp,Jp].includes(c)))if(c.indexOf("on")===0){if(r.has(c)||r.set(c,[]),typeof f=="function"){var u;(u=r.get(c))==null||u.push(f),a[c]=function(){for(var d,p=arguments.length,y=new Array(p),g=0;gC(...y)).find(C=>C!==void 0)}}}else a[c]=f}),a),{})}}function b9(e){e===void 0&&(e=[]);const t=e,n=h.useCallback(i=>ic(i,e,"reference"),t),r=h.useCallback(i=>ic(i,e,"floating"),t),o=h.useCallback(i=>ic(i,e,"item"),e.map(i=>i==null?void 0:i.item));return h.useMemo(()=>({getReferenceProps:n,getFloatingProps:r,getItemProps:o}),[n,r,o])}function qp(e,t){const[n,r]=e;let o=!1;const i=t.length;for(let a=0,l=i-1;a=r!=u>=r&&n<=(f-s)*(r-c)/(u-c)+s&&(o=!o)}return o}function _9(e,t){return e[0]>=t.x&&e[0]<=t.x+t.width&&e[1]>=t.y&&e[1]<=t.y+t.height}function S9(e){e===void 0&&(e={});const{buffer:t=.5,blockPointerEvents:n=!1,requireIntent:r=!0}=e;let o,i=!1,a=null,l=null,s=performance.now();function c(u,d){const p=performance.now(),y=p-s;if(a===null||l===null||y===0)return a=u,l=d,s=p,null;const g=u-a,C=d-l,m=Math.sqrt(g*g+C*C)/y;return a=u,l=d,s=p,m}const f=u=>{let{x:d,y:p,placement:y,elements:g,onClose:C,nodeId:v,tree:m}=u;return function(E){function _(){clearTimeout(o),C()}if(clearTimeout(o),!g.domReference||!g.floating||y==null||d==null||p==null)return;const{clientX:b,clientY:S}=E,$=[b,S],k=s9(E),P=E.type==="mouseleave",j=Va(g.floating,k),L=Va(g.domReference,k),D=g.domReference.getBoundingClientRect(),N=g.floating.getBoundingClientRect(),z=y.split("-")[0],H=d>N.right-N.width/2,B=p>N.bottom-N.height/2,O=_9($,D),F=N.width>D.width,W=N.height>D.height,J=(F?D:N).left,se=(F?D:N).right,Ue=(W?D:N).top,ge=(W?D:N).bottom;if(j&&(i=!0,!P))return;if(L&&(i=!1),L&&!P){i=!0;return}if(P&&nt(E.relatedTarget)&&Va(g.floating,E.relatedTarget)||m&&C9(m.nodesRef.current,v).some(Ve=>{let{context:we}=Ve;return we==null?void 0:we.open}))return;if(z==="top"&&p>=D.bottom-1||z==="bottom"&&p<=D.top+1||z==="left"&&d>=D.right-1||z==="right"&&d<=D.left+1)return _();let Ne=[];switch(z){case"top":Ne=[[J,D.top+1],[J,N.bottom-1],[se,N.bottom-1],[se,D.top+1]];break;case"bottom":Ne=[[J,N.top+1],[J,D.bottom-1],[se,D.bottom-1],[se,N.top+1]];break;case"left":Ne=[[N.right-1,ge],[N.right-1,Ue],[D.left+1,Ue],[D.left+1,ge]];break;case"right":Ne=[[D.right-1,ge],[D.right-1,Ue],[N.left+1,Ue],[N.left+1,ge]];break}function ye(Ve){let[we,_e]=Ve;switch(z){case"top":{const Mt=[F?we+t/2:H?we+t*4:we-t*4,_e+t+1],Se=[F?we-t/2:H?we+t*4:we-t*4,_e+t+1],ft=[[N.left,H||F?N.bottom-t:N.top],[N.right,H?F?N.bottom-t:N.top:N.bottom-t]];return[Mt,Se,...ft]}case"bottom":{const Mt=[F?we+t/2:H?we+t*4:we-t*4,_e-t],Se=[F?we-t/2:H?we+t*4:we-t*4,_e-t],ft=[[N.left,H||F?N.top+t:N.bottom],[N.right,H?F?N.top+t:N.bottom:N.top+t]];return[Mt,Se,...ft]}case"left":{const Mt=[we+t+1,W?_e+t/2:B?_e+t*4:_e-t*4],Se=[we+t+1,W?_e-t/2:B?_e+t*4:_e-t*4];return[...[[B||W?N.right-t:N.left,N.top],[B?W?N.right-t:N.left:N.right-t,N.bottom]],Mt,Se]}case"right":{const Mt=[we-t,W?_e+t/2:B?_e+t*4:_e-t*4],Se=[we-t,W?_e-t/2:B?_e+t*4:_e-t*4],ft=[[B||W?N.left+t:N.right,N.top],[B?W?N.left+t:N.right:N.left+t,N.bottom]];return[Mt,Se,...ft]}}}if(!qp([b,S],Ne)){if(i&&!O)return _();if(!P&&r){const Ve=c(E.clientX,E.clientY);if(Ve!==null&&Ve<.1)return _()}qp([b,S],ye([d,p]))?!i&&r&&(o=window.setTimeout(_,40)):_()}}};return f.__options={blockPointerEvents:n},f}function $9({children:e,...t}){const[n,r]=e,o=h.useRef(null),[i,a]=h.useState(!1),{context:l,refs:s,floatingStyles:c}=E9({middleware:[g1({element:o}),i1(8),m1()],open:i,onOpenChange:a,placement:"bottom-start"}),f=x9(l,{handleClose:S9()}),{getReferenceProps:u,getFloatingProps:d}=b9([f]),p=r.props.children,y=n.props.children;return w.jsxs("span",{...t,children:[w.jsx("span",{className:"twoslash-target",ref:s.setReference,...u(),children:p}),i&&w.jsxs("div",{className:"twoslash-popup-info-hover",ref:s.setFloating,style:c,...d(),children:[w.jsx(v9,{ref:o,context:l,fill:Kh.background5,height:3,stroke:Kh.border2,strokeWidth:1,width:7}),w.jsx("div",{className:"twoslash-popup-scroll-container",children:y})]})]})}function T9(e){var n;const t=I(e.className,Gp);return(n=e.className)!=null&&n.includes("twoslash-hover")?w.jsx($9,{...e,className:t}):w.jsx("span",{...e,className:I(e.className,Gp)})}var k9="vocs_CalloutTitle";function R9({className:e,children:t}){return w.jsx("strong",{className:I(e,k9),children:t})}var ev="vocs_Strong";function N9(e){return"data-callout-title"in e&&typeof e.children=="string"?w.jsx(R9,{...e,className:I(e.className,ev),children:e.children}):w.jsx("strong",{...e,className:I(e.className,ev)})}var P9="vocs_Summary";function A9(e){return w.jsx("summary",{...e,className:I(e.className,P9)})}var O9="vocs_Table";function I9(e){return w.jsx("table",{...e,className:I(e.className,O9)})}var L9="vocs_TableCell";function M9(e){return w.jsx("td",{...e,className:I(e.className,L9)})}var j9="vocs_TableHeader";function D9(e){return w.jsx("th",{...e,className:I(e.className,j9)})}var F9="vocs_TableRow";function z9(e){return w.jsx("tr",{...e,className:I(e.className,F9)})}const B9={a:Kb,aside:n_,blockquote:o_,code:a_,details:c_,div:PS,pre:o9,header:jS,figcaption:OS,figure:LS,h1:U0,h2:oy,h3:iy,h4:ay,h5:ly,h6:sy,hr:FS,kd:$g,li:HS,ol:e=>w.jsx(Wp,{ordered:!0,...e}),p:V0,section:l9,span:T9,strong:N9,summary:A9,table:I9,td:M9,th:D9,tr:z9,ul:e=>w.jsx(Wp,{ordered:!1,...e})};function U9(){const{pathname:e}=Re(),t=ot(),{ogImageUrl:n}=t;if(!n)return;if(typeof n=="string")return n;const r=h.useMemo(()=>{const o=Object.keys(n).filter(i=>e.startsWith(i));return o[o.length-1]},[n,e]);if(r)return n[r]}function Lu(e){const{children:t,filePath:n,frontmatter:r,lastUpdatedAt:o,path:i}=e,{pathname:a}=Re(),l=h.useRef();return h.useEffect(()=>{l.current=a}),w.jsxs(w.Fragment,{children:[w.jsx(V9,{frontmatter:r}),typeof window<"u"&&w.jsx(gx,{}),w.jsx(QE,{components:B9,children:w.jsx(A7,{frontmatter:r,path:i,children:w.jsx(K0.Provider,{value:{filePath:n,frontmatter:r,lastUpdatedAt:o,previousPath:l.current},children:t})})})]})}function V9({frontmatter:e}){const t=ot(),n=U9(),{baseUrl:r,font:o,iconUrl:i,logoUrl:a}=t,l=(e==null?void 0:e.title)??t.title,s=(e==null?void 0:e.description)??t.description,c=t.title&&!l.includes(t.title),f=typeof window<"u"&&window.location.hostname==="localhost";return w.jsxs(Au,{defaultTitle:t.title,titleTemplate:c?t.titleTemplate:void 0,children:[l&&w.jsx("title",{children:l}),r&&!0&&!f&&w.jsx("base",{href:r}),s!=="undefined"&&w.jsx("meta",{name:"description",content:s}),i&&typeof i=="string"&&w.jsx("link",{rel:"icon",href:i,type:ac(i)}),i&&typeof i!="string"&&w.jsx("link",{rel:"icon",href:i.light,type:ac(i.light)}),i&&typeof i!="string"&&w.jsx("link",{rel:"icon",href:i.dark,type:ac(i.dark),media:"(prefers-color-scheme: dark)"}),w.jsx("meta",{property:"og:type",content:"website"}),w.jsx("meta",{property:"og:title",content:l||t.title}),r&&w.jsx("meta",{property:"og:url",content:r}),s!=="undefined"&&w.jsx("meta",{property:"og:description",content:s}),n&&w.jsx("meta",{property:"og:image",content:n.replace("%logo",`${r||""}${typeof a=="string"?a:(a==null?void 0:a.dark)||""}`).replace("%title",l||"").replace("%description",(s!=="undefined"?s:"")||"")}),(o==null?void 0:o.google)&&w.jsx("link",{rel:"preconnect",href:"https://fonts.googleapis.com"}),(o==null?void 0:o.google)&&w.jsx("link",{rel:"preconnect",href:"https://fonts.gstatic.com",crossOrigin:""}),(o==null?void 0:o.google)&&w.jsx("link",{href:`https://fonts.googleapis.com/css2?family=${o.google}:wght@300;400;500&display=swap`,rel:"stylesheet"}),w.jsx("meta",{name:"twitter:card",content:"summary_large_image"}),n&&w.jsx("meta",{property:"twitter:image",content:n.replace("%logo",`${r||""}${typeof a=="string"?a:(a==null?void 0:a.dark)||""}`).replace("%title",l||"").replace("%description",(s!=="undefined"?s:"")||"")})]})}function ac(e){if(e.endsWith(".svg"))return"image/svg+xml";if(e.endsWith(".png"))return"image/png";if(e.endsWith(".jpg"))return"image/jpeg";if(e.endsWith(".ico"))return"image/x-icon";if(e.endsWith(".webp"))return"image/webp"}const H9=(()=>{const e=Ff.find(({path:t})=>t==="*");return e?{path:e.path,lazy:async()=>{const{frontmatter:t,...n}=await e.lazy();return{...n,element:w.jsx(Lu,{frontmatter:t,path:e.path,children:w.jsx(Tu,{children:w.jsx(n.default,{})})})}}}:{path:"*",lazy:void 0,element:w.jsx(Lu,{frontmatter:{layout:"minimal"},path:"*",children:w.jsx(Tu,{children:w.jsx(Vx,{})})})}})(),tv=[...Ff.filter(({path:e})=>e!=="*").map(e=>({path:e.path,lazy:async()=>{const{frontmatter:t,...n}=await e.lazy();return{...n,element:w.jsx(Lu,{filePath:e.filePath,frontmatter:t,lastUpdatedAt:e.lastUpdatedAt,path:e.path,children:w.jsx(Tu,{children:w.jsx(n.default,{})})})}}})),H9];async function W9(e,t){var r;const n=(r=ur(e,window.location,t))==null?void 0:r.filter(o=>o.route.lazy);n&&(n==null?void 0:n.length)>0&&await Promise.all(n.map(async o=>{const i=await o.route.lazy();Object.assign(o.route,{...i,lazy:void 0})}))}function K9(){const e=document.querySelectorAll('style[data-vocs-temp-style="true"]');for(const t of e)t.remove()}G9();async function G9(){const e=M0().basePath;await W9(tv,e),K9();const t=ox(tv,{basename:e});m0(document.getElementById("app"),w.jsx(bx,{children:w.jsx(hx,{router:t})}))}export{pS as C,nn as L,fS as R,hS as T,M6 as a,dS as b,I as c,YE as d,Jn as e,Y9 as g,w as j,eb as p,h as r,ot as u}; function __vite__mapDeps(indexes) { if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = ["assets/index-Ce7lYH_A.js","assets/react-timeline-BQRPMqgc.js","assets/react-groupedlist-C3IDjQ-a.js"] + __vite__mapDeps.viteFileDeps = ["assets/index-D7r4s9iC.js","assets/react-timeline-D6hmopBv.js","assets/react-groupedlist-CIMAK46-.js"] } return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) } diff --git a/assets/index-BDI8MtUd.js b/assets/index-XCvjYk2T.js similarity index 96% rename from assets/index-BDI8MtUd.js rename to assets/index-XCvjYk2T.js index 2ed4b2b..b9e7aaf 100644 --- a/assets/index-BDI8MtUd.js +++ b/assets/index-XCvjYk2T.js @@ -1,4 +1,4 @@ -import{d as t,j as e}from"./index-DDTn0JQN.js";const s={layout:"deafult",title:"Here are my projects",description:"undefined"};function n(a){const r={a:"a",div:"div",h1:"h1",h2:"h2",h3:"h3",header:"header",p:"p",...t(),...a.components};return e.jsxs(e.Fragment,{children:[e.jsx(r.header,{children:e.jsxs(r.h1,{id:"here-are-my-projects",children:["Here are my projects",e.jsx(r.a,{"aria-hidden":"true",tabIndex:"-1",href:"#here-are-my-projects",children:e.jsx(r.div,{"data-autolink-icon":!0})})]})}),` +import{d as t,j as e}from"./index-DqZhg8K9.js";const s={layout:"deafult",title:"Here are my projects",description:"undefined"};function n(a){const r={a:"a",div:"div",h1:"h1",h2:"h2",h3:"h3",header:"header",p:"p",...t(),...a.components};return e.jsxs(e.Fragment,{children:[e.jsx(r.header,{children:e.jsxs(r.h1,{id:"here-are-my-projects",children:["Here are my projects",e.jsx(r.a,{"aria-hidden":"true",tabIndex:"-1",href:"#here-are-my-projects",children:e.jsx(r.div,{"data-autolink-icon":!0})})]})}),` `,e.jsxs(r.h2,{id:"omicsverse",children:["OmicsVerse",e.jsx(r.a,{"aria-hidden":"true",tabIndex:"-1",href:"#omicsverse",children:e.jsx(r.div,{"data-autolink-icon":!0})})]}),` `,e.jsxs(r.p,{children:["The initial aim of the ",e.jsx(r.a,{href:"https://omicsverse.fr",children:"OmicsVerse portal"})," is to host demo versions of the various data applications I create."]}),` `,e.jsxs(r.p,{children:["Application source code and documentation for administrators can be found on my ",e.jsx(r.a,{href:"https://github.com/clbenoit",children:"github"}),"."]}),` diff --git a/assets/react-groupedlist-C3IDjQ-a.js b/assets/react-groupedlist-CIMAK46-.js similarity index 94% rename from assets/react-groupedlist-C3IDjQ-a.js rename to assets/react-groupedlist-CIMAK46-.js index b554d33..8725eae 100644 --- a/assets/react-groupedlist-C3IDjQ-a.js +++ b/assets/react-groupedlist-CIMAK46-.js @@ -1 +1 @@ -import{r as n,j as o}from"./index-DDTn0JQN.js";const u=()=>{const[i,m]=n.useState([{name:"Web",items:["React","CSS","HTML"],color:"rgb(44,62,80)"},{name:"Programming languages",items:["TypeScript","R","Python"],color:"rgb(44,62,80)"},{name:"Data science",items:["Statistics","Machine Learning","Graph theory"],color:"rgb(44,62,80)"},{name:"Data management & engineering",items:["Nextflow","Snakemake","PostgreSQL","SQL","ETL"],color:"rgb(44,62,80)"},{name:"Computing systems",items:["Docker","Singularity","High performance computing","Cloud computing","Linux","Windows"],color:"rgb(44,62,80)"},{name:"Life Science",items:["Molecular Biology","Genomics","Phylogenetics"],color:"rgb(44,62,80)"},{name:"Project Management",items:["Git","Teams"],color:"rgb(44,62,80)"}]),[a,r]=n.useState(i.map((t,e)=>e)),c=t=>{r(e=>e.includes(t)?e.filter(s=>s!==t):[...e,t])};return o.jsx("div",{style:{textAlign:"center"},children:i.map((t,e)=>o.jsxs("div",{className:"category-box",children:[o.jsx("div",{style:{fontWeight:"bold"},onClick:()=>c(e),children:t.name}),a.includes(e)&&o.jsx("ul",{style:{listStyleType:"none",padding:"0"},children:t.items.map((s,l)=>o.jsx("li",{style:{margin:"5px"},children:s},l))})]},e))})};export{u as default}; +import{r as n,j as o}from"./index-DqZhg8K9.js";const u=()=>{const[i,m]=n.useState([{name:"Web",items:["React","CSS","HTML"],color:"rgb(44,62,80)"},{name:"Programming languages",items:["TypeScript","R","Python"],color:"rgb(44,62,80)"},{name:"Data science",items:["Statistics","Machine Learning","Graph theory"],color:"rgb(44,62,80)"},{name:"Data management & engineering",items:["Nextflow","Snakemake","PostgreSQL","SQL","ETL"],color:"rgb(44,62,80)"},{name:"Computing systems",items:["Docker","Singularity","High performance computing","Cloud computing","Linux","Windows"],color:"rgb(44,62,80)"},{name:"Life Science",items:["Molecular Biology","Genomics","Phylogenetics"],color:"rgb(44,62,80)"},{name:"Project Management",items:["Git","Teams"],color:"rgb(44,62,80)"}]),[a,r]=n.useState(i.map((t,e)=>e)),c=t=>{r(e=>e.includes(t)?e.filter(s=>s!==t):[...e,t])};return o.jsx("div",{style:{textAlign:"center"},children:i.map((t,e)=>o.jsxs("div",{className:"category-box",children:[o.jsx("div",{style:{fontWeight:"bold"},onClick:()=>c(e),children:t.name}),a.includes(e)&&o.jsx("ul",{style:{listStyleType:"none",padding:"0"},children:t.items.map((s,l)=>o.jsx("li",{style:{margin:"5px"},children:s},l))})]},e))})};export{u as default}; diff --git a/assets/react-timeline-BQRPMqgc.js b/assets/react-timeline-D6hmopBv.js similarity index 99% rename from assets/react-timeline-BQRPMqgc.js rename to assets/react-timeline-D6hmopBv.js index a4998bd..ca079e1 100644 --- a/assets/react-timeline-BQRPMqgc.js +++ b/assets/react-timeline-D6hmopBv.js @@ -1,4 +1,4 @@ -import{r as b,p as z,g as J,e as Y,j as e}from"./index-DDTn0JQN.js";import Z from"./react-groupedlist-C3IDjQ-a.js";var O={},F={exports:{}};/*! +import{r as b,p as z,g as J,e as Y,j as e}from"./index-DqZhg8K9.js";import Z from"./react-groupedlist-CIMAK46-.js";var O={},F={exports:{}};/*! Copyright (c) 2018 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames diff --git a/assets/somavardb-GiTomQGC.js b/assets/somavardb-CGR6l3Uz.js similarity index 99% rename from assets/somavardb-GiTomQGC.js rename to assets/somavardb-CGR6l3Uz.js index ee8ea29..95205df 100644 --- a/assets/somavardb-GiTomQGC.js +++ b/assets/somavardb-CGR6l3Uz.js @@ -1,4 +1,4 @@ -import{d as a,j as e}from"./index-DDTn0JQN.js";const o={layout:"deafult",title:"SomaVarDB",description:"undefined"};function i(t){const n={a:"a",div:"div",em:"em",h1:"h1",h2:"h2",header:"header",img:"img",li:"li",ol:"ol",p:"p",section:"section",strong:"strong",sup:"sup",ul:"ul",...a(),...t.components};return e.jsxs(e.Fragment,{children:[e.jsx(n.header,{children:e.jsxs(n.h1,{id:"somavardb",children:["SomaVarDB",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#somavardb",children:e.jsx(n.div,{"data-autolink-icon":!0})})]})}),` +import{d as a,j as e}from"./index-DqZhg8K9.js";const o={layout:"deafult",title:"SomaVarDB",description:"undefined"};function i(t){const n={a:"a",div:"div",em:"em",h1:"h1",h2:"h2",header:"header",img:"img",li:"li",ol:"ol",p:"p",section:"section",strong:"strong",sup:"sup",ul:"ul",...a(),...t.components};return e.jsxs(e.Fragment,{children:[e.jsx(n.header,{children:e.jsxs(n.h1,{id:"somavardb",children:["SomaVarDB",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#somavardb",children:e.jsx(n.div,{"data-autolink-icon":!0})})]})}),` `,e.jsxs(n.p,{children:[e.jsxs("div",{children:[" ",e.jsx("h3",{children:e.jsx("i",{children:"A graphical interface to explore your somatic genomic variation database."})})]}),` `,e.jsx(n.img,{src:"/portfolio/somavardb.gif",alt:""})]}),` `,e.jsxs(n.h2,{id:"why-this-app",children:["Why this app",e.jsx(n.a,{"aria-hidden":"true",tabIndex:"-1",href:"#why-this-app",children:e.jsx(n.div,{"data-autolink-icon":!0})})]}),` diff --git a/assets/style-JLe970_A.css b/assets/style-JLe970_A.css deleted file mode 100644 index 0e37e98..0000000 --- a/assets/style-JLe970_A.css +++ /dev/null @@ -1 +0,0 @@ -@layer vocs_preflight;:root{--vocs-color_white: rgba(255 255 255 / 100%);--vocs-color_black: rgba(0 0 0 / 100%);--vocs-color_background: rgba(255 255 255 / 100%);--vocs-color_background2: #f9f9f9;--vocs-color_background3: #f6f6f6;--vocs-color_background4: #f0f0f0;--vocs-color_background5: #e8e8e8;--vocs-color_backgroundAccent: #5b5bd6;--vocs-color_backgroundAccentHover: #5151cd;--vocs-color_backgroundAccentText: rgba(255 255 255 / 100%);--vocs-color_backgroundBlueTint: #008cff0b;--vocs-color_backgroundDark: #f9f9f9;--vocs-color_backgroundGreenTint: #00a32f0b;--vocs-color_backgroundGreenTint2: #00a43319;--vocs-color_backgroundIrisTint: #0000ff07;--vocs-color_backgroundRedTint: #ff000008;--vocs-color_backgroundRedTint2: #f3000d14;--vocs-color_backgroundYellowTint: #f4dd0016;--vocs-color_border: #ececec;--vocs-color_border2: #cecece;--vocs-color_borderAccent: #5753c6;--vocs-color_borderBlue: #009eff2a;--vocs-color_borderGreen: #019c393b;--vocs-color_borderIris: #dadcff;--vocs-color_borderRed: #ff000824;--vocs-color_borderYellow: #ffd5008f;--vocs-color_heading: #202020;--vocs-color_inverted: rgba(0 0 0 / 100%);--vocs-color_shadow: #0000000f;--vocs-color_shadow2: #00000006;--vocs-color_text: #4c4c4c;--vocs-color_text2: #646464;--vocs-color_text3: #838383;--vocs-color_text4: #bbbbbb;--vocs-color_textAccent: #5753c6;--vocs-color_textAccentHover: #272962;--vocs-color_textBlue: #0d74ce;--vocs-color_textBlueHover: #113264;--vocs-color_textGreen: #218358;--vocs-color_textGreenHover: #193b2d;--vocs-color_textIris: #5753c6;--vocs-color_textIrisHover: #272962;--vocs-color_textRed: #ce2c31;--vocs-color_textRedHover: #641723;--vocs-color_textYellow: #9e6c00;--vocs-color_textYellowHover: #473b1f;--vocs-color_title: #202020}:root.dark{--vocs-color_white: rgba(255 255 255 / 100%);--vocs-color_black: rgba(0 0 0 / 100%);--vocs-color_background: #232225;--vocs-color_background2: #2b292d;--vocs-color_background3: #2e2c31;--vocs-color_background4: #323035;--vocs-color_background5: #3c393f;--vocs-color_backgroundAccent: #5b5bd6;--vocs-color_backgroundAccentHover: #5753c6;--vocs-color_backgroundAccentText: rgba(255 255 255 / 100%);--vocs-color_backgroundBlueTint: #008ff519;--vocs-color_backgroundDark: #1e1d1f;--vocs-color_backgroundGreenTint: #00a43319;--vocs-color_backgroundGreenTint2: #00a83829;--vocs-color_backgroundIrisTint: #000bff19;--vocs-color_backgroundRedTint: #f3000d14;--vocs-color_backgroundRedTint2: #ff000824;--vocs-color_backgroundYellowTint: #f4dd0016;--vocs-color_border: #3c393f;--vocs-color_border2: #6f6d78;--vocs-color_borderAccent: #6e6ade;--vocs-color_borderBlue: #009eff2a;--vocs-color_borderGreen: #019c393b;--vocs-color_borderIris: #303374;--vocs-color_borderRed: #ff000824;--vocs-color_borderYellow: #f4dd0016;--vocs-color_heading: #e9e9ea;--vocs-color_inverted: rgba(255 255 255 / 100%);--vocs-color_shadow: #00000000;--vocs-color_shadow2: rgba(0, 0, 0, .05);--vocs-color_text: #cfcfcf;--vocs-color_text2: #bdbdbe;--vocs-color_text3: #a7a7a8;--vocs-color_text4: #656567;--vocs-color_textAccent: #b1a9ff;--vocs-color_textAccentHover: #6e6ade;--vocs-color_textBlue: #70b8ff;--vocs-color_textBlueHover: #3b9eff;--vocs-color_textGreen: #3dd68c;--vocs-color_textGreenHover: #33b074;--vocs-color_textIris: #b1a9ff;--vocs-color_textIrisHover: #6e6ade;--vocs-color_textRed: #ff9592;--vocs-color_textRedHover: #ec5d5e;--vocs-color_textYellow: #f5e147;--vocs-color_textYellowHover: #e2a336;--vocs-color_title: rgba(255 255 255 / 100%)}:root{--vocs-color_blockquoteBorder: var(--vocs-color_border);--vocs-color_blockquoteText: var(--vocs-color_text3);--vocs-color_dangerBackground: var(--vocs-color_backgroundRedTint);--vocs-color_dangerBorder: var(--vocs-color_borderRed);--vocs-color_dangerText: var(--vocs-color_textRed);--vocs-color_dangerTextHover: var(--vocs-color_textRedHover);--vocs-color_infoBackground: var(--vocs-color_backgroundBlueTint);--vocs-color_infoBorder: var(--vocs-color_borderBlue);--vocs-color_infoText: var(--vocs-color_textBlue);--vocs-color_infoTextHover: var(--vocs-color_textBlueHover);--vocs-color_noteBackground: var(--vocs-color_background2);--vocs-color_noteBorder: var(--vocs-color_border);--vocs-color_noteText: var(--vocs-color_text2);--vocs-color_successBackground: var(--vocs-color_backgroundGreenTint);--vocs-color_successBorder: var(--vocs-color_borderGreen);--vocs-color_successText: var(--vocs-color_textGreen);--vocs-color_successTextHover: var(--vocs-color_textGreenHover);--vocs-color_tipBackground: var(--vocs-color_backgroundIrisTint);--vocs-color_tipBorder: var(--vocs-color_borderIris);--vocs-color_tipText: var(--vocs-color_textIris);--vocs-color_tipTextHover: var(--vocs-color_textIrisHover);--vocs-color_warningBackground: var(--vocs-color_backgroundYellowTint);--vocs-color_warningBorder: var(--vocs-color_borderYellow);--vocs-color_warningText: var(--vocs-color_textYellow);--vocs-color_warningTextHover: var(--vocs-color_textYellowHover);--vocs-color_codeBlockBackground: var(--vocs-color_background2);--vocs-color_codeCharacterHighlightBackground: var(--vocs-color_background5);--vocs-color_codeHighlightBackground: var(--vocs-color_background4);--vocs-color_codeHighlightBorder: var(--vocs-color_border2);--vocs-color_codeInlineBackground: var(--vocs-color_background4);--vocs-color_codeInlineBorder: var(--vocs-color_border);--vocs-color_codeInlineText: var(--vocs-color_textAccent);--vocs-color_codeTitleBackground: var(--vocs-color_background4);--vocs-color_lineNumber: var(--vocs-color_text4);--vocs-color_hr: var(--vocs-color_border);--vocs-color_link: var(--vocs-color_textAccent);--vocs-color_linkHover: var(--vocs-color_textAccentHover);--vocs-color_searchHighlightBackground: var(--vocs-color_borderAccent);--vocs-color_searchHighlightText: var(--vocs-color_background);--vocs-color_tableBorder: var(--vocs-color_border);--vocs-color_tableHeaderBackground: var(--vocs-color_background2);--vocs-color_tableHeaderText: var(--vocs-color_text2)}:root{--vocs-borderRadius_0: 0;--vocs-borderRadius_2: 2px;--vocs-borderRadius_3: 3px;--vocs-borderRadius_4: 4px;--vocs-borderRadius_6: 6px;--vocs-borderRadius_8: 8px}:root{--vocs-fontFamily_default: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--vocs-fontFamily_mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}:root{--vocs-fontSize_9: .5625rem;--vocs-fontSize_11: .6875rem;--vocs-fontSize_12: .75rem;--vocs-fontSize_13: .8125rem;--vocs-fontSize_14: .875rem;--vocs-fontSize_15: .9375rem;--vocs-fontSize_16: 1rem;--vocs-fontSize_18: 1.125rem;--vocs-fontSize_20: 1.25rem;--vocs-fontSize_24: 1.5rem;--vocs-fontSize_32: 2rem;--vocs-fontSize_64: 3rem;--vocs-fontSize_root: 16px;--vocs-fontSize_h1: var(--vocs-fontSize_32);--vocs-fontSize_h2: var(--vocs-fontSize_24);--vocs-fontSize_h3: var(--vocs-fontSize_20);--vocs-fontSize_h4: var(--vocs-fontSize_18);--vocs-fontSize_h5: var(--vocs-fontSize_16);--vocs-fontSize_h6: var(--vocs-fontSize_16);--vocs-fontSize_calloutCodeBlock: .8em;--vocs-fontSize_code: .875em;--vocs-fontSize_codeBlock: var(--vocs-fontSize_14);--vocs-fontSize_lineNumber: var(--vocs-fontSize_15);--vocs-fontSize_subtitle: var(--vocs-fontSize_20);--vocs-fontSize_th: var(--vocs-fontSize_14);--vocs-fontSize_td: var(--vocs-fontSize_14)}:root{--vocs-fontWeight_regular: 300;--vocs-fontWeight_medium: 400;--vocs-fontWeight_semibold: 500}:root{--vocs-lineHeight_code: 1.75em;--vocs-lineHeight_heading: 1.5em;--vocs-lineHeight_listItem: 1.5em;--vocs-lineHeight_outlineItem: 1em;--vocs-lineHeight_paragraph: 1.75em;--vocs-lineHeight_sidebarItem: 1.375em}:root{--vocs-space_0: 0px;--vocs-space_1: 1px;--vocs-space_2: .125rem;--vocs-space_3: .1875rem;--vocs-space_4: .25rem;--vocs-space_6: .375rem;--vocs-space_8: .5rem;--vocs-space_12: .75rem;--vocs-space_14: .875rem;--vocs-space_16: 1rem;--vocs-space_18: 1.125rem;--vocs-space_20: 1.25rem;--vocs-space_22: 1.375rem;--vocs-space_24: 1.5rem;--vocs-space_28: 1.75rem;--vocs-space_32: 2rem;--vocs-space_36: 2.25rem;--vocs-space_40: 2.5rem;--vocs-space_44: 2.75rem;--vocs-space_48: 3rem;--vocs-space_56: 3.5rem;--vocs-space_64: 4rem;--vocs-space_72: 4.5rem;--vocs-space_80: 5rem}:root{--vocs-zIndex_backdrop: 69420;--vocs-zIndex_drawer: 69421;--vocs-zIndex_gutterRight: 11;--vocs-zIndex_gutterLeft: 14;--vocs-zIndex_gutterTop: 13;--vocs-zIndex_gutterTopCurtain: 12;--vocs-zIndex_popover: 69422;--vocs-zIndex_surface: 10}:root{--vocs-content_horizontalPadding: var(--vocs-space_48);--vocs-content_verticalPadding: var(--vocs-space_32);--vocs-content_width: calc(70ch + (var(--vocs-content_horizontalPadding) * 2))}:root{--vocs-outline_width: 280px}:root{--vocs-sidebar_horizontalPadding: var(--vocs-space_24);--vocs-sidebar_verticalPadding: var(--vocs-space_0);--vocs-sidebar_width: 300px}:root{--vocs-topNav_height: 60px;--vocs-topNav_horizontalPadding: var(--vocs-content_horizontalPadding);--vocs-topNav_curtainHeight: 40px}@media screen and (width <= 1080px){:root{--vocs-content_verticalPadding: var(--vocs-space_48);--vocs-content_horizontalPadding: var(--vocs-space_24);--vocs-sidebar_horizontalPadding: var(--vocs-space_16);--vocs-sidebar_verticalPadding: var(--vocs-space_16);--vocs-sidebar_width: 300px;--vocs-topNav_height: 48px}}@media screen and (width <= 720px){:root{--vocs-content_horizontalPadding: var(--vocs-space_16);--vocs-content_verticalPadding: var(--vocs-space_32)}}.vocs_Banner{background-color:var(--vocs_Banner_bannerBackgroundColor, var(--vocs-color_backgroundAccent));border-bottom:1px solid var(--vocs_Banner_bannerBackgroundColor, var(--vocs-color_borderAccent));color:var(--vocs_Banner_bannerTextColor, var(--vocs-color_backgroundAccentText));height:var(--vocs_Banner_bannerHeight, 36px);position:fixed;top:0;width:100%;z-index:var(--vocs-zIndex_gutterTop)}.vocs_Banner_content{font-size:var(--vocs-fontSize_14);overflow-x:scroll;padding-left:var(--vocs-space_8);padding-right:var(--vocs-space_8);margin-right:var(--vocs-space_24);-ms-overflow-style:none;scrollbar-width:none;white-space:pre}.vocs_Banner_content::-webkit-scrollbar{display:none}.vocs_Banner_inner{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.vocs_Banner_closeButton{align-items:center;background-color:var(--vocs_Banner_bannerBackgroundColor, var(--vocs-color_backgroundAccent));display:flex;justify-content:center;height:100%;position:absolute;right:0;width:var(--vocs-space_24)}.vocs_Banner_content a{font-weight:400;text-underline-offset:2px;text-decoration:underline}@media screen and (width <= 1080px){.vocs_Banner{position:initial}}.vocs_DocsLayout{--vocs_DocsLayout_leftGutterWidth: max(calc((100vw - var(--vocs-content_width)) / 2), var(--vocs-sidebar_width))}.vocs_DocsLayout_content{background-color:var(--vocs-color_background);margin-left:auto;margin-right:auto;max-width:var(--vocs-content_width);min-height:100vh}.vocs_DocsLayout_content_withSidebar{margin-left:var(--vocs_DocsLayout_leftGutterWidth);margin-right:unset}.vocs_DocsLayout_gutterLeft{background-color:var(--vocs-color_backgroundDark);justify-content:flex-end;display:flex;height:100vh;position:fixed;top:var(--vocs_Banner_bannerHeight, 0px);width:var(--vocs_DocsLayout_leftGutterWidth);z-index:var(--vocs-zIndex_gutterLeft)}.vocs_DocsLayout_gutterTop{align-items:center;background-color:color-mix(in srgb,var(--vocs-color_background) 98%,transparent);height:var(--vocs-topNav_height);width:100vw;z-index:var(--vocs-zIndex_gutterTop)}.vocs_DocsLayout_gutterTopCurtain{display:flex;height:var(--vocs-topNav_curtainHeight);width:100vw;z-index:var(--vocs-zIndex_gutterTopCurtain)}.vocs_DocsLayout_gutterTopCurtain_hidden{background:unset;display:none}.vocs_DocsLayout_gutterRight{display:flex;height:100vh;overflow-y:auto;padding:calc(var(--vocs-content_verticalPadding) + var(--vocs-topNav_height) + var(--vocs-space_8)) var(--vocs-space_24) 0 0;position:fixed;top:var(--vocs_Banner_bannerHeight, 0px);right:0;width:calc((100vw - var(--vocs-content_width)) / 2);z-index:var(--vocs-zIndex_gutterRight)}.vocs_DocsLayout_gutterRight::-webkit-scrollbar{display:none}.vocs_DocsLayout_gutterRight_withSidebar{width:calc(100vw - var(--vocs-content_width) - var(--vocs_DocsLayout_leftGutterWidth))}.vocs_DocsLayout_outlinePopover{display:none;overflow-y:auto;height:calc(100vh - var(--vocs-topNav_height) - var(--vocs-topNav_curtainHeight))}.vocs_DocsLayout_sidebar{padding:var(--vocs-space_0) var(--vocs-sidebar_horizontalPadding) var(--vocs-space_24) var(--vocs-sidebar_horizontalPadding)}.vocs_DocsLayout_sidebarDrawer{display:none}@media screen and (width <= 720px){.vocs_DocsLayout_content{overflow-x:hidden}}@media screen and (width > 1080px){.vocs_DocsLayout_content_withTopNav{padding-top:calc(var(--vocs-topNav_height) + var(--vocs_Banner_bannerHeight, 0px))}.vocs_DocsLayout_gutterTop{padding-left:calc(var(--vocs_DocsLayout_leftGutterWidth) - var(--vocs-sidebar_width));padding-right:calc(var(--vocs_DocsLayout_leftGutterWidth) - var(--vocs-sidebar_width));position:fixed;top:var(--vocs_Banner_bannerHeight, 0px)}.vocs_DocsLayout_gutterTop_offsetLeftGutter{padding-left:var(--vocs_DocsLayout_leftGutterWidth)}.vocs_DocsLayout_gutterTopCurtain{position:fixed;top:calc(var(--vocs-topNav_height) + var(--vocs_Banner_bannerHeight, 0px))}.vocs_DocsLayout_gutterTopCurtain_withSidebar{margin-left:var(--vocs_DocsLayout_leftGutterWidth)}}@media screen and (width <= 1080px){.vocs_DocsLayout_content{margin-left:auto;margin-right:auto}.vocs_DocsLayout_gutterLeft{display:none}.vocs_DocsLayout_gutterTop{position:initial}.vocs_DocsLayout_gutterTop_sticky,.vocs_DocsLayout_gutterTopCurtain{position:sticky;top:0}.vocs_DocsLayout_outlinePopover,.vocs_DocsLayout_sidebarDrawer{display:block}}@media screen and (width <= 1280px){.vocs_DocsLayout_gutterRight{display:none}}@layer vocs_reset_reset;html,body,.vocs_DocsLayout{font-family:var(--vocs-fontFamily_default);font-feature-settings:"rlig" 1,"calt" 1;font-size:var(--vocs-fontSize_root)}button,select{text-transform:none}button,select{-webkit-appearance:button;-moz-appearance:button;appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{outline:auto}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none;-moz-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;-moz-appearance:button;appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1}input::placeholder,textarea::placeholder{opacity:1}button,[role=button]{cursor:pointer}:disabled{overflow:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}@layer vocs_reset_reset{*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid}*:focus-visible{outline:2px solid var(--vocs-color_borderAccent);outline-offset:2px;outline-style:dashed}html,body{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:inherit;margin:0;padding:0;border:0;text-rendering:optimizeLegibility}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;text-wrap:balance}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--vocs-fontFamily_mono);font-size:var(--vocs-fontSize_root)}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:inherit;border-collapse:collapse;text-indent:0}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}}.vocs_Tabs{background-color:var(--vocs-color_codeBlockBackground);border:1px solid var(--vocs-color_codeInlineBorder);border-radius:var(--vocs-borderRadius_4)}.vocs_Tabs_list{background-color:var(--vocs-color_codeTitleBackground);border-bottom:1px solid var(--vocs-color_border);border-top-left-radius:var(--vocs-borderRadius_4);border-top-right-radius:var(--vocs-borderRadius_4);display:flex;padding:var(--vocs-space_0) var(--vocs-space_14)}.vocs_Tabs_trigger{border-bottom:2px solid transparent;color:var(--vocs-color_text3);font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);padding:var(--vocs-space_8) var(--vocs-space_8) var(--vocs-space_6) var(--vocs-space_8);transition:color .1s}.vocs_Tabs_trigger:hover{color:var(--vocs-color_text)}.vocs_Tabs_trigger[data-state=active]{border-bottom:2px solid var(--vocs-color_borderAccent);color:var(--vocs-color_text)}.vocs_Tabs_content{background-color:var(--vocs-color_codeBlockBackground)}.vocs_Tabs_content:not([data-shiki=true]){padding:var(--vocs-space_20) var(--vocs-space_22)}.vocs_Tabs pre{margin-bottom:var(--vocs-space_0)}@media screen and (width <= 720px){.vocs_Tabs_list{border-radius:0;padding:var(--vocs-space_0) var(--vocs-space_8)}.vocs_Tabs_content:not([data-shiki=true]){padding:var(--vocs-space_20) var(--vocs-space_16)}.vocs_Tabs pre{margin:unset}}.vocs_CodeBlock{border:1px solid var(--vocs-color_codeInlineBorder);border-radius:var(--vocs-borderRadius_4)}.vocs_Tabs .vocs_CodeBlock,undefined .vocs_CodeBlock{border:none;margin-left:unset;margin-right:unset}.vocs_CodeBlock code{display:grid;font-size:var(--vocs-fontSize_codeBlock)}undefined .vocs_CodeBlock code{font-size:var(--vocs-fontSize_calloutCodeBlock)}.vocs_CodeBlock pre{background-color:var(--vocs-color_codeBlockBackground);border-radius:var(--vocs-borderRadius_4);overflow-x:auto;padding:var(--vocs-space_20) var(--vocs-space_0)}undefined .vocs_CodeBlock pre{background-color:color-mix(in srgb,var(--vocs-color_codeBlockBackground) 65%,transparent)!important;border:1px solid var(--vocs-color_codeInlineBorder);border-radius:var(--vocs-borderRadius_4);padding:var(--vocs-space_12) var(--vocs-space_0)}.vocs_CodeBlock .line{border-left:2px solid transparent;padding:var(--vocs-space_0) var(--vocs-space_22);line-height:var(--vocs-lineHeight_code)}undefined .vocs_CodeBlock .line{padding:var(--vocs-space_0) var(--vocs-space_12)}.vocs_CodeBlock .twoslash-popup-info .line{padding:var(--vocs-space_0) var(--vocs-space_4)}.vocs_CodeBlock .twoslash-popup-info-hover .line{display:inline-block;padding:var(--vocs-space_0) var(--vocs-space_8)}.vocs_CodeBlock .twoslash-error-line,.vocs_CodeBlock .twoslash-tag-line{padding:var(--vocs-space_0) var(--vocs-space_22)}.vocs_CodeBlock [data-line-numbers]{counter-reset:line}.vocs_CodeBlock [data-line-numbers]>.line{padding:var(--vocs-space_0) var(--vocs-space_16)}.vocs_CodeBlock [data-line-numbers]>.line:before{content:counter(line);color:var(--vocs-color_lineNumber);display:inline-block;font-size:var(--vocs-fontSize_lineNumber);margin-right:var(--vocs-space_16);text-align:right;width:1rem}.vocs_CodeBlock [data-line-numbers]>.line:not(.diff.remove+.diff.add):before{counter-increment:line}.vocs_CodeBlock [data-line-numbers]>.line.diff:after{margin-left:calc(-1 * var(--vocs-space_4))}.vocs_CodeBlock .highlighted{background-color:var(--vocs-color_codeHighlightBackground);border-left:2px solid var(--vocs-color_codeHighlightBorder);box-sizing:content-box}.vocs_CodeBlock .highlighted-word{border-radius:var(--vocs-borderRadius_2);background-color:var(--vocs-color_codeCharacterHighlightBackground)!important;box-shadow:0 0 0 4px var(--vocs-color_codeCharacterHighlightBackground)}.vocs_CodeBlock .has-diff{position:relative}.vocs_CodeBlock .line.diff:after{position:absolute;left:var(--vocs-space_8)}.vocs_CodeBlock .line.diff.add{background-color:var(--vocs-color_backgroundGreenTint2)}.vocs_CodeBlock .line.diff.add:after{content:"+";color:var(--vocs-color_textGreen)}.vocs_CodeBlock .line.diff.remove{background-color:var(--vocs-color_backgroundRedTint2);opacity:.6}.vocs_CodeBlock .line.diff.remove>span{filter:grayscale(1)}.vocs_CodeBlock .line.diff.remove:after{content:"-";color:var(--vocs-color_textRed)}.vocs_CodeBlock .has-focused>code>.line:not(.focused),.vocs_CodeBlock .has-focused>code>.twoslash-meta-line:not(.focused){opacity:.3;transition:opacity .2s}.vocs_CodeBlock:hover .has-focused .line:not(.focused),.vocs_CodeBlock:hover .has-focused .twoslash-meta-line:not(.focused){opacity:1;transition:opacity .2s}@media screen and (width <= 720px){.vocs_CodeBlock{border-radius:0;border-right:none;border-left:none;margin-left:calc(-1 * var(--vocs-space_16));margin-right:calc(-1 * var(--vocs-space_16))}.vocs_CodeBlock pre{border-radius:0}.vocs_CodeBlock .line,.vocs_CodeBlock .twoslash-error-line,.vocs_CodeBlock .twoslash-tag-line{padding:0 var(--vocs-space_16)}.vocs_CodeBlock .line.diff:after{left:var(--vocs-space_6)}}.vocs_Header{border-bottom:1px solid var(--vocs-color_border)}.vocs_Header:not(:last-child){margin-bottom:var(--vocs-space_28);padding-bottom:var(--vocs-space_28)}[data-layout=landing] .vocs_Header{padding-bottom:var(--vocs-space_16)}[data-layout=landing] .vocs_Header:not(:first-child){padding-top:var(--vocs-space_36)}.vocs_H2{font-size:var(--vocs-fontSize_h2);letter-spacing:-.02em}.vocs_H2.vocs_H2:not(:last-child){margin-bottom:var(--vocs-space_24)}:not(.vocs_Header)+.vocs_H2:not(:only-child){border-top:1px solid var(--vocs-color_border);margin-top:var(--vocs-space_56);padding-top:var(--vocs-space_24)}[data-layout=landing] .vocs_H2.vocs_H2{border-top:none;margin-top:var(--vocs-space_24);padding-top:0}.vocs_H3{font-size:var(--vocs-fontSize_h3)}.vocs_H3:not(:first-child){margin-top:var(--vocs-space_18);padding-top:var(--vocs-space_18)}.vocs_H3.vocs_H3:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_H2+.vocs_H3{padding-top:var(--vocs-space_0)}.vocs_H4{font-size:var(--vocs-fontSize_h4)}.vocs_H4:not(:first-child){margin-top:var(--vocs-space_18);padding-top:var(--vocs-space_12)}.vocs_H4.vocs_H4:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_H3+.vocs_H4{padding-top:var(--vocs-space_0)}.vocs_H5{font-size:var(--vocs-fontSize_h5)}.vocs_H5:not(:first-child){margin-top:var(--vocs-space_16)}.vocs_H5.vocs_H5:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_H4+.vocs_H5{padding-top:var(--vocs-space_0)}.vocs_H6{font-size:var(--vocs-fontSize_h6)}.vocs_H6:not(:first-child){margin-top:var(--vocs-space_16)}.vocs_H6.vocs_H6:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_H5+.vocs_H6{padding-top:var(--vocs-space_0)}.vocs_Step:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_Step_title{margin-bottom:var(--vocs-space_8);position:relative}.vocs_Step_title:before{content:counter(step);align-items:center;background-color:var(--vocs-color_background5);border-radius:100%;border:.5em solid var(--vocs-color_background);box-sizing:content-box;color:var(--vocs-color_text2);counter-increment:step;display:flex;font-size:.625em;font-weight:var(--vocs-fontWeight_regular);height:2em;justify-content:center;left:calc(-25.125px - 1.45em);position:absolute;top:-.25em;width:2em}.vocs_H2+.vocs_Step_content,.vocs_H3+.vocs_Step_content,.vocs_H4+.vocs_Step_content,.vocs_H5+.vocs_Step_content,.vocs_H6+.vocs_Step_content{margin-top:calc(var(--vocs-space_8) * -1)}.vocs_Step_content>*:not(:last-child){margin-bottom:var(--vocs-space_16)}.vocs_Step_content>*:last-child{margin-bottom:var(--vocs-space_0)}@media screen and (width <= 720px){.vocs_Step_content>.vocs_Tabs,.vocs_Step_content>.vocs_CodeBlock{outline:6px solid var(--vocs-color_background);margin-left:calc(-1 * var(--vocs-space_44) - 2px);margin-right:calc(-1 * var(--vocs-space_16))}.vocs_Step_content .vocs_Tabs pre.shiki{border-top:none}}.vocs_Callout{border-radius:var(--vocs-borderRadius_4);font-size:var(--vocs-fontSize_14);padding:var(--vocs-space_16) var(--vocs-space_20);margin-bottom:var(--vocs-space_16)}.vocs_Callout_note{background-color:var(--vocs-color_noteBackground);border:1px solid var(--vocs-color_noteBorder);color:var(--vocs-color_noteText)}.vocs_Callout_info{background-color:var(--vocs-color_infoBackground);border:1px solid var(--vocs-color_infoBorder);color:var(--vocs-color_infoText)}.vocs_Callout_warning{background-color:var(--vocs-color_warningBackground);border:1px solid var(--vocs-color_warningBorder);color:var(--vocs-color_warningText)}.vocs_Callout_danger{background-color:var(--vocs-color_dangerBackground);border:1px solid var(--vocs-color_dangerBorder);color:var(--vocs-color_dangerText)}.vocs_Callout_tip{background-color:var(--vocs-color_tipBackground);border:1px solid var(--vocs-color_tipBorder);color:var(--vocs-color_tipText)}.vocs_Callout_success{background-color:var(--vocs-color_successBackground);border:1px solid var(--vocs-color_successBorder);color:var(--vocs-color_successText)}@media screen and (width <= 720px){:not(.vocs_Step_content)>.vocs_Callout{border-radius:0;border-left-width:0;border-right-width:0;margin-left:calc(-1 * var(--vocs-space_16));margin-right:calc(-1 * var(--vocs-space_16))}}.vocs_Content{background-color:var(--vocs-color_background);max-width:var(--vocs-content_width);padding:var(--vocs-content_verticalPadding) var(--vocs-content_horizontalPadding);width:100%}.vocs_Callout>*+.vocs_Details{margin-top:-8px}@layer vocs_global_global;:root.dark{color-scheme:dark}:root.dark pre.shiki span:not(.line),:root.dark :not(pre.shiki) .line span{color:var(--shiki-dark)!important}pre.shiki{background-color:var(--vocs-color_codeBlockBackground)!important}.vocs_Content>*:not(:last-child),.vocs_Details>*:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_Callout>*:not(:last-child),.vocs_Callout>.vocs_Details>*:not(:last-child){margin-bottom:var(--vocs-space_16)}.vocs_Content>*:last-child,.vocs_Callout>*:last-child,.vocs_Details>*:last-child{margin-bottom:var(--vocs-space_0)}#app[aria-hidden=true]{background:var(--vocs-color_background)}@layer vocs_global_global{:root{background-color:var(--vocs-color_background);color:var(--vocs-color_text);line-height:var(--vocs-lineHeight_paragraph);font-size:var(--vocs-fontSize_root);font-weight:var(--vocs-fontWeight_regular)}}@media screen and (width <= 720px){:root{background-color:var(--vocs-color_backgroundDark)}}:root{--vocs-twoslash_borderColor: var(--vocs-color_border2);--vocs-twoslash_underlineColor: currentColor;--vocs-twoslash_popupBackground: var(--vocs-color_background2);--vocs-twoslash_popupShadow: rgba(0, 0, 0, .08) 0px 1px 4px;--vocs-twoslash_matchedColor: inherit;--vocs-twoslash_unmatchedColor: #888;--vocs-twoslash_cursorColor: #8888;--vocs-twoslash_errorColor: var(--vocs-color_textRed);--vocs-twoslash_errorBackground: var(--vocs-color_backgroundRedTint2);--vocs-twoslash_highlightedBackground: var(--vocs-color_background);--vocs-twoslash_highlightedBorder: var(--vocs-color_background);--vocs-twoslash_tagColor: var(--vocs-color_textBlue);--vocs-twoslash_tagBackground: var(--vocs-color_backgroundBlueTint);--vocs-twoslash_tagWarnColor: var(--vocs-color_textYellow);--vocs-twoslash_tagWarnBackground: var(--vocs-color_backgroundYellowTint);--vocs-twoslash_tagAnnotateColor: var(--vocs-color_textGreen);--vocs-twoslash_tagAnnotateBackground: var(--vocs-color_backgroundGreenTint2)}:root.dark{--vocs-twoslash_borderColor: var(--vocs-color_border2);--vocs-twoslash_underlineColor: currentColor;--vocs-twoslash_popupBackground: var(--vocs-color_background5);--vocs-twoslash_popupShadow: rgba(0, 0, 0, .08) 0px 1px 4px;--vocs-twoslash_matchedColor: inherit;--vocs-twoslash_unmatchedColor: #888;--vocs-twoslash_cursorColor: #8888;--vocs-twoslash_errorColor: var(--vocs-color_textRed);--vocs-twoslash_errorBackground: var(--vocs-color_backgroundRedTint2);--vocs-twoslash_highlightedBackground: var(--vocs-color_background);--vocs-twoslash_highlightedBorder: var(--vocs-color_background);--vocs-twoslash_tagColor: var(--vocs-color_textBlue);--vocs-twoslash_tagBackground: var(--vocs-color_backgroundBlueTint);--vocs-twoslash_tagWarnColor: var(--vocs-color_textYellow);--vocs-twoslash_tagWarnBackground: var(--vocs-color_backgroundYellowTint);--vocs-twoslash_tagAnnotateColor: var(--vocs-color_textGreen);--vocs-twoslash_tagAnnotateBackground: var(--vocs-color_backgroundGreenTint2)}:root .twoslash-popup-info-hover,:root .twoslash-popup-info{--shiki-light-bg: var(--vocs-color_background2)}:root .twoslash-popup-info{width:-moz-max-content;width:max-content}:root.dark .twoslash-popup-info,:root.dark .twoslash-popup-info-hover{--shiki-dark-bg: var(--vocs-color_background5)}.twoslash-query-persisted>.twoslash-popup-info{z-index:1}:not(.twoslash-query-persisted)>.twoslash-popup-info{z-index:2}.twoslash:hover .twoslash-hover{border-color:var(--vocs-twoslash_underlineColor)}.twoslash .twoslash-hover{border-bottom:1px dotted transparent;transition-timing-function:ease;transition:border-color .3s}.twoslash-query-persisted{position:relative}.twoslash .twoslash-popup-info{position:absolute;top:0;left:0;opacity:0;display:inline-block;transform:translateY(1.1em);background:var(--vocs-twoslash_popupBackground);border:1px solid var(--vocs-twoslash_borderColor);transition:opacity .3s;border-radius:4px;max-width:540px;padding:4px 6px;pointer-events:none;text-align:left;z-index:20;white-space:pre-wrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-shadow:var(--vocs-twoslash_popupShadow)}.twoslash .twoslash-popup-info-hover{background:var(--vocs-twoslash_popupBackground);border:1px solid var(--vocs-twoslash_borderColor);border-radius:4px;box-shadow:var(--vocs-twoslash_popupShadow);display:inline-block;max-width:500px;pointer-events:auto;position:fixed;opacity:1;transition:opacity .3s;white-space:pre-wrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:20}.twoslash .twoslash-popup-scroll-container{max-height:300px;padding:4px 0;overflow-y:auto;-ms-overflow-style:none;scrollbar-width:none}.twoslash-popup-arrow{position:absolute;top:-4px;left:1em;border-top:1px solid var(--vocs-twoslash_borderColor);border-right:1px solid var(--vocs-twoslash_borderColor);background:var(--vocs-twoslash_popupBackground);transform:rotate(-45deg);width:6px;height:6px;pointer-events:none}.twoslash .twoslash-popup-scroll-container::-webkit-scrollbar{display:none}.twoslash .twoslash-popup-jsdoc{border-top:1px solid var(--vocs-color_border2);color:var(--vocs-color_text);font-family:sans-serif;font-weight:500;margin-top:4px;padding:4px 10px 0}.twoslash-tag-line+.twoslash-tag-line{margin-top:-.2em}.twoslash-query-persisted .twoslash-popup-info{z-index:9;transform:translateY(1.5em)}.twoslash-hover:hover .twoslash-popup-info,.twoslash-query-persisted .twoslash-popup-info{opacity:1;pointer-events:auto}.twoslash-popup-info:hover,.twoslash-popup-info-hover:hover{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.twoslash-error-line{position:relative;background-color:var(--vocs-twoslash_errorBackground);border-left:2px solid var(--vocs-twoslash_errorColor);color:var(--vocs-twoslash_errorColor);margin:.2em 0}.twoslash-error{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%206%203'%20enable-background%3D'new%200%200%206%203'%20height%3D'3'%20width%3D'6'%3E%3Cg%20fill%3D'%23c94824'%3E%3Cpolygon%20points%3D'5.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0'%2F%3E%3Cpolygon%20points%3D'4%2C0%206%2C2%206%2C0.6%205.4%2C0'%2F%3E%3Cpolygon%20points%3D'0%2C2%201%2C3%202.4%2C3%200%2C0.6'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") repeat-x bottom left;padding-bottom:2px}.twoslash-completion-cursor{position:relative}.twoslash-completion-cursor .twoslash-completion-list{-webkit-user-select:none;-moz-user-select:none;user-select:none;position:absolute;top:0;left:0;transform:translateY(1.2em);margin:3px 0 0 -1px;z-index:8;box-shadow:var(--vocs-twoslash_popupShadow);background:var(--vocs-twoslash_popupBackground);border:1px solid var(--vocs-twoslash_borderColor)}.twoslash-completion-list{border-radius:4px;font-size:.8rem;padding:4px;display:flex;flex-direction:column;gap:4px;width:240px}.twoslash-completion-list:hover{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.twoslash-completion-list:before{content:" ";background-color:var(--vocs-twoslash_cursorColor);width:2px;position:absolute;top:-1.6em;height:1.4em;left:-1px}.twoslash-completion-list .twoslash-completion-list-item{overflow:hidden;display:flex;align-items:center;gap:.5em;line-height:1em}.twoslash-completion-list .twoslash-completion-list-item span.twoslash-completions-unmatched.twoslash-completions-unmatched.twoslash-completions-unmatched{color:var(--vocs-twoslash_unmatchedColor)!important}.twoslash-completion-list .deprecated{text-decoration:line-through;opacity:.5}.twoslash-completion-list .twoslash-completion-list-item span.twoslash-completions-matched.twoslash-completions-unmatched.twoslash-completions-unmatched{color:var(--vocs-twoslash_matchedColor)!important}.twoslash-tag-line{position:relative;background-color:var(--vocs-twoslash_tagBackground);border-left:2px solid var(--vocs-twoslash_tagColor);color:var(--vocs-twoslash_tagColor);margin:.2em 0;display:flex;align-items:center;gap:.3em}.twoslash-tag-line+.line[data-empty-line]+.twoslash-tag-line{margin-top:-1.95em}.twoslash-tag-line .twoslash-tag-icon{width:1.1em;color:inherit}.twoslash-tag-line.twoslash-tag-error-line{background-color:var(--vocs-twoslash_errorBackground);border-left:2px solid var(--vocs-twoslash_errorColor);color:var(--vocs-twoslash_errorColor)}.twoslash-tag-line.twoslash-tag-warn-line{background-color:var(--vocs-twoslash_tagWarnBackground);border-left:2px solid var(--vocs-twoslash_tagWarnColor);color:var(--vocs-twoslash_tagWarnColor)}.twoslash-tag-line.twoslash-tag-annotate-line{background-color:var(--vocs-twoslash_tagAnnotateBackground);border-left:2px solid var(--vocs-twoslash_tagAnnotateColor);color:var(--vocs-twoslash_tagAnnotateColor)}.twoslash-highlighted{border-radius:var(--vocs-borderRadius_2);background-color:var(--vocs-color_codeCharacterHighlightBackground)!important;box-shadow:0 0 0 4px var(--vocs-color_codeCharacterHighlightBackground)}@media (prefers-reduced-motion: reduce){.twoslash *{transition:none!important}}.vocs_ExternalLink:after{content:"";background-color:currentColor;color:var(--vocs_ExternalLink_arrowColor);display:inline-block;height:.5em;margin-left:.325em;margin-right:.25em;width:.5em;-webkit-mask:var(--vocs_ExternalLink_iconUrl) no-repeat center / contain;mask:var(--vocs_ExternalLink_iconUrl) no-repeat center / contain}.vocs_Link_accent_underlined{color:var(--vocs-color_link);font-weight:var(--vocs-fontWeight_medium);text-underline-offset:var(--vocs-space_2);text-decoration:underline;transition:color .1s}.vocs_Link_accent_underlined:hover{color:var(--vocs-color_linkHover)}.vocs_Link_styleless{--vocs_ExternalLink_arrowColor: var(--vocs-color_text3)}.vocs_NotFound{align-items:center;display:flex;flex-direction:column;max-width:400px;margin:0 auto;padding-top:var(--vocs-space_64)}.vocs_NotFound_divider{border-color:var(--vocs-color_border);width:50%}.vocs_H1{font-size:var(--vocs-fontSize_h1);letter-spacing:-.02em}.vocs_Heading{align-items:center;color:var(--vocs-color_heading);font-weight:var(--vocs-fontWeight_semibold);gap:.25em;line-height:var(--vocs-lineHeight_heading);position:relative}.vocs_Heading_slugTarget{position:absolute;top:0;visibility:hidden}@media screen and (width > 1080px){.vocs_Heading_slugTarget{top:calc(-1 * (var(--vocs-topNav_height)))}.vocs_Header .vocs_Heading_slugTarget,.vocs_Step_title .vocs_Heading_slugTarget,.vocs_Header+.vocs_Heading .vocs_Heading_slugTarget{top:calc(-1 * (var(--vocs-topNav_height) + var(--vocs-space_24)))}}@media screen and (width <= 1080px){.vocs_Heading_slugTarget{top:calc(-1 * var(--vocs-topNav_curtainHeight))}.vocs_Header .vocs_Heading_slugTarget,.vocs_Header+.vocs_Heading .vocs_Heading_slugTarget{top:calc(-1 * calc(var(--vocs-topNav_curtainHeight) + var(--vocs-space_24)))}}.vocs_Blockquote{border-left:2px solid var(--vocs-color_blockquoteBorder);padding-left:var(--vocs-space_16);margin-bottom:var(--vocs-space_16)}.vocs_H2+.vocs_List,.vocs_H3+.vocs_List,.vocs_H4+.vocs_List,.vocs_H5+.vocs_List,.vocs_H6+.vocs_List{margin-top:calc(var(--vocs-space_8) * -1)}.vocs_Paragraph+.vocs_List{margin-top:calc(-1 * var(--vocs-space_8))}.vocs_List_ordered{list-style:decimal;padding-left:var(--vocs-space_20);margin-bottom:var(--vocs-space_16)}.vocs_List_ordered .vocs_List_ordered{list-style:lower-alpha}.vocs_List_ordered .vocs_List_ordered .vocs_List_ordered{list-style:lower-roman}.vocs_List_unordered{list-style:disc;padding-left:var(--vocs-space_24);margin-bottom:var(--vocs-space_16)}.vocs_List_unordered .vocs_List_unordered{list-style:circle}.vocs_List_ordered .vocs_List_ordered,.vocs_List_unordered .vocs_List_unordered,.vocs_List_ordered .vocs_List_unordered,.vocs_List_unordered .vocs_List_ordered{margin-bottom:var(--vocs-space_0);padding-top:var(--vocs-space_8);padding-left:var(--vocs-space_16);padding-bottom:var(--vocs-space_0)}.vocs_List_unordered.contains-task-list{list-style:none;padding-left:var(--vocs-space_12)}.vocs_Paragraph{line-height:var(--vocs-lineHeight_paragraph)}.vocs_Blockquote>.vocs_Paragraph{color:var(--vocs-color_blockquoteText);margin-bottom:var(--vocs-space_8)}.vocs_H2+.vocs_Paragraph,.vocs_H3+.vocs_Paragraph,.vocs_H4+.vocs_Paragraph,.vocs_H5+.vocs_Paragraph,.vocs_H6+.vocs_Paragraph,.vocs_List+.vocs_Paragraph{margin-top:calc(var(--vocs-space_8) * -1)}.vocs_Paragraph+.vocs_Paragraph{margin-top:calc(-1 * var(--vocs-space_8))}:root:not(.dark) .vocs_utils_visibleDark{display:none}:root.dark .vocs_utils_visibleLight{display:none}.vocs_utils_visuallyHidden{clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.vocs_DesktopSearch_search{align-items:center;background-color:var(--vocs-color_backgroundDark);border:1px solid var(--vocs-color_backgroundDark);border-radius:var(--vocs-borderRadius_8);color:var(--vocs-color_text2);display:flex;font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);gap:var(--vocs-space_6);height:var(--vocs-space_40);max-width:15.5rem;padding-left:var(--vocs-space_12);padding-right:var(--vocs-space_12);position:relative;width:100%;transition:color .1s,border-color .1s}.vocs_DesktopSearch_search:hover{color:var(--vocs-color_text);border-color:var(--vocs-color_text3)}.vocs_DesktopSearch_searchCommand{align-items:center;border:1.5px solid var(--vocs-color_text3);border-radius:var(--vocs-borderRadius_4);color:var(--vocs-color_text3);display:flex;height:var(--vocs-space_12);justify-content:center;margin-left:auto;margin-top:var(--vocs-space_1);padding:var(--vocs-space_1);width:var(--vocs-space_12)}.vocs_Kbd{color:var(--vocs-color_text2);display:inline-block;border-radius:var(--vocs-borderRadius_3);font-size:var(--vocs-fontSize_11);font-family:var(--vocs-fontFamily_default);font-feature-settings:cv08;line-height:105%;min-width:20px;padding:var(--vocs-space_3);padding-left:var(--vocs-space_4);padding-right:var(--vocs-space_4);padding-top:var(--vocs-space_3);text-align:center;text-transform:capitalize;vertical-align:baseline;border:.5px solid var(--vocs-color_border);background-color:var(--vocs-color_background3);box-shadow:var(--vocs-color_shadow2) 0 2px 0 0}.vocs_KeyboardShortcut{align-items:center;display:inline-flex;gap:var(--vocs-space_6);font-size:var(--vocs-fontSize_12)}.vocs_KeyboardShortcut_kbdGroup{align-items:center;display:inline-flex;gap:var(--vocs-space_3)}@media screen and (width <= 720px){.vocs_KeyboardShortcut{display:none}}@keyframes vocs_SearchDialog_fadeIn{0%{opacity:0}to{opacity:1}}@keyframes vocs_SearchDialog_fadeAndSlideIn{0%{opacity:0;transform:translate(-50%,-5%) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}.vocs_SearchDialog{animation:vocs_SearchDialog_fadeAndSlideIn .1s ease-in-out;background:var(--vocs-color_background);border-radius:var(--vocs-borderRadius_6);display:flex;flex-direction:column;gap:var(--vocs-space_8);height:-moz-min-content;height:min-content;left:50%;margin:64px auto;max-height:min(100vh - 128px,900px);padding:var(--vocs-space_12);padding-bottom:var(--vocs-space_8);position:fixed;top:0;transform:translate(-50%);width:min(100vw - 60px,775px);z-index:var(--vocs-zIndex_backdrop)}.vocs_SearchDialog_overlay{animation:vocs_SearchDialog_fadeIn .1s ease-in-out;background:#0009;position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--vocs-zIndex_backdrop)}.vocs_SearchDialog_searchBox{align-items:center;border:1px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);display:flex;gap:var(--vocs-space_8);padding-left:var(--vocs-space_8);padding-right:var(--vocs-space_8);margin-bottom:var(--vocs-space_8);width:100%}.vocs_SearchDialog_searchBox:focus-within{border-color:var(--vocs-color_borderAccent)}.vocs_SearchDialog_searchInput{background:transparent;display:flex;font-size:var(--vocs-fontSize_16);height:var(--vocs-space_40);width:100%}.vocs_SearchDialog_searchInput:focus{outline:none}.vocs_SearchDialog_searchInput::-moz-placeholder{color:var(--vocs-color_text4)}.vocs_SearchDialog_searchInput::placeholder{color:var(--vocs-color_text4)}.vocs_SearchDialog_searchInputIcon{color:var(--vocs-color_text3)}.vocs_SearchDialog_searchInputIconMobile{display:none}.vocs_SearchDialog_results{display:flex;flex-direction:column;gap:var(--vocs-space_8);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;width:100%}.vocs_SearchDialog_result{border:1.5px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);width:100%}.vocs_SearchDialog_result:focus-within{border-color:var(--vocs-color_borderAccent)}.vocs_SearchDialog_result>a{display:flex;flex-direction:column;gap:var(--vocs-space_8);min-height:var(--vocs-space_36);outline:none;justify-content:center;padding:var(--vocs-space_12);width:100%}.vocs_SearchDialog_resultSelected{border-color:var(--vocs-color_borderAccent)}.vocs_SearchDialog_resultIcon{color:var(--vocs-color_textAccent);margin-right:1px;width:15px}.vocs_SearchDialog_titles{align-items:center;display:flex;flex-wrap:wrap;font-weight:var(--vocs-fontWeight_medium);gap:var(--vocs-space_4);line-height:22px}.vocs_SearchDialog_title{align-items:center;display:flex;gap:var(--vocs-space_4);white-space:nowrap}.vocs_SearchDialog_titleIcon{color:var(--vocs-color_text);display:inline-block;opacity:.5}.vocs_SearchDialog_resultSelected .vocs_SearchDialog_title,.vocs_SearchDialog_resultSelected .vocs_SearchDialog_titleIcon{color:var(--vocs-color_textAccent)}.vocs_SearchDialog_content{padding:0}.vocs_SearchDialog_excerpt{max-height:8.75rem;overflow:hidden;opacity:.5;position:relative}.vocs_SearchDialog_excerpt:before{content:"";position:absolute;top:-1px;left:0;width:100%;height:8px;background:linear-gradient(var(--vocs-color_background),transparent);z-index:1000}.vocs_SearchDialog_excerpt:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:12px;background:linear-gradient(transparent,var(--vocs-color_background));z-index:1000}.vocs_SearchDialog_title mark,.vocs_SearchDialog_excerpt mark{background-color:var(--vocs-color_searchHighlightBackground);color:var(--vocs-color_searchHighlightText);border-radius:var(--vocs-borderRadius_2);padding-bottom:0;padding-left:var(--vocs-space_2);padding-right:var(--vocs-space_2);padding-top:0}.vocs_SearchDialog_resultSelected .vocs_SearchDialog_excerpt{opacity:1}.vocs_SearchDialog_searchShortcuts{align-items:center;color:var(--vocs-color_text2);display:flex;gap:var(--vocs-space_20);font-size:var(--vocs-fontSize_14)}.vocs_SearchDialog_searchShortcutsGroup{align-items:center;display:inline-flex;gap:var(--vocs-space_3);margin-right:var(--vocs-space_6)}@media screen and (width <= 720px){.vocs_SearchDialog{border-radius:0;height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));margin:0;max-height:unset;width:100vw}.vocs_SearchDialog_searchInputIconDesktop{display:none}.vocs_SearchDialog_searchInputIconMobile{display:block}.vocs_SearchDialog_excerpt{opacity:1}.vocs_SearchDialog_searchShortcuts{display:none}}.vocs_DesktopTopNav{align-items:center;display:flex;justify-content:space-between;padding:0 var(--vocs-topNav_horizontalPadding);height:var(--vocs-topNav_height)}.vocs_DesktopTopNav_withLogo{padding-left:calc(((100% - var(--vocs-content_width)) / 2) + var(--vocs-topNav_horizontalPadding))}.vocs_DesktopTopNav_button{border-radius:var(--vocs-borderRadius_4);padding:var(--vocs-space_8)}.vocs_DesktopTopNav_content{right:calc(-1 * var(--vocs-space_24))}.vocs_DesktopTopNav_curtain{background:linear-gradient(var(--vocs-color_background),transparent 70%);height:30px;opacity:.98;width:100%}.vocs_DesktopTopNav_divider{background-color:var(--vocs-color_border);height:35%;width:1px}.vocs_DesktopTopNav_group{align-items:center;display:flex}.vocs_DesktopTopNav_icon{color:var(--vocs-color_text2);transition:color .1s}.vocs_DesktopTopNav_button:hover .vocs_DesktopTopNav_icon{color:var(--vocs-color_text)}.vocs_DesktopTopNav_item{align-items:center;display:flex;height:100%;position:relative}.vocs_DesktopTopNav_logo{padding-left:var(--vocs-sidebar_horizontalPadding);padding-right:var(--vocs-sidebar_horizontalPadding);width:var(--vocs-sidebar_width)}.vocs_DesktopTopNav_logoWrapper{display:flex;height:100%;justify-content:flex-end;left:0;position:absolute;width:var(--vocs_DocsLayout_leftGutterWidth)}.vocs_DesktopTopNav_section{align-items:center;display:flex;height:100%;gap:var(--vocs-space_24)}@media screen and (width <= 1080px){.vocs_DesktopTopNav,.vocs_DesktopTopNav_curtain{display:none}}@media screen and (width <= 1280px){.vocs_DesktopTopNav_hideCompact{display:none}}.vocs_Icon{align-items:center;display:flex;height:var(--vocs_Icon_size);width:var(--vocs_Icon_size)}:root:not(.dark) .vocs_Logo_logoDark{display:none}:root.dark .vocs_Logo_logoLight{display:none}.vocs_NavLogo_logoImage{height:50%;width:auto}.vocs_NavLogo_title{font-size:var(--vocs-fontSize_18);font-weight:var(--vocs-fontWeight_semibold);line-height:var(--vocs-lineHeight_heading)}@keyframes vocs_NavigationMenu_fadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.vocs_NavigationMenu_list{display:flex;gap:var(--vocs-space_20)}.vocs_NavigationMenu_link{align-items:center;display:flex;font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);height:100%}.vocs_NavigationMenu_link:hover,.vocs_NavigationMenu_link[data-active=true]{color:var(--vocs-color_textAccent)}.vocs_NavigationMenu_trigger:after{content:"";background-color:currentColor;color:var(--vocs-color_text3);display:inline-block;height:.625em;margin-left:.325em;width:.625em;-webkit-mask:var(--vocs_NavigationMenu_chevronDownIcon) no-repeat center / contain;mask:var(--vocs_NavigationMenu_chevronDownIcon) no-repeat center / contain}.vocs_NavigationMenu_content{background-color:var(--vocs-color_background2);border:1px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);box-shadow:0 3px 10px var(--vocs-color_shadow);display:flex;flex-direction:column;padding:var(--vocs-space_12) var(--vocs-space_16);position:absolute;top:calc(100% + var(--vocs-space_8));min-width:200px;z-index:var(--vocs-zIndex_popover);animation:vocs_NavigationMenu_fadeIn .5s cubic-bezier(.16,1,.3,1)}.vocs_Footer{--vocs_Footer_iconWidth: 24px;display:flex;flex-direction:column;gap:var(--vocs-space_32);max-width:var(--vocs-content_width);overflow-x:hidden;padding:var(--vocs-space_28) var(--vocs-content_horizontalPadding) var(--vocs-space_48)}.vocs_Footer_container{border-bottom:1px solid var(--vocs-color_border);display:flex;justify-content:space-between;padding-bottom:var(--vocs-space_16)}.vocs_Footer_editLink{align-items:center;display:flex;font-size:var(--vocs-fontSize_14);gap:var(--vocs-space_8);text-decoration:none}.vocs_Footer_lastUpdated{color:var(--vocs-color_text3);font-size:var(--vocs-fontSize_14)}.vocs_Footer_navigation{display:flex;justify-content:space-between}.vocs_Footer_navigationIcon{width:var(--vocs_Footer_iconWidth)}.vocs_Footer_navigationIcon_left{display:flex}.vocs_Footer_navigationIcon_right{display:flex;justify-content:flex-end}.vocs_Footer_navigationItem{display:flex;flex-direction:column;gap:var(--vocs-space_4)}.vocs_Footer_navigationItem_right{align-items:flex-end}.vocs_Footer_navigationText{align-items:center;display:flex;font-size:var(--vocs-fontSize_18);font-weight:var(--vocs-fontWeight_medium)}.vocs_Footer_navigationTextInner{overflow:hidden;text-overflow:ellipsis;width:26ch;white-space:pre}@media screen and (width <= 720px){.vocs_Footer_navigationIcon_left,.vocs_Footer_navigationIcon_right{justify-content:center}.vocs_Footer_navigationText{font-size:var(--vocs-fontSize_12)}}@media screen and (width <= 480px){.vocs_Footer_navigationTextInner{width:20ch}}.vocs_MobileSearch_searchButton{align-items:center;display:flex;color:var(--vocs-color_text);height:var(--vocs-space_28);justify-content:center;width:var(--vocs-space_28)}@keyframes vocs_MobileTopNav_fadeIn{0%{opacity:0}to{opacity:1}}.vocs_MobileTopNav{align-items:center;background-color:var(--vocs-color_backgroundDark);border-bottom:1px solid var(--vocs-color_border);display:none;height:100%;justify-content:space-between;padding:var(--vocs-space_0) var(--vocs-content_horizontalPadding);width:100%}.vocs_MobileTopNav_button{border-radius:var(--vocs-borderRadius_4);padding:var(--vocs-space_8)}.vocs_MobileTopNav_content{left:calc(-1 * var(--vocs-space_24))}.vocs_MobileTopNav_curtain{align-items:center;background-color:var(--vocs-color_backgroundDark);border-bottom:1px solid var(--vocs-color_border);display:none;justify-content:space-between;font-size:var(--vocs-fontSize_13);font-weight:var(--vocs-fontWeight_medium);height:100%;padding:var(--vocs-space_0) var(--vocs-content_horizontalPadding);width:100%}.vocs_MobileTopNav_curtainGroup{align-items:center;display:flex;gap:var(--vocs-space_12)}.vocs_MobileTopNav_divider{background-color:var(--vocs-color_border);height:35%;width:1px}.vocs_MobileTopNav_group{align-items:center;display:flex;height:100%}.vocs_MobileTopNav_icon{color:var(--vocs-color_text2);transition:color .1s}.vocs_MobileTopNav_button:hover .vocs_MobileTopNav_icon{color:var(--vocs-color_text)}.vocs_MobileTopNav_item{position:relative}.vocs_MobileTopNav_logo{align-items:center;display:flex;height:var(--vocs-topNav_height)}.vocs_MobileTopNav_logoImage{height:30%}.vocs_MobileTopNav_menuTrigger{align-items:center;display:flex;gap:var(--vocs-space_8)}.vocs_MobileTopNav_menuTitle{max-width:22ch;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:pre}.vocs_MobileTopNav_navigation{margin-left:var(--vocs-space_8)}.vocs_MobileTopNav_navigationContent{display:flex;flex-direction:column;margin-left:var(--vocs-space_8)}.vocs_MobileTopNav_navigationItem{align-items:center;display:flex;justify-content:flex-start;font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);width:100%}.vocs_MobileTopNav_navigationItem:hover,.vocs_MobileTopNav_navigationItem[data-active=true],.vocs_MobileTopNav_navigationItem[data-state=open]{color:var(--vocs-color_textAccent)}.vocs_MobileTopNav_trigger:after{content:"";background-color:currentColor;display:inline-block;height:.625em;margin-left:.325em;width:.625em;-webkit-mask:var(--vocs_MobileTopNav_chevronDownIcon) no-repeat center / contain;mask:var(--vocs_MobileTopNav_chevronDownIcon) no-repeat center / contain}.vocs_MobileTopNav_trigger[data-state=open]:after{-webkit-mask:var(--vocs_MobileTopNav_chevronUpIcon) no-repeat center / contain;mask:var(--vocs_MobileTopNav_chevronUpIcon) no-repeat center / contain}.vocs_MobileTopNav_outlineTrigger{animation:vocs_MobileTopNav_fadeIn .5s cubic-bezier(.16,1,.3,1);align-items:center;color:var(--vocs-color_text2);display:flex;gap:var(--vocs-space_6)}.vocs_MobileTopNav_outlineTrigger[data-state=open]{color:var(--vocs-color_textAccent)}.vocs_MobileTopNav_outlinePopover{display:none;overflow-y:scroll;padding:var(--vocs-space_16);max-height:80vh}.vocs_MobileTopNav_section{align-items:center;display:flex;height:100%;gap:var(--vocs-space_16)}.vocs_MobileTopNav_separator{background-color:var(--vocs-color_border);height:1.75em;width:1px}.vocs_MobileTopNav_sidebarPopover{display:none;overflow-y:scroll;padding:0 var(--vocs-sidebar_horizontalPadding);max-height:80vh;width:var(--vocs-sidebar_width)}.vocs_MobileTopNav_title{font-size:var(--vocs-fontSize_18);font-weight:var(--vocs-fontWeight_semibold);line-height:var(--vocs-lineHeight_heading)}.vocs_MobileTopNav_topNavPopover{display:none;overflow-y:scroll;padding:var(--vocs-sidebar_verticalPadding) var(--vocs-sidebar_horizontalPadding);max-height:80vh;width:var(--vocs-sidebar_width)}@media screen and (width <= 1080px){.vocs_MobileTopNav,.vocs_MobileTopNav_curtain{display:flex}.vocs_MobileTopNav_outlinePopover{display:block;max-width:300px}.vocs_MobileTopNav_sidebarPopover{display:block}.vocs_MobileTopNav_topNavPopover{display:flex;flex-direction:column}}@media screen and (width <= 720px){.vocs_MobileTopNav_navigation:not(.vocs_MobileTopNav_navigation_compact){display:none}}@media screen and (width > 720px){.vocs_MobileTopNav_navigation.vocs_MobileTopNav_navigation_compact{display:none}}.vocs_Outline{width:100%}.vocs_Outline_nav{display:flex;flex-direction:column;gap:var(--vocs-space_8)}.vocs_DocsLayout_gutterRight .vocs_Outline_nav{border-left:1px solid var(--vocs-color_border);padding-left:var(--vocs-space_16)}.vocs_Outline_heading{color:var(--vocs-color_title);font-size:var(--vocs-fontSize_13);font-weight:var(--vocs-fontWeight_semibold);line-height:var(--vocs-lineHeight_heading);letter-spacing:.025em}.vocs_Outline_items .vocs_Outline_items{padding-left:var(--vocs-space_12)}.vocs_Outline_item{line-height:var(--vocs-lineHeight_outlineItem);margin-bottom:var(--vocs-space_8);overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.vocs_Outline_link{color:var(--vocs-color_text2);font-weight:var(--vocs-fontWeight_medium);font-size:var(--vocs-fontSize_13);transition:color .1s}.vocs_Outline_link[data-active=true]{color:var(--vocs-color_textAccent)}.vocs_Outline_link[data-active=true]:hover{color:var(--vocs-color_textAccentHover)}.vocs_Outline_link:hover{color:var(--vocs-color_text)}.vocs_Popover{background-color:var(--vocs-color_background2);border:1px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);margin:0 var(--vocs-space_6);z-index:var(--vocs-zIndex_popover)}.vocs_Sidebar{display:flex;flex-direction:column;font-size:var(--vocs-fontSize_14);overflow-y:auto;width:var(--vocs-sidebar_width)}.vocs_Sidebar_backLink{text-align:left}.vocs_Sidebar_divider{background-color:var(--vocs-color_border);width:100%;height:1px}.vocs_Sidebar_navigation{outline:0}.vocs_Sidebar_navigation:first-child{padding-top:var(--vocs-space_16)}.vocs_Sidebar_group{display:flex;flex-direction:column}.vocs_Sidebar_logo{align-items:center;display:flex;height:var(--vocs-topNav_height);padding-top:var(--vocs-space_4)}.vocs_Sidebar_logoWrapper{background-color:var(--vocs-color_backgroundDark);position:sticky;top:0;z-index:var(--vocs-zIndex_gutterTopCurtain)}.vocs_Sidebar_section{display:flex;flex-direction:column;font-size:1em}.vocs_Sidebar_navigation>.vocs_Sidebar_group>.vocs_Sidebar_section+.vocs_Sidebar_section{border-top:1px solid var(--vocs-color_border)}.vocs_Sidebar_levelCollapsed{gap:var(--vocs-space_4);padding-bottom:var(--vocs-space_12)}.vocs_Sidebar_levelInset{border-left:1px solid var(--vocs-color_border);font-size:var(--vocs-fontSize_13);margin-top:var(--vocs-space_8);padding-left:var(--vocs-space_12)}.vocs_Sidebar_levelInset.vocs_Sidebar_levelInset.vocs_Sidebar_levelInset{font-weight:var(--vocs-fontWeight_regular);padding-top:0;padding-bottom:0}.vocs_Sidebar_items{display:flex;flex-direction:column;gap:.625em;padding-top:var(--vocs-space_16);padding-bottom:var(--vocs-space_16);font-weight:var(--vocs-fontWeight_medium)}.vocs_Sidebar_level .vocs_Sidebar_items{padding-top:var(--vocs-space_6)}.vocs_Sidebar_item{color:var(--vocs-color_text3);letter-spacing:.25px;line-height:var(--vocs-lineHeight_sidebarItem);width:100%;transition:color .1s}.vocs_Sidebar_item:hover{color:var(--vocs-color_text)}.vocs_Sidebar_item[data-active=true]{color:var(--vocs-color_textAccent)}.vocs_Sidebar_sectionHeader{align-items:center;display:flex;justify-content:space-between}.vocs_Sidebar_level>.vocs_Sidebar_sectionHeader{padding-top:var(--vocs-space_12)}.vocs_Sidebar_sectionHeaderActive{color:var(--vocs-color_text)}.vocs_Sidebar_sectionTitle{color:var(--vocs-color_title);font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_semibold);letter-spacing:.25px;width:100%}.vocs_Sidebar_sectionCollapse{color:var(--vocs-color_text3);transform:rotate(90deg);transition:transform .25s}.vocs_Sidebar_sectionCollapseActive{transform:rotate(0)}@media screen and (max-width: 1080px){.vocs_Sidebar{width:100%}.vocs_Sidebar_logoWrapper{display:none}}.vocs_SkipLink{background:var(--vocs-color_background);border-radius:var(--vocs-borderRadius_4);color:var(--vocs-color_link);font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_semibold);left:var(--vocs-space_8);padding:var(--vocs-space_8) var(--vocs-space_16);position:fixed;text-decoration:none;top:var(--vocs-space_8);z-index:999}.vocs_SkipLink:focus{clip:auto;-webkit-clip-path:none;clip-path:none;height:auto;width:auto}:root{--vocs-color_white: rgba(255 255 255 / 100%)}:root.dark{--vocs-color_white: rgba(255 255 255 / 100%)}:root{--vocs-color_black: rgba(0 0 0 / 100%)}:root.dark{--vocs-color_black: rgba(0 0 0 / 100%)}:root{--vocs-color_background: #232225}:root.dark{--vocs-color_background: #232225}:root{--vocs-color_background2: #2b292d}:root.dark{--vocs-color_background2: #2b292d}:root{--vocs-color_background3: #2e2c31}:root.dark{--vocs-color_background3: #2e2c31}:root{--vocs-color_background4: #323035}:root.dark{--vocs-color_background4: #323035}:root{--vocs-color_background5: #3c393f}:root.dark{--vocs-color_background5: #3c393f}:root{--vocs-color_backgroundAccent: #5b5bd6}:root.dark{--vocs-color_backgroundAccent: #5b5bd6}:root{--vocs-color_backgroundAccentHover: #5b5bd6}:root.dark{--vocs-color_backgroundAccentHover: #5b5bd6}:root{--vocs-color_backgroundAccentText: rgba(255 255 255 / 100%)}:root.dark{--vocs-color_backgroundAccentText: rgba(255 255 255 / 100%)}:root{--vocs-color_backgroundBlueTint: #008ff519}:root.dark{--vocs-color_backgroundBlueTint: #008ff519}:root{--vocs-color_backgroundDark: #1e1d1f}:root.dark{--vocs-color_backgroundDark: #1e1d1f}:root{--vocs-color_backgroundGreenTint: #00a43319}:root.dark{--vocs-color_backgroundGreenTint: #00a43319}:root{--vocs-color_backgroundGreenTint2: #00a83829}:root.dark{--vocs-color_backgroundGreenTint2: #00a83829}:root{--vocs-color_backgroundIrisTint: #000bff19}:root.dark{--vocs-color_backgroundIrisTint: #000bff19}:root{--vocs-color_backgroundRedTint: #f3000d14}:root.dark{--vocs-color_backgroundRedTint: #f3000d14}:root{--vocs-color_backgroundRedTint2: #ff000824}:root.dark{--vocs-color_backgroundRedTint2: #ff000824}:root{--vocs-color_backgroundYellowTint: #f4dd0016}:root.dark{--vocs-color_backgroundYellowTint: #f4dd0016}:root{--vocs-color_border: #3c393f}:root.dark{--vocs-color_border: #3c393f}:root{--vocs-color_border2: #6f6d78}:root.dark{--vocs-color_border2: #6f6d78}:root{--vocs-color_borderAccent: #6e6ade}:root.dark{--vocs-color_borderAccent: #6e6ade}:root{--vocs-color_borderBlue: #009eff2a}:root.dark{--vocs-color_borderBlue: #009eff2a}:root{--vocs-color_borderGreen: #019c393b}:root.dark{--vocs-color_borderGreen: #019c393b}:root{--vocs-color_borderIris: #303374}:root.dark{--vocs-color_borderIris: #303374}:root{--vocs-color_borderRed: #ff000824}:root.dark{--vocs-color_borderRed: #ff000824}:root{--vocs-color_borderYellow: #f4dd0016}:root.dark{--vocs-color_borderYellow: #f4dd0016}:root{--vocs-color_heading: #e9e9ea}:root.dark{--vocs-color_heading: #e9e9ea}:root{--vocs-color_inverted: rgba(255 255 255 / 100%)}:root.dark{--vocs-color_inverted: rgba(255 255 255 / 100%)}:root{--vocs-color_shadow: #00000000}:root.dark{--vocs-color_shadow: #00000000}:root{--vocs-color_shadow2: rgba(0, 0, 0, .05)}:root.dark{--vocs-color_shadow2: rgba(0, 0, 0, .05)}:root{--vocs-color_text: #cfcfcf}:root.dark{--vocs-color_text: #cfcfcf}:root{--vocs-color_text2: #bdbdbe}:root.dark{--vocs-color_text2: #bdbdbe}:root{--vocs-color_text3: #a7a7a8}:root.dark{--vocs-color_text3: #a7a7a8}:root{--vocs-color_text4: #656567}:root.dark{--vocs-color_text4: #656567}:root{--vocs-color_textAccent: #b1a9ff}:root.dark{--vocs-color_textAccent: #b1a9ff}:root{--vocs-color_textAccentHover: #6e6ade}:root.dark{--vocs-color_textAccentHover: #6e6ade}:root{--vocs-color_textBlue: #70b8ff}:root.dark{--vocs-color_textBlue: #70b8ff}:root{--vocs-color_textBlueHover: #3b9eff}:root.dark{--vocs-color_textBlueHover: #3b9eff}:root{--vocs-color_textGreen: #3dd68c}:root.dark{--vocs-color_textGreen: #3dd68c}:root{--vocs-color_textGreenHover: #33b074}:root.dark{--vocs-color_textGreenHover: #33b074}:root{--vocs-color_textIris: #b1a9ff}:root.dark{--vocs-color_textIris: #b1a9ff}:root{--vocs-color_textIrisHover: #6e6ade}:root.dark{--vocs-color_textIrisHover: #6e6ade}:root{--vocs-color_textRed: #ff9592}:root.dark{--vocs-color_textRed: #ff9592}:root{--vocs-color_textRedHover: #ec5d5e}:root.dark{--vocs-color_textRedHover: #ec5d5e}:root{--vocs-color_textYellow: #f5e147}:root.dark{--vocs-color_textYellow: #f5e147}:root{--vocs-color_textYellowHover: #e2a336}:root.dark{--vocs-color_textYellowHover: #e2a336}:root{--vocs-color_title: rgba(255 255 255 / 100%)}:root.dark{--vocs-color_title: rgba(255 255 255 / 100%)}:root{--vocs-content_horizontalPadding: 40px}:root.dark{--vocs-content_horizontalPadding: 40px}:root{--vocs-content_verticalPadding: 80px}:root.dark{--vocs-content_verticalPadding: 80px}.flag-sizeL{padding:0;display:flex;justify-content:center;align-items:center}.flag-sizeM{padding:.2em;display:flex;justify-content:center;align-items:center}.flag-sizeS{padding:.3em;display:flex;justify-content:center;align-items:center}.vertical-timeline-element{width:100%}.vertical-timeline-element-title{font-size:18px}.vertical-timeline-element-subtitle{font-size:16px}.vertical-timeline-element-content{font-size:15px}.hrefverticalelement{color:#fff}.hrefverticalelement:after{content:"↗";position:relative;top:-5px;right:0;font-size:16px}.popacity{background:#33475b;padding:10px}.popacitydanger{background:#b81d1d;padding:10px}.two-column-layout{display:flex;justify-content:space-between;flex-wrap:wrap}.main-content{flex:1;margin-right:50px;min-width:350px}@media only screen and (max-width: 600px){.main-content{flex:1;margin-right:0}}.sidebarcv{margin-right:0;width:"100%";flex-basis:300px}.category-box{width:100%;color:#fff;background:#2c3e50;padding:10px;margin:5px 5px 25px;cursor:pointer;display:inline-block;borderRadius:5px;box-sizing:border-box}.vocs_Section{border-top:1px solid var(--vocs-color_border);margin-top:var(--vocs-space_56);padding-top:var(--vocs-space_24)}.vocs_Anchor{color:var(--vocs-color_link);font-weight:var(--vocs-fontWeight_medium);text-underline-offset:var(--vocs-space_2);text-decoration:underline;transition:color .1s}.vocs_Callout_danger .vocs_Anchor{color:var(--vocs-color_dangerText)}.vocs_Callout_danger .vocs_Anchor:hover{color:var(--vocs-color_dangerTextHover)}.vocs_Callout_info .vocs_Anchor{color:var(--vocs-color_infoText)}.vocs_Callout_info .vocs_Anchor:hover{color:var(--vocs-color_infoTextHover)}.vocs_Callout_success .vocs_Anchor{color:var(--vocs-color_successText)}.vocs_Callout_success .vocs_Anchor:hover{color:var(--vocs-color_successTextHover)}.vocs_Callout_tip .vocs_Anchor{color:var(--vocs-color_tipText)}.vocs_Callout_tip .vocs_Anchor:hover{color:var(--vocs-color_tipTextHover)}.vocs_Callout_warning .vocs_Anchor{color:var(--vocs-color_warningText)}.vocs_Callout_warning .vocs_Anchor:hover{color:var(--vocs-color_warningTextHover)}.vocs_Anchor:hover{color:var(--vocs-color_linkHover)}.vocs_Section a.data-footnote-backref{color:var(--vocs-color_link);font-weight:var(--vocs-fontWeight_medium);text-underline-offset:var(--vocs-space_2);text-decoration:underline}.vocs_Section a.data-footnote-backref:hover{color:var(--vocs-color_linkHover)}.vocs_Autolink{opacity:0;margin-top:.1em;position:absolute;transition:opacity .1s,transform .1s;transform:translate(-2px) scale(.98)}.vocs_Heading:hover .vocs_Autolink{opacity:1;transform:translate(0) scale(1)}.vocs_Pre_wrapper{position:relative}.vocs_Code{transition:color .1s}:not(.vocs_Pre)>.vocs_Code{background-color:var(--vocs-color_codeInlineBackground);border:1px solid var(--vocs-color_codeInlineBorder);border-radius:var(--vocs-borderRadius_4);color:var(--vocs-color_codeInlineText);font-size:var(--vocs-fontSize_code);padding:var(--vocs-space_3) var(--vocs-space_6)}.vocs_Anchor>.vocs_Code{color:var(--vocs-color_link);text-decoration:underline;text-underline-offset:var(--vocs-space_2)}.vocs_Anchor:hover>.vocs_Code{color:var(--vocs-color_linkHover)}.vocs_Callout_danger .vocs_Code{color:var(--vocs-color_dangerText)}.vocs_Callout_info .vocs_Code{color:var(--vocs-color_infoText)}.vocs_Callout_success .vocs_Code{color:var(--vocs-color_successText)}.vocs_Callout_tip .vocs_Code{color:var(--vocs-color_tipText)}.vocs_Callout_warning .vocs_Code{color:var(--vocs-color_warningText)}.vocs_Heading .vocs_Code{color:inherit}.twoslash-popup-info-hover>.vocs_Code{background-color:inherit;padding:0;text-wrap:wrap}.twoslash-popup-jsdoc .vocs_Code{display:inline}.vocs_Authors{color:var(--vocs-color_text3);font-size:var(--vocs-fontSize_14)}.vocs_Authors_authors{color:var(--vocs-color_text)}.vocs_Authors_link{text-decoration:underline;text-underline-offset:2px}.vocs_Authors_link:hover{color:var(--vocs-color_text2)}.vocs_Authors_separator{color:var(--vocs-color_text3)}.vocs_BlogPosts{display:flex;flex-direction:column;gap:var(--vocs-space_32)}.vocs_BlogPosts_description{margin-top:var(--vocs-space_16)}.vocs_BlogPosts_divider{border-color:var(--vocs-color_background4)}.vocs_BlogPosts_post:hover .vocs_BlogPosts_readMore{color:var(--vocs-color_textAccent)}.vocs_BlogPosts_title{font-size:var(--vocs-fontSize_h2);font-weight:var(--vocs-fontWeight_semibold)}.vocs_Sponsors{border-radius:var(--vocs-borderRadius_8);display:flex;flex-direction:column;gap:var(--vocs-space_4);overflow:hidden}.vocs_Sponsors_title{background-color:var(--vocs-color_background3);color:var(--vocs-color_text3);font-size:var(--vocs-fontSize_13);font-weight:var(--vocs-fontWeight_medium);padding:var(--vocs-space_4) 0;text-align:center}.vocs_Sponsors_row{display:flex;flex-direction:row;gap:var(--vocs-space_4)}.vocs_Sponsors_column{align-items:center;background-color:var(--vocs-color_background3);display:flex;justify-content:center;padding:var(--vocs-space_32);width:calc(var(--vocs_Sponsors_columns) * 100%)}.vocs_Sponsors_sponsor{transition:background-color .1s}.vocs_Sponsors_sponsor:hover{background-color:var(--vocs-color_background5)}.dark .vocs_Sponsors_sponsor:hover{background-color:var(--vocs-color_white)}.vocs_Sponsors_image{filter:grayscale(1);height:var(--vocs_Sponsors_height);transition:filter .1s}.dark .vocs_Sponsors_image{filter:grayscale(1) invert(1)}.vocs_Sponsors_column:hover .vocs_Sponsors_image{filter:none}.vocs_AutolinkIcon{background-color:var(--vocs-color_textAccent);display:inline-block;margin-left:.25em;height:.8em;width:.8em;-webkit-mask:var(--vocs_AutolinkIcon_iconUrl) no-repeat center / contain;mask:var(--vocs_AutolinkIcon_iconUrl) no-repeat center / contain;transition:background-color .1s}.vocs_Autolink:hover .vocs_AutolinkIcon{background-color:var(--vocs-color_textAccentHover)}@media screen and (width <= 720px){.vocs_CodeGroup{border-radius:0;border-right:none;border-left:none;margin-left:calc(-1 * var(--vocs-space_16));margin-right:calc(-1 * var(--vocs-space_16))}}.vocs_Steps{border-left:1.5px solid var(--vocs-color_border);counter-reset:step;padding-left:var(--vocs-space_24);margin-left:var(--vocs-space_12);margin-top:var(--vocs-space_24)}@media screen and (width <= 720px){.vocs_Steps{margin-left:var(--vocs-space_4)}}.vocs_Subtitle{color:var(--vocs-color_text2);font-size:var(--vocs-fontSize_subtitle);font-weight:var(--vocs-fontWeight_regular);letter-spacing:-.02em;line-height:var(--vocs-lineHeight_heading);margin-top:var(--vocs-space_4);text-wrap:balance}.vocs_HorizontalRule{border-top:1px solid var(--vocs-color_hr);margin-bottom:var(--vocs-space_16)}.vocs_ListItem{line-height:var(--vocs-lineHeight_listItem)}.vocs_ListItem:not(:last-child){margin-bottom:.5em}.vocs_CopyButton{align-items:center;background-color:color-mix(in srgb,var(--vocs-color_background2) 75%,transparent);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border:1px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);color:var(--vocs-color_text3);display:flex;justify-content:center;position:absolute;right:var(--vocs-space_18);top:var(--vocs-space_18);opacity:0;height:32px;width:32px;transition:background-color .15s,opacity .15s;z-index:var(--vocs-zIndex_surface)}.vocs_CopyButton:hover{background-color:var(--vocs-color_background4);transition:background-color .05s}.vocs_CopyButton:focus-visible{background-color:var(--vocs-color_background4);opacity:1;transition:background-color .05s}.vocs_CopyButton:hover:active{background-color:var(--vocs-color_background2)}.vocs_Pre:hover .vocs_CopyButton{opacity:1}.vocs_CodeTitle{align-items:center;background-color:var(--vocs-color_codeTitleBackground);border-bottom:1px solid var(--vocs-color_border);color:var(--vocs-color_text3);display:flex;font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);gap:var(--vocs-space_6);padding:var(--vocs-space_8) var(--vocs-space_24)}.vocs_CodeGroup .vocs_CodeTitle{display:none}@media screen and (width <= 720px){.vocs_CodeTitle{border-radius:0;padding-left:var(--vocs-space_16);padding-right:var(--vocs-space_16)}}.vocs_CalloutTitle{font-size:var(--vocs-fontSize_12);letter-spacing:.02em;text-transform:uppercase}.vocs_Strong{font-weight:var(--vocs-fontWeight_semibold)}.vocs_Content>.vocs_Strong{display:block}.vocs_Callout>.vocs_Strong{display:block;margin-bottom:var(--vocs-space_4)}.vocs_Summary{cursor:pointer}.vocs_Summary.vocs_Summary:hover{text-decoration:underline}.vocs_Details[open] .vocs_Summary{margin-bottom:var(--vocs-space_4)}.vocs_Callout .vocs_Summary{font-weight:var(--vocs-fontWeight_medium)}.vocs_Details .vocs_Summary.vocs_Summary{margin-bottom:0}.vocs_Table{display:block;border-collapse:collapse;overflow-x:auto;margin-bottom:var(--vocs-space_24)}.vocs_TableCell{border:1px solid var(--vocs-color_tableBorder);font-size:var(--vocs-fontSize_td);padding:var(--vocs-space_8) var(--vocs-space_12)}.vocs_TableHeader{border:1px solid var(--vocs-color_tableBorder);background-color:var(--vocs-color_tableHeaderBackground);color:var(--vocs-color_tableHeaderText);font-size:var(--vocs-fontSize_th);font-weight:var(--vocs-fontWeight_medium);padding:var(--vocs-space_8) var(--vocs-space_12);text-align:left}.vocs_TableHeader[align=center]{text-align:center}.vocs_TableHeader[align=right]{text-align:right}.vocs_TableRow{border-top:1px solid var(--vocs-color_tableBorder)}.vocs_TableRow:nth-child(2n){background-color:var(--vocs-color_background2)}.vocs_Button_button{align-items:center;background:var(--vocs-color_background4);border:1px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);color:var(--vocs-color_text);display:flex;font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);height:36px;padding:0 var(--vocs-space_16);transition:background .1s;white-space:pre;width:-moz-fit-content;width:fit-content}.vocs_Button_button:hover{background:var(--vocs-color_background3)}.vocs_Button_button_accent{background:var(--vocs-color_backgroundAccent);color:var(--vocs-color_backgroundAccentText);border:1px solid var(--vocs-color_borderAccent)}.vocs_Button_button_accent:hover{background:var(--vocs-color_backgroundAccentHover)}.vocs_HomePage{align-items:center;display:flex;flex-direction:column;padding-top:var(--vocs-space_64);text-align:center;gap:var(--vocs-space_32)}.vocs_HomePage_logo{display:flex;justify-content:center;height:48px}.vocs_HomePage_title{font-size:var(--vocs-fontSize_64);font-weight:var(--vocs-fontWeight_semibold);line-height:1em}.vocs_HomePage_tagline{color:var(--vocs-color_text2);font-size:var(--vocs-fontSize_20);font-weight:var(--vocs-fontWeight_medium);line-height:1.5em}.vocs_HomePage_title+.vocs_HomePage_tagline{margin-top:calc(-1 * var(--vocs-space_8))}.vocs_HomePage_description{color:var(--vocs-color_text);font-size:var(--vocs-fontSize_16);font-weight:var(--vocs-fontWeight_regular);line-height:var(--vocs-lineHeight_paragraph)}.vocs_HomePage_tagline+.vocs_HomePage_description{margin-top:calc(-1 * var(--vocs-space_8))}.vocs_HomePage_buttons{display:flex;gap:var(--vocs-space_16)}.vocs_HomePage_tabs{min-width:300px}.vocs_HomePage_tabsList{display:flex;justify-content:center}.vocs_HomePage_tabsContent{color:var(--vocs-color_text2);font-family:var(--vocs-fontFamily_mono)}.vocs_HomePage_packageManager{color:var(--vocs-color_textAccent)}@media screen and (width <= 720px){.vocs_HomePage{padding-top:var(--vocs-space_32)}.vocs_HomePage_logo{height:36px}}.vertical-timeline *{-webkit-box-sizing:border-box;box-sizing:border-box}.vertical-timeline{width:95%;max-width:1170px;margin:0 auto;position:relative;padding:2em 0}.vertical-timeline:after{content:"";display:table;clear:both}.vertical-timeline:before{content:"";position:absolute;top:0;left:18px;height:100%;width:4px;background:var(--line-color)}.vertical-timeline.vertical-timeline--one-column-right:before{right:18px;left:unset}@media only screen and (min-width:1170px){.vertical-timeline.vertical-timeline--two-columns{width:90%}.vertical-timeline.vertical-timeline--two-columns:before{left:50%;margin-left:-2px}}.vertical-timeline-element{position:relative;margin:2em 0}.vertical-timeline-element>div{min-height:1px}.vertical-timeline-element:after{content:"";display:table;clear:both}.vertical-timeline-element:first-child{margin-top:0}.vertical-timeline-element:last-child{margin-bottom:0}@media only screen and (min-width:1170px){.vertical-timeline-element{margin:4em 0}.vertical-timeline-element:first-child{margin-top:0}.vertical-timeline-element:last-child{margin-bottom:0}}.vertical-timeline-element-icon{position:absolute;top:0;left:0;width:40px;height:40px;border-radius:50%;-webkit-box-shadow:0 0 0 4px #fff,inset 0 2px 0 rgba(0,0,0,.08),0 3px 0 4px rgba(0,0,0,.05);box-shadow:0 0 0 4px #fff,inset 0 2px #00000014,0 3px 0 4px #0000000d}.vertical-timeline--one-column-right .vertical-timeline-element-icon{right:0;left:unset}.vertical-timeline-element-icon svg{display:block;width:24px;height:24px;position:relative;left:50%;top:50%;margin-left:-12px;margin-top:-12px}@media only screen and (min-width:1170px){.vertical-timeline--two-columns .vertical-timeline-element-icon{width:60px;height:60px;left:50%;margin-left:-30px}}.vertical-timeline-element-icon{-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden}.vertical-timeline--animate .vertical-timeline-element-icon.is-hidden{visibility:hidden}.vertical-timeline--animate .vertical-timeline-element-icon.bounce-in{visibility:visible;-webkit-animation:cd-bounce-1 .6s;animation:cd-bounce-1 .6s}@-webkit-keyframes cd-bounce-1{0%{opacity:0;-webkit-transform:scale(.5)}60%{opacity:1;-webkit-transform:scale(1.2)}to{-webkit-transform:scale(1)}}@keyframes cd-bounce-1{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}60%{opacity:1;-webkit-transform:scale(1.2);transform:scale(1.2)}to{-webkit-transform:scale(1);transform:scale(1)}}.vertical-timeline-element-content{position:relative;margin-left:60px;background:#fff;border-radius:.25em;padding:1em;-webkit-box-shadow:0 3px 0 #ddd;box-shadow:0 3px #ddd}.vertical-timeline--one-column-right .vertical-timeline-element-content{margin-right:60px;margin-left:unset}.vertical-timeline-element--no-children .vertical-timeline-element-content{background:0 0;-webkit-box-shadow:none;box-shadow:none}.vertical-timeline-element-content:after{content:"";display:table;clear:both}.vertical-timeline-element-content h2{color:#303e49}.vertical-timeline-element-content .vertical-timeline-element-date,.vertical-timeline-element-content p{font-size:13px;font-size:.8125rem;font-weight:500}.vertical-timeline-element-content .vertical-timeline-element-date{display:inline-block}.vertical-timeline-element-content p{margin:1em 0 0;line-height:1.6}.vertical-timeline-element-title,.vertical-timeline-element-subtitle{margin:0}.vertical-timeline-element-content .vertical-timeline-element-date{float:left;padding:.8em 0;opacity:.7}.vertical-timeline-element-content-arrow{content:"";position:absolute;top:16px;right:100%;height:0;width:0;border:7px solid transparent;border-right:7px solid #fff}.vertical-timeline--one-column-right .vertical-timeline-element-content-arrow{content:"";position:absolute;top:16px;right:unset;left:100%;height:0;width:0;border:7px solid transparent;border-left:7px solid #fff}.vertical-timeline--one-column-right .vertical-timeline-element-content:before{left:100%;border-left:7px solid #fff;border-right:unset}.vertical-timeline-element--no-children .vertical-timeline-element-content:before{display:none}.vertical-timeline-element--no-children .vertical-timeline-element-content-arrow{display:none}@media only screen and (min-width:768px){.vertical-timeline-element-content h2{font-size:20px;font-size:1.25rem}.vertical-timeline-element-content p{font-size:16px;font-size:1rem}.vertical-timeline-element-content .vertical-timeline-element-date{font-size:14px;font-size:.875rem}}@media only screen and (min-width:1170px){.vertical-timeline--two-columns .vertical-timeline-element-content{margin-left:0;padding:1.5em;width:44%}.vertical-timeline--two-columns .vertical-timeline-element-content-arrow{top:24px;left:100%;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.vertical-timeline--two-columns .vertical-timeline-element-content .vertical-timeline-element-date{position:absolute;width:100%;left:124%;top:6px;font-size:16px;font-size:1rem}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content{float:right}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content-arrow,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content-arrow{top:24px;left:auto;right:100%;-webkit-transform:rotate(0);transform:rotate(0)}.vertical-timeline--one-column-right .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content-arrow,.vertical-timeline--one-column-right .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content-arrow{top:24px;left:100%;right:auto;-webkit-transform:rotate(0);transform:rotate(0)}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content .vertical-timeline-element-date,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content .vertical-timeline-element-date{left:auto;right:124%;text-align:right}}.vertical-timeline--animate .vertical-timeline-element-content.is-hidden{visibility:hidden}.vertical-timeline--animate .vertical-timeline-element-content.bounce-in{visibility:visible;-webkit-animation:cd-bounce-2 .6s;animation:cd-bounce-2 .6s}@media only screen and (min-width:1170px){.vertical-timeline--two-columns.vertical-timeline--animate .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content.bounce-in,.vertical-timeline--two-columns.vertical-timeline--animate .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content.bounce-in{-webkit-animation:cd-bounce-2-inverse .6s;animation:cd-bounce-2-inverse .6s}}@media only screen and (max-width:1169px){.vertical-timeline--animate .vertical-timeline-element-content.bounce-in{visibility:visible;-webkit-animation:cd-bounce-2-inverse .6s;animation:cd-bounce-2-inverse .6s}}@-webkit-keyframes cd-bounce-2{0%{opacity:0;-webkit-transform:translateX(-100px)}60%{opacity:1;-webkit-transform:translateX(20px)}to{-webkit-transform:translateX(0)}}@keyframes cd-bounce-2{0%{opacity:0;-webkit-transform:translateX(-100px);transform:translate(-100px)}60%{opacity:1;-webkit-transform:translateX(20px);transform:translate(20px)}to{-webkit-transform:translateX(0);transform:translate(0)}}@-webkit-keyframes cd-bounce-2-inverse{0%{opacity:0;-webkit-transform:translateX(100px)}60%{opacity:1;-webkit-transform:translateX(-20px)}to{-webkit-transform:translateX(0)}}@keyframes cd-bounce-2-inverse{0%{opacity:0;-webkit-transform:translateX(100px);transform:translate(100px)}60%{opacity:1;-webkit-transform:translateX(-20px);transform:translate(-20px)}to{-webkit-transform:translateX(0);transform:translate(0)}} diff --git a/assets/style-JPChhUFf.css b/assets/style-JPChhUFf.css new file mode 100644 index 0000000..a50aba7 --- /dev/null +++ b/assets/style-JPChhUFf.css @@ -0,0 +1 @@ +@layer vocs_preflight;:root{--vocs-color_white: rgba(255 255 255 / 100%);--vocs-color_black: rgba(0 0 0 / 100%);--vocs-color_background: rgba(255 255 255 / 100%);--vocs-color_background2: #f9f9f9;--vocs-color_background3: #f6f6f6;--vocs-color_background4: #f0f0f0;--vocs-color_background5: #e8e8e8;--vocs-color_backgroundAccent: #5b5bd6;--vocs-color_backgroundAccentHover: #5151cd;--vocs-color_backgroundAccentText: rgba(255 255 255 / 100%);--vocs-color_backgroundBlueTint: #008cff0b;--vocs-color_backgroundDark: #f9f9f9;--vocs-color_backgroundGreenTint: #00a32f0b;--vocs-color_backgroundGreenTint2: #00a43319;--vocs-color_backgroundIrisTint: #0000ff07;--vocs-color_backgroundRedTint: #ff000008;--vocs-color_backgroundRedTint2: #f3000d14;--vocs-color_backgroundYellowTint: #f4dd0016;--vocs-color_border: #ececec;--vocs-color_border2: #cecece;--vocs-color_borderAccent: #5753c6;--vocs-color_borderBlue: #009eff2a;--vocs-color_borderGreen: #019c393b;--vocs-color_borderIris: #dadcff;--vocs-color_borderRed: #ff000824;--vocs-color_borderYellow: #ffd5008f;--vocs-color_heading: #202020;--vocs-color_inverted: rgba(0 0 0 / 100%);--vocs-color_shadow: #0000000f;--vocs-color_shadow2: #00000006;--vocs-color_text: #4c4c4c;--vocs-color_text2: #646464;--vocs-color_text3: #838383;--vocs-color_text4: #bbbbbb;--vocs-color_textAccent: #5753c6;--vocs-color_textAccentHover: #272962;--vocs-color_textBlue: #0d74ce;--vocs-color_textBlueHover: #113264;--vocs-color_textGreen: #218358;--vocs-color_textGreenHover: #193b2d;--vocs-color_textIris: #5753c6;--vocs-color_textIrisHover: #272962;--vocs-color_textRed: #ce2c31;--vocs-color_textRedHover: #641723;--vocs-color_textYellow: #9e6c00;--vocs-color_textYellowHover: #473b1f;--vocs-color_title: #202020}:root.dark{--vocs-color_white: rgba(255 255 255 / 100%);--vocs-color_black: rgba(0 0 0 / 100%);--vocs-color_background: #232225;--vocs-color_background2: #2b292d;--vocs-color_background3: #2e2c31;--vocs-color_background4: #323035;--vocs-color_background5: #3c393f;--vocs-color_backgroundAccent: #5b5bd6;--vocs-color_backgroundAccentHover: #5753c6;--vocs-color_backgroundAccentText: rgba(255 255 255 / 100%);--vocs-color_backgroundBlueTint: #008ff519;--vocs-color_backgroundDark: #1e1d1f;--vocs-color_backgroundGreenTint: #00a43319;--vocs-color_backgroundGreenTint2: #00a83829;--vocs-color_backgroundIrisTint: #000bff19;--vocs-color_backgroundRedTint: #f3000d14;--vocs-color_backgroundRedTint2: #ff000824;--vocs-color_backgroundYellowTint: #f4dd0016;--vocs-color_border: #3c393f;--vocs-color_border2: #6f6d78;--vocs-color_borderAccent: #6e6ade;--vocs-color_borderBlue: #009eff2a;--vocs-color_borderGreen: #019c393b;--vocs-color_borderIris: #303374;--vocs-color_borderRed: #ff000824;--vocs-color_borderYellow: #f4dd0016;--vocs-color_heading: #e9e9ea;--vocs-color_inverted: rgba(255 255 255 / 100%);--vocs-color_shadow: #00000000;--vocs-color_shadow2: rgba(0, 0, 0, .05);--vocs-color_text: #cfcfcf;--vocs-color_text2: #bdbdbe;--vocs-color_text3: #a7a7a8;--vocs-color_text4: #656567;--vocs-color_textAccent: #b1a9ff;--vocs-color_textAccentHover: #6e6ade;--vocs-color_textBlue: #70b8ff;--vocs-color_textBlueHover: #3b9eff;--vocs-color_textGreen: #3dd68c;--vocs-color_textGreenHover: #33b074;--vocs-color_textIris: #b1a9ff;--vocs-color_textIrisHover: #6e6ade;--vocs-color_textRed: #ff9592;--vocs-color_textRedHover: #ec5d5e;--vocs-color_textYellow: #f5e147;--vocs-color_textYellowHover: #e2a336;--vocs-color_title: rgba(255 255 255 / 100%)}:root{--vocs-color_blockquoteBorder: var(--vocs-color_border);--vocs-color_blockquoteText: var(--vocs-color_text3);--vocs-color_dangerBackground: var(--vocs-color_backgroundRedTint);--vocs-color_dangerBorder: var(--vocs-color_borderRed);--vocs-color_dangerText: var(--vocs-color_textRed);--vocs-color_dangerTextHover: var(--vocs-color_textRedHover);--vocs-color_infoBackground: var(--vocs-color_backgroundBlueTint);--vocs-color_infoBorder: var(--vocs-color_borderBlue);--vocs-color_infoText: var(--vocs-color_textBlue);--vocs-color_infoTextHover: var(--vocs-color_textBlueHover);--vocs-color_noteBackground: var(--vocs-color_background2);--vocs-color_noteBorder: var(--vocs-color_border);--vocs-color_noteText: var(--vocs-color_text2);--vocs-color_successBackground: var(--vocs-color_backgroundGreenTint);--vocs-color_successBorder: var(--vocs-color_borderGreen);--vocs-color_successText: var(--vocs-color_textGreen);--vocs-color_successTextHover: var(--vocs-color_textGreenHover);--vocs-color_tipBackground: var(--vocs-color_backgroundIrisTint);--vocs-color_tipBorder: var(--vocs-color_borderIris);--vocs-color_tipText: var(--vocs-color_textIris);--vocs-color_tipTextHover: var(--vocs-color_textIrisHover);--vocs-color_warningBackground: var(--vocs-color_backgroundYellowTint);--vocs-color_warningBorder: var(--vocs-color_borderYellow);--vocs-color_warningText: var(--vocs-color_textYellow);--vocs-color_warningTextHover: var(--vocs-color_textYellowHover);--vocs-color_codeBlockBackground: var(--vocs-color_background2);--vocs-color_codeCharacterHighlightBackground: var(--vocs-color_background5);--vocs-color_codeHighlightBackground: var(--vocs-color_background4);--vocs-color_codeHighlightBorder: var(--vocs-color_border2);--vocs-color_codeInlineBackground: var(--vocs-color_background4);--vocs-color_codeInlineBorder: var(--vocs-color_border);--vocs-color_codeInlineText: var(--vocs-color_textAccent);--vocs-color_codeTitleBackground: var(--vocs-color_background4);--vocs-color_lineNumber: var(--vocs-color_text4);--vocs-color_hr: var(--vocs-color_border);--vocs-color_link: var(--vocs-color_textAccent);--vocs-color_linkHover: var(--vocs-color_textAccentHover);--vocs-color_searchHighlightBackground: var(--vocs-color_borderAccent);--vocs-color_searchHighlightText: var(--vocs-color_background);--vocs-color_tableBorder: var(--vocs-color_border);--vocs-color_tableHeaderBackground: var(--vocs-color_background2);--vocs-color_tableHeaderText: var(--vocs-color_text2)}:root{--vocs-borderRadius_0: 0;--vocs-borderRadius_2: 2px;--vocs-borderRadius_3: 3px;--vocs-borderRadius_4: 4px;--vocs-borderRadius_6: 6px;--vocs-borderRadius_8: 8px}:root{--vocs-fontFamily_default: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--vocs-fontFamily_mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}:root{--vocs-fontSize_9: .5625rem;--vocs-fontSize_11: .6875rem;--vocs-fontSize_12: .75rem;--vocs-fontSize_13: .8125rem;--vocs-fontSize_14: .875rem;--vocs-fontSize_15: .9375rem;--vocs-fontSize_16: 1rem;--vocs-fontSize_18: 1.125rem;--vocs-fontSize_20: 1.25rem;--vocs-fontSize_24: 1.5rem;--vocs-fontSize_32: 2rem;--vocs-fontSize_64: 3rem;--vocs-fontSize_root: 16px;--vocs-fontSize_h1: var(--vocs-fontSize_32);--vocs-fontSize_h2: var(--vocs-fontSize_24);--vocs-fontSize_h3: var(--vocs-fontSize_20);--vocs-fontSize_h4: var(--vocs-fontSize_18);--vocs-fontSize_h5: var(--vocs-fontSize_16);--vocs-fontSize_h6: var(--vocs-fontSize_16);--vocs-fontSize_calloutCodeBlock: .8em;--vocs-fontSize_code: .875em;--vocs-fontSize_codeBlock: var(--vocs-fontSize_14);--vocs-fontSize_lineNumber: var(--vocs-fontSize_15);--vocs-fontSize_subtitle: var(--vocs-fontSize_20);--vocs-fontSize_th: var(--vocs-fontSize_14);--vocs-fontSize_td: var(--vocs-fontSize_14)}:root{--vocs-fontWeight_regular: 300;--vocs-fontWeight_medium: 400;--vocs-fontWeight_semibold: 500}:root{--vocs-lineHeight_code: 1.75em;--vocs-lineHeight_heading: 1.5em;--vocs-lineHeight_listItem: 1.5em;--vocs-lineHeight_outlineItem: 1em;--vocs-lineHeight_paragraph: 1.75em;--vocs-lineHeight_sidebarItem: 1.375em}:root{--vocs-space_0: 0px;--vocs-space_1: 1px;--vocs-space_2: .125rem;--vocs-space_3: .1875rem;--vocs-space_4: .25rem;--vocs-space_6: .375rem;--vocs-space_8: .5rem;--vocs-space_12: .75rem;--vocs-space_14: .875rem;--vocs-space_16: 1rem;--vocs-space_18: 1.125rem;--vocs-space_20: 1.25rem;--vocs-space_22: 1.375rem;--vocs-space_24: 1.5rem;--vocs-space_28: 1.75rem;--vocs-space_32: 2rem;--vocs-space_36: 2.25rem;--vocs-space_40: 2.5rem;--vocs-space_44: 2.75rem;--vocs-space_48: 3rem;--vocs-space_56: 3.5rem;--vocs-space_64: 4rem;--vocs-space_72: 4.5rem;--vocs-space_80: 5rem}:root{--vocs-zIndex_backdrop: 69420;--vocs-zIndex_drawer: 69421;--vocs-zIndex_gutterRight: 11;--vocs-zIndex_gutterLeft: 14;--vocs-zIndex_gutterTop: 13;--vocs-zIndex_gutterTopCurtain: 12;--vocs-zIndex_popover: 69422;--vocs-zIndex_surface: 10}:root{--vocs-content_horizontalPadding: var(--vocs-space_48);--vocs-content_verticalPadding: var(--vocs-space_32);--vocs-content_width: calc(70ch + (var(--vocs-content_horizontalPadding) * 2))}:root{--vocs-outline_width: 280px}:root{--vocs-sidebar_horizontalPadding: var(--vocs-space_24);--vocs-sidebar_verticalPadding: var(--vocs-space_0);--vocs-sidebar_width: 300px}:root{--vocs-topNav_height: 60px;--vocs-topNav_horizontalPadding: var(--vocs-content_horizontalPadding);--vocs-topNav_curtainHeight: 40px}@media screen and (width <= 1080px){:root{--vocs-content_verticalPadding: var(--vocs-space_48);--vocs-content_horizontalPadding: var(--vocs-space_24);--vocs-sidebar_horizontalPadding: var(--vocs-space_16);--vocs-sidebar_verticalPadding: var(--vocs-space_16);--vocs-sidebar_width: 300px;--vocs-topNav_height: 48px}}@media screen and (width <= 720px){:root{--vocs-content_horizontalPadding: var(--vocs-space_16);--vocs-content_verticalPadding: var(--vocs-space_32)}}.vocs_Banner{background-color:var(--vocs_Banner_bannerBackgroundColor, var(--vocs-color_backgroundAccent));border-bottom:1px solid var(--vocs_Banner_bannerBackgroundColor, var(--vocs-color_borderAccent));color:var(--vocs_Banner_bannerTextColor, var(--vocs-color_backgroundAccentText));height:var(--vocs_Banner_bannerHeight, 36px);position:fixed;top:0;width:100%;z-index:var(--vocs-zIndex_gutterTop)}.vocs_Banner_content{font-size:var(--vocs-fontSize_14);overflow-x:scroll;padding-left:var(--vocs-space_8);padding-right:var(--vocs-space_8);margin-right:var(--vocs-space_24);-ms-overflow-style:none;scrollbar-width:none;white-space:pre}.vocs_Banner_content::-webkit-scrollbar{display:none}.vocs_Banner_inner{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.vocs_Banner_closeButton{align-items:center;background-color:var(--vocs_Banner_bannerBackgroundColor, var(--vocs-color_backgroundAccent));display:flex;justify-content:center;height:100%;position:absolute;right:0;width:var(--vocs-space_24)}.vocs_Banner_content a{font-weight:400;text-underline-offset:2px;text-decoration:underline}@media screen and (width <= 1080px){.vocs_Banner{position:initial}}.vocs_DocsLayout{--vocs_DocsLayout_leftGutterWidth: max(calc((100vw - var(--vocs-content_width)) / 2), var(--vocs-sidebar_width))}.vocs_DocsLayout_content{background-color:var(--vocs-color_background);margin-left:auto;margin-right:auto;max-width:var(--vocs-content_width);min-height:100vh}.vocs_DocsLayout_content_withSidebar{margin-left:var(--vocs_DocsLayout_leftGutterWidth);margin-right:unset}.vocs_DocsLayout_gutterLeft{background-color:var(--vocs-color_backgroundDark);justify-content:flex-end;display:flex;height:100vh;position:fixed;top:var(--vocs_Banner_bannerHeight, 0px);width:var(--vocs_DocsLayout_leftGutterWidth);z-index:var(--vocs-zIndex_gutterLeft)}.vocs_DocsLayout_gutterTop{align-items:center;background-color:color-mix(in srgb,var(--vocs-color_background) 98%,transparent);height:var(--vocs-topNav_height);width:100vw;z-index:var(--vocs-zIndex_gutterTop)}.vocs_DocsLayout_gutterTopCurtain{display:flex;height:var(--vocs-topNav_curtainHeight);width:100vw;z-index:var(--vocs-zIndex_gutterTopCurtain)}.vocs_DocsLayout_gutterTopCurtain_hidden{background:unset;display:none}.vocs_DocsLayout_gutterRight{display:flex;height:100vh;overflow-y:auto;padding:calc(var(--vocs-content_verticalPadding) + var(--vocs-topNav_height) + var(--vocs-space_8)) var(--vocs-space_24) 0 0;position:fixed;top:var(--vocs_Banner_bannerHeight, 0px);right:0;width:calc((100vw - var(--vocs-content_width)) / 2);z-index:var(--vocs-zIndex_gutterRight)}.vocs_DocsLayout_gutterRight::-webkit-scrollbar{display:none}.vocs_DocsLayout_gutterRight_withSidebar{width:calc(100vw - var(--vocs-content_width) - var(--vocs_DocsLayout_leftGutterWidth))}.vocs_DocsLayout_outlinePopover{display:none;overflow-y:auto;height:calc(100vh - var(--vocs-topNav_height) - var(--vocs-topNav_curtainHeight))}.vocs_DocsLayout_sidebar{padding:var(--vocs-space_0) var(--vocs-sidebar_horizontalPadding) var(--vocs-space_24) var(--vocs-sidebar_horizontalPadding)}.vocs_DocsLayout_sidebarDrawer{display:none}@media screen and (width <= 720px){.vocs_DocsLayout_content{overflow-x:hidden}}@media screen and (width > 1080px){.vocs_DocsLayout_content_withTopNav{padding-top:calc(var(--vocs-topNav_height) + var(--vocs_Banner_bannerHeight, 0px))}.vocs_DocsLayout_gutterTop{padding-left:calc(var(--vocs_DocsLayout_leftGutterWidth) - var(--vocs-sidebar_width));padding-right:calc(var(--vocs_DocsLayout_leftGutterWidth) - var(--vocs-sidebar_width));position:fixed;top:var(--vocs_Banner_bannerHeight, 0px)}.vocs_DocsLayout_gutterTop_offsetLeftGutter{padding-left:var(--vocs_DocsLayout_leftGutterWidth)}.vocs_DocsLayout_gutterTopCurtain{position:fixed;top:calc(var(--vocs-topNav_height) + var(--vocs_Banner_bannerHeight, 0px))}.vocs_DocsLayout_gutterTopCurtain_withSidebar{margin-left:var(--vocs_DocsLayout_leftGutterWidth)}}@media screen and (width <= 1080px){.vocs_DocsLayout_content{margin-left:auto;margin-right:auto}.vocs_DocsLayout_gutterLeft{display:none}.vocs_DocsLayout_gutterTop{position:initial}.vocs_DocsLayout_gutterTop_sticky,.vocs_DocsLayout_gutterTopCurtain{position:sticky;top:0}.vocs_DocsLayout_outlinePopover,.vocs_DocsLayout_sidebarDrawer{display:block}}@media screen and (width <= 1280px){.vocs_DocsLayout_gutterRight{display:none}}@layer vocs_reset_reset;html,body,.vocs_DocsLayout{font-family:var(--vocs-fontFamily_default);font-feature-settings:"rlig" 1,"calt" 1;font-size:var(--vocs-fontSize_root)}button,select{text-transform:none}button,select{-webkit-appearance:button;-moz-appearance:button;appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{outline:auto}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none;-moz-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;-moz-appearance:button;appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1}input::placeholder,textarea::placeholder{opacity:1}button,[role=button]{cursor:pointer}:disabled{overflow:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}@layer vocs_reset_reset{*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid}*:focus-visible{outline:2px solid var(--vocs-color_borderAccent);outline-offset:2px;outline-style:dashed}html,body{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:inherit;margin:0;padding:0;border:0;text-rendering:optimizeLegibility}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;text-wrap:balance}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--vocs-fontFamily_mono);font-size:var(--vocs-fontSize_root)}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:inherit;border-collapse:collapse;text-indent:0}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}}.vocs_Tabs{background-color:var(--vocs-color_codeBlockBackground);border:1px solid var(--vocs-color_codeInlineBorder);border-radius:var(--vocs-borderRadius_4)}.vocs_Tabs_list{background-color:var(--vocs-color_codeTitleBackground);border-bottom:1px solid var(--vocs-color_border);border-top-left-radius:var(--vocs-borderRadius_4);border-top-right-radius:var(--vocs-borderRadius_4);display:flex;padding:var(--vocs-space_0) var(--vocs-space_14)}.vocs_Tabs_trigger{border-bottom:2px solid transparent;color:var(--vocs-color_text3);font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);padding:var(--vocs-space_8) var(--vocs-space_8) var(--vocs-space_6) var(--vocs-space_8);transition:color .1s}.vocs_Tabs_trigger:hover{color:var(--vocs-color_text)}.vocs_Tabs_trigger[data-state=active]{border-bottom:2px solid var(--vocs-color_borderAccent);color:var(--vocs-color_text)}.vocs_Tabs_content{background-color:var(--vocs-color_codeBlockBackground)}.vocs_Tabs_content:not([data-shiki=true]){padding:var(--vocs-space_20) var(--vocs-space_22)}.vocs_Tabs pre{margin-bottom:var(--vocs-space_0)}@media screen and (width <= 720px){.vocs_Tabs_list{border-radius:0;padding:var(--vocs-space_0) var(--vocs-space_8)}.vocs_Tabs_content:not([data-shiki=true]){padding:var(--vocs-space_20) var(--vocs-space_16)}.vocs_Tabs pre{margin:unset}}.vocs_CodeBlock{border:1px solid var(--vocs-color_codeInlineBorder);border-radius:var(--vocs-borderRadius_4)}.vocs_Tabs .vocs_CodeBlock,.vocs_Callout .vocs_CodeBlock{border:none;margin-left:unset;margin-right:unset}.vocs_CodeBlock code{display:grid;font-size:var(--vocs-fontSize_codeBlock)}.vocs_Callout .vocs_CodeBlock code{font-size:var(--vocs-fontSize_calloutCodeBlock)}.vocs_CodeBlock pre{background-color:var(--vocs-color_codeBlockBackground);border-radius:var(--vocs-borderRadius_4);overflow-x:auto;padding:var(--vocs-space_20) var(--vocs-space_0)}.vocs_Callout .vocs_CodeBlock pre{background-color:color-mix(in srgb,var(--vocs-color_codeBlockBackground) 65%,transparent)!important;border:1px solid var(--vocs-color_codeInlineBorder);border-radius:var(--vocs-borderRadius_4);padding:var(--vocs-space_12) var(--vocs-space_0)}.vocs_CodeBlock .line{border-left:2px solid transparent;padding:var(--vocs-space_0) var(--vocs-space_22);line-height:var(--vocs-lineHeight_code)}.vocs_Callout .vocs_CodeBlock .line{padding:var(--vocs-space_0) var(--vocs-space_12)}.vocs_CodeBlock .twoslash-popup-info .line{padding:var(--vocs-space_0) var(--vocs-space_4)}.vocs_CodeBlock .twoslash-popup-info-hover .line{display:inline-block;padding:var(--vocs-space_0) var(--vocs-space_8)}.vocs_CodeBlock .twoslash-error-line,.vocs_CodeBlock .twoslash-tag-line{padding:var(--vocs-space_0) var(--vocs-space_22)}.vocs_CodeBlock [data-line-numbers]{counter-reset:line}.vocs_CodeBlock [data-line-numbers]>.line{padding:var(--vocs-space_0) var(--vocs-space_16)}.vocs_CodeBlock [data-line-numbers]>.line:before{content:counter(line);color:var(--vocs-color_lineNumber);display:inline-block;font-size:var(--vocs-fontSize_lineNumber);margin-right:var(--vocs-space_16);text-align:right;width:1rem}.vocs_CodeBlock [data-line-numbers]>.line:not(.diff.remove+.diff.add):before{counter-increment:line}.vocs_CodeBlock [data-line-numbers]>.line.diff:after{margin-left:calc(-1 * var(--vocs-space_4))}.vocs_CodeBlock .highlighted{background-color:var(--vocs-color_codeHighlightBackground);border-left:2px solid var(--vocs-color_codeHighlightBorder);box-sizing:content-box}.vocs_CodeBlock .highlighted-word{border-radius:var(--vocs-borderRadius_2);background-color:var(--vocs-color_codeCharacterHighlightBackground)!important;box-shadow:0 0 0 4px var(--vocs-color_codeCharacterHighlightBackground)}.vocs_CodeBlock .has-diff{position:relative}.vocs_CodeBlock .line.diff:after{position:absolute;left:var(--vocs-space_8)}.vocs_CodeBlock .line.diff.add{background-color:var(--vocs-color_backgroundGreenTint2)}.vocs_CodeBlock .line.diff.add:after{content:"+";color:var(--vocs-color_textGreen)}.vocs_CodeBlock .line.diff.remove{background-color:var(--vocs-color_backgroundRedTint2);opacity:.6}.vocs_CodeBlock .line.diff.remove>span{filter:grayscale(1)}.vocs_CodeBlock .line.diff.remove:after{content:"-";color:var(--vocs-color_textRed)}.vocs_CodeBlock .has-focused>code>.line:not(.focused),.vocs_CodeBlock .has-focused>code>.twoslash-meta-line:not(.focused){opacity:.3;transition:opacity .2s}.vocs_CodeBlock:hover .has-focused .line:not(.focused),.vocs_CodeBlock:hover .has-focused .twoslash-meta-line:not(.focused){opacity:1;transition:opacity .2s}@media screen and (width <= 720px){.vocs_CodeBlock{border-radius:0;border-right:none;border-left:none;margin-left:calc(-1 * var(--vocs-space_16));margin-right:calc(-1 * var(--vocs-space_16))}.vocs_CodeBlock pre{border-radius:0}.vocs_CodeBlock .line,.vocs_CodeBlock .twoslash-error-line,.vocs_CodeBlock .twoslash-tag-line{padding:0 var(--vocs-space_16)}.vocs_CodeBlock .line.diff:after{left:var(--vocs-space_6)}}.vocs_Header{border-bottom:1px solid var(--vocs-color_border)}.vocs_Header:not(:last-child){margin-bottom:var(--vocs-space_28);padding-bottom:var(--vocs-space_28)}[data-layout=landing] .vocs_Header{padding-bottom:var(--vocs-space_16)}[data-layout=landing] .vocs_Header:not(:first-child){padding-top:var(--vocs-space_36)}.vocs_H2{font-size:var(--vocs-fontSize_h2);letter-spacing:-.02em}.vocs_H2.vocs_H2:not(:last-child){margin-bottom:var(--vocs-space_24)}:not(.vocs_Header)+.vocs_H2:not(:only-child){border-top:1px solid var(--vocs-color_border);margin-top:var(--vocs-space_56);padding-top:var(--vocs-space_24)}[data-layout=landing] .vocs_H2.vocs_H2{border-top:none;margin-top:var(--vocs-space_24);padding-top:0}.vocs_H3{font-size:var(--vocs-fontSize_h3)}.vocs_H3:not(:first-child){margin-top:var(--vocs-space_18);padding-top:var(--vocs-space_18)}.vocs_H3.vocs_H3:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_H2+.vocs_H3{padding-top:var(--vocs-space_0)}.vocs_H4{font-size:var(--vocs-fontSize_h4)}.vocs_H4:not(:first-child){margin-top:var(--vocs-space_18);padding-top:var(--vocs-space_12)}.vocs_H4.vocs_H4:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_H3+.vocs_H4{padding-top:var(--vocs-space_0)}.vocs_H5{font-size:var(--vocs-fontSize_h5)}.vocs_H5:not(:first-child){margin-top:var(--vocs-space_16)}.vocs_H5.vocs_H5:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_H4+.vocs_H5{padding-top:var(--vocs-space_0)}.vocs_H6{font-size:var(--vocs-fontSize_h6)}.vocs_H6:not(:first-child){margin-top:var(--vocs-space_16)}.vocs_H6.vocs_H6:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_H5+.vocs_H6{padding-top:var(--vocs-space_0)}.vocs_Step:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_Step_title{margin-bottom:var(--vocs-space_8);position:relative}.vocs_Step_title:before{content:counter(step);align-items:center;background-color:var(--vocs-color_background5);border-radius:100%;border:.5em solid var(--vocs-color_background);box-sizing:content-box;color:var(--vocs-color_text2);counter-increment:step;display:flex;font-size:.625em;font-weight:var(--vocs-fontWeight_regular);height:2em;justify-content:center;left:calc(-25.125px - 1.45em);position:absolute;top:-.25em;width:2em}.vocs_H2+.vocs_Step_content,.vocs_H3+.vocs_Step_content,.vocs_H4+.vocs_Step_content,.vocs_H5+.vocs_Step_content,.vocs_H6+.vocs_Step_content{margin-top:calc(var(--vocs-space_8) * -1)}.vocs_Step_content>*:not(:last-child){margin-bottom:var(--vocs-space_16)}.vocs_Step_content>*:last-child{margin-bottom:var(--vocs-space_0)}@media screen and (width <= 720px){.vocs_Step_content>.vocs_Tabs,.vocs_Step_content>.vocs_CodeBlock{outline:6px solid var(--vocs-color_background);margin-left:calc(-1 * var(--vocs-space_44) - 2px);margin-right:calc(-1 * var(--vocs-space_16))}.vocs_Step_content .vocs_Tabs pre.shiki{border-top:none}}.vocs_Callout{border-radius:var(--vocs-borderRadius_4);font-size:var(--vocs-fontSize_14);padding:var(--vocs-space_16) var(--vocs-space_20);margin-bottom:var(--vocs-space_16)}.vocs_Callout_note{background-color:var(--vocs-color_noteBackground);border:1px solid var(--vocs-color_noteBorder);color:var(--vocs-color_noteText)}.vocs_Callout_info{background-color:var(--vocs-color_infoBackground);border:1px solid var(--vocs-color_infoBorder);color:var(--vocs-color_infoText)}.vocs_Callout_warning{background-color:var(--vocs-color_warningBackground);border:1px solid var(--vocs-color_warningBorder);color:var(--vocs-color_warningText)}.vocs_Callout_danger{background-color:var(--vocs-color_dangerBackground);border:1px solid var(--vocs-color_dangerBorder);color:var(--vocs-color_dangerText)}.vocs_Callout_tip{background-color:var(--vocs-color_tipBackground);border:1px solid var(--vocs-color_tipBorder);color:var(--vocs-color_tipText)}.vocs_Callout_success{background-color:var(--vocs-color_successBackground);border:1px solid var(--vocs-color_successBorder);color:var(--vocs-color_successText)}@media screen and (width <= 720px){:not(undefined)>.vocs_Callout{border-radius:0;border-left-width:0;border-right-width:0;margin-left:calc(-1 * var(--vocs-space_16));margin-right:calc(-1 * var(--vocs-space_16))}}.vocs_Content{background-color:var(--vocs-color_background);max-width:var(--vocs-content_width);padding:var(--vocs-content_verticalPadding) var(--vocs-content_horizontalPadding);width:100%}.vocs_Callout>*+.vocs_Details{margin-top:-8px}@layer vocs_global_global;:root.dark{color-scheme:dark}:root.dark pre.shiki span:not(.line),:root.dark :not(pre.shiki) .line span{color:var(--shiki-dark)!important}pre.shiki{background-color:var(--vocs-color_codeBlockBackground)!important}.vocs_Content>*:not(:last-child),.vocs_Details>*:not(:last-child){margin-bottom:var(--vocs-space_24)}.vocs_Callout>*:not(:last-child),.vocs_Callout>.vocs_Details>*:not(:last-child){margin-bottom:var(--vocs-space_16)}.vocs_Content>*:last-child,.vocs_Callout>*:last-child,.vocs_Details>*:last-child{margin-bottom:var(--vocs-space_0)}#app[aria-hidden=true]{background:var(--vocs-color_background)}@layer vocs_global_global{:root{background-color:var(--vocs-color_background);color:var(--vocs-color_text);line-height:var(--vocs-lineHeight_paragraph);font-size:var(--vocs-fontSize_root);font-weight:var(--vocs-fontWeight_regular)}}@media screen and (width <= 720px){:root{background-color:var(--vocs-color_backgroundDark)}}:root{--vocs-twoslash_borderColor: var(--vocs-color_border2);--vocs-twoslash_underlineColor: currentColor;--vocs-twoslash_popupBackground: var(--vocs-color_background2);--vocs-twoslash_popupShadow: rgba(0, 0, 0, .08) 0px 1px 4px;--vocs-twoslash_matchedColor: inherit;--vocs-twoslash_unmatchedColor: #888;--vocs-twoslash_cursorColor: #8888;--vocs-twoslash_errorColor: var(--vocs-color_textRed);--vocs-twoslash_errorBackground: var(--vocs-color_backgroundRedTint2);--vocs-twoslash_highlightedBackground: var(--vocs-color_background);--vocs-twoslash_highlightedBorder: var(--vocs-color_background);--vocs-twoslash_tagColor: var(--vocs-color_textBlue);--vocs-twoslash_tagBackground: var(--vocs-color_backgroundBlueTint);--vocs-twoslash_tagWarnColor: var(--vocs-color_textYellow);--vocs-twoslash_tagWarnBackground: var(--vocs-color_backgroundYellowTint);--vocs-twoslash_tagAnnotateColor: var(--vocs-color_textGreen);--vocs-twoslash_tagAnnotateBackground: var(--vocs-color_backgroundGreenTint2)}:root.dark{--vocs-twoslash_borderColor: var(--vocs-color_border2);--vocs-twoslash_underlineColor: currentColor;--vocs-twoslash_popupBackground: var(--vocs-color_background5);--vocs-twoslash_popupShadow: rgba(0, 0, 0, .08) 0px 1px 4px;--vocs-twoslash_matchedColor: inherit;--vocs-twoslash_unmatchedColor: #888;--vocs-twoslash_cursorColor: #8888;--vocs-twoslash_errorColor: var(--vocs-color_textRed);--vocs-twoslash_errorBackground: var(--vocs-color_backgroundRedTint2);--vocs-twoslash_highlightedBackground: var(--vocs-color_background);--vocs-twoslash_highlightedBorder: var(--vocs-color_background);--vocs-twoslash_tagColor: var(--vocs-color_textBlue);--vocs-twoslash_tagBackground: var(--vocs-color_backgroundBlueTint);--vocs-twoslash_tagWarnColor: var(--vocs-color_textYellow);--vocs-twoslash_tagWarnBackground: var(--vocs-color_backgroundYellowTint);--vocs-twoslash_tagAnnotateColor: var(--vocs-color_textGreen);--vocs-twoslash_tagAnnotateBackground: var(--vocs-color_backgroundGreenTint2)}:root .twoslash-popup-info-hover,:root .twoslash-popup-info{--shiki-light-bg: var(--vocs-color_background2)}:root .twoslash-popup-info{width:-moz-max-content;width:max-content}:root.dark .twoslash-popup-info,:root.dark .twoslash-popup-info-hover{--shiki-dark-bg: var(--vocs-color_background5)}.twoslash-query-persisted>.twoslash-popup-info{z-index:1}:not(.twoslash-query-persisted)>.twoslash-popup-info{z-index:2}.twoslash:hover .twoslash-hover{border-color:var(--vocs-twoslash_underlineColor)}.twoslash .twoslash-hover{border-bottom:1px dotted transparent;transition-timing-function:ease;transition:border-color .3s}.twoslash-query-persisted{position:relative}.twoslash .twoslash-popup-info{position:absolute;top:0;left:0;opacity:0;display:inline-block;transform:translateY(1.1em);background:var(--vocs-twoslash_popupBackground);border:1px solid var(--vocs-twoslash_borderColor);transition:opacity .3s;border-radius:4px;max-width:540px;padding:4px 6px;pointer-events:none;text-align:left;z-index:20;white-space:pre-wrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-shadow:var(--vocs-twoslash_popupShadow)}.twoslash .twoslash-popup-info-hover{background:var(--vocs-twoslash_popupBackground);border:1px solid var(--vocs-twoslash_borderColor);border-radius:4px;box-shadow:var(--vocs-twoslash_popupShadow);display:inline-block;max-width:500px;pointer-events:auto;position:fixed;opacity:1;transition:opacity .3s;white-space:pre-wrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:20}.twoslash .twoslash-popup-scroll-container{max-height:300px;padding:4px 0;overflow-y:auto;-ms-overflow-style:none;scrollbar-width:none}.twoslash-popup-arrow{position:absolute;top:-4px;left:1em;border-top:1px solid var(--vocs-twoslash_borderColor);border-right:1px solid var(--vocs-twoslash_borderColor);background:var(--vocs-twoslash_popupBackground);transform:rotate(-45deg);width:6px;height:6px;pointer-events:none}.twoslash .twoslash-popup-scroll-container::-webkit-scrollbar{display:none}.twoslash .twoslash-popup-jsdoc{border-top:1px solid var(--vocs-color_border2);color:var(--vocs-color_text);font-family:sans-serif;font-weight:500;margin-top:4px;padding:4px 10px 0}.twoslash-tag-line+.twoslash-tag-line{margin-top:-.2em}.twoslash-query-persisted .twoslash-popup-info{z-index:9;transform:translateY(1.5em)}.twoslash-hover:hover .twoslash-popup-info,.twoslash-query-persisted .twoslash-popup-info{opacity:1;pointer-events:auto}.twoslash-popup-info:hover,.twoslash-popup-info-hover:hover{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.twoslash-error-line{position:relative;background-color:var(--vocs-twoslash_errorBackground);border-left:2px solid var(--vocs-twoslash_errorColor);color:var(--vocs-twoslash_errorColor);margin:.2em 0}.twoslash-error{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%206%203'%20enable-background%3D'new%200%200%206%203'%20height%3D'3'%20width%3D'6'%3E%3Cg%20fill%3D'%23c94824'%3E%3Cpolygon%20points%3D'5.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0'%2F%3E%3Cpolygon%20points%3D'4%2C0%206%2C2%206%2C0.6%205.4%2C0'%2F%3E%3Cpolygon%20points%3D'0%2C2%201%2C3%202.4%2C3%200%2C0.6'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") repeat-x bottom left;padding-bottom:2px}.twoslash-completion-cursor{position:relative}.twoslash-completion-cursor .twoslash-completion-list{-webkit-user-select:none;-moz-user-select:none;user-select:none;position:absolute;top:0;left:0;transform:translateY(1.2em);margin:3px 0 0 -1px;z-index:8;box-shadow:var(--vocs-twoslash_popupShadow);background:var(--vocs-twoslash_popupBackground);border:1px solid var(--vocs-twoslash_borderColor)}.twoslash-completion-list{border-radius:4px;font-size:.8rem;padding:4px;display:flex;flex-direction:column;gap:4px;width:240px}.twoslash-completion-list:hover{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.twoslash-completion-list:before{content:" ";background-color:var(--vocs-twoslash_cursorColor);width:2px;position:absolute;top:-1.6em;height:1.4em;left:-1px}.twoslash-completion-list .twoslash-completion-list-item{overflow:hidden;display:flex;align-items:center;gap:.5em;line-height:1em}.twoslash-completion-list .twoslash-completion-list-item span.twoslash-completions-unmatched.twoslash-completions-unmatched.twoslash-completions-unmatched{color:var(--vocs-twoslash_unmatchedColor)!important}.twoslash-completion-list .deprecated{text-decoration:line-through;opacity:.5}.twoslash-completion-list .twoslash-completion-list-item span.twoslash-completions-matched.twoslash-completions-unmatched.twoslash-completions-unmatched{color:var(--vocs-twoslash_matchedColor)!important}.twoslash-tag-line{position:relative;background-color:var(--vocs-twoslash_tagBackground);border-left:2px solid var(--vocs-twoslash_tagColor);color:var(--vocs-twoslash_tagColor);margin:.2em 0;display:flex;align-items:center;gap:.3em}.twoslash-tag-line+.line[data-empty-line]+.twoslash-tag-line{margin-top:-1.95em}.twoslash-tag-line .twoslash-tag-icon{width:1.1em;color:inherit}.twoslash-tag-line.twoslash-tag-error-line{background-color:var(--vocs-twoslash_errorBackground);border-left:2px solid var(--vocs-twoslash_errorColor);color:var(--vocs-twoslash_errorColor)}.twoslash-tag-line.twoslash-tag-warn-line{background-color:var(--vocs-twoslash_tagWarnBackground);border-left:2px solid var(--vocs-twoslash_tagWarnColor);color:var(--vocs-twoslash_tagWarnColor)}.twoslash-tag-line.twoslash-tag-annotate-line{background-color:var(--vocs-twoslash_tagAnnotateBackground);border-left:2px solid var(--vocs-twoslash_tagAnnotateColor);color:var(--vocs-twoslash_tagAnnotateColor)}.twoslash-highlighted{border-radius:var(--vocs-borderRadius_2);background-color:var(--vocs-color_codeCharacterHighlightBackground)!important;box-shadow:0 0 0 4px var(--vocs-color_codeCharacterHighlightBackground)}@media (prefers-reduced-motion: reduce){.twoslash *{transition:none!important}}.vocs_ExternalLink:after{content:"";background-color:currentColor;color:var(--vocs_ExternalLink_arrowColor);display:inline-block;height:.5em;margin-left:.325em;margin-right:.25em;width:.5em;-webkit-mask:var(--vocs_ExternalLink_iconUrl) no-repeat center / contain;mask:var(--vocs_ExternalLink_iconUrl) no-repeat center / contain}.vocs_Link_accent_underlined{color:var(--vocs-color_link);font-weight:var(--vocs-fontWeight_medium);text-underline-offset:var(--vocs-space_2);text-decoration:underline;transition:color .1s}.vocs_Link_accent_underlined:hover{color:var(--vocs-color_linkHover)}.vocs_Link_styleless{--vocs_ExternalLink_arrowColor: var(--vocs-color_text3)}.vocs_NotFound{align-items:center;display:flex;flex-direction:column;max-width:400px;margin:0 auto;padding-top:var(--vocs-space_64)}.vocs_NotFound_divider{border-color:var(--vocs-color_border);width:50%}.vocs_H1{font-size:var(--vocs-fontSize_h1);letter-spacing:-.02em}.vocs_Heading{align-items:center;color:var(--vocs-color_heading);font-weight:var(--vocs-fontWeight_semibold);gap:.25em;line-height:var(--vocs-lineHeight_heading);position:relative}.vocs_Heading_slugTarget{position:absolute;top:0;visibility:hidden}@media screen and (width > 1080px){.vocs_Heading_slugTarget{top:calc(-1 * (var(--vocs-topNav_height)))}.vocs_Header .vocs_Heading_slugTarget,.vocs_Step_title .vocs_Heading_slugTarget,.vocs_Header+.vocs_Heading .vocs_Heading_slugTarget{top:calc(-1 * (var(--vocs-topNav_height) + var(--vocs-space_24)))}}@media screen and (width <= 1080px){.vocs_Heading_slugTarget{top:calc(-1 * var(--vocs-topNav_curtainHeight))}.vocs_Header .vocs_Heading_slugTarget,.vocs_Header+.vocs_Heading .vocs_Heading_slugTarget{top:calc(-1 * calc(var(--vocs-topNav_curtainHeight) + var(--vocs-space_24)))}}.vocs_Blockquote{border-left:2px solid var(--vocs-color_blockquoteBorder);padding-left:var(--vocs-space_16);margin-bottom:var(--vocs-space_16)}.vocs_H2+.vocs_List,.vocs_H3+.vocs_List,.vocs_H4+.vocs_List,.vocs_H5+.vocs_List,.vocs_H6+.vocs_List{margin-top:calc(var(--vocs-space_8) * -1)}.vocs_Paragraph+.vocs_List{margin-top:calc(-1 * var(--vocs-space_8))}.vocs_List_ordered{list-style:decimal;padding-left:var(--vocs-space_20);margin-bottom:var(--vocs-space_16)}.vocs_List_ordered .vocs_List_ordered{list-style:lower-alpha}.vocs_List_ordered .vocs_List_ordered .vocs_List_ordered{list-style:lower-roman}.vocs_List_unordered{list-style:disc;padding-left:var(--vocs-space_24);margin-bottom:var(--vocs-space_16)}.vocs_List_unordered .vocs_List_unordered{list-style:circle}.vocs_List_ordered .vocs_List_ordered,.vocs_List_unordered .vocs_List_unordered,.vocs_List_ordered .vocs_List_unordered,.vocs_List_unordered .vocs_List_ordered{margin-bottom:var(--vocs-space_0);padding-top:var(--vocs-space_8);padding-left:var(--vocs-space_16);padding-bottom:var(--vocs-space_0)}.vocs_List_unordered.contains-task-list{list-style:none;padding-left:var(--vocs-space_12)}.vocs_Paragraph{line-height:var(--vocs-lineHeight_paragraph)}.vocs_Blockquote>.vocs_Paragraph{color:var(--vocs-color_blockquoteText);margin-bottom:var(--vocs-space_8)}.vocs_H2+.vocs_Paragraph,.vocs_H3+.vocs_Paragraph,.vocs_H4+.vocs_Paragraph,.vocs_H5+.vocs_Paragraph,.vocs_H6+.vocs_Paragraph,.vocs_List+.vocs_Paragraph{margin-top:calc(var(--vocs-space_8) * -1)}.vocs_Paragraph+.vocs_Paragraph{margin-top:calc(-1 * var(--vocs-space_8))}:root:not(.dark) .vocs_utils_visibleDark{display:none}:root.dark .vocs_utils_visibleLight{display:none}.vocs_utils_visuallyHidden{clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.vocs_DesktopSearch_search{align-items:center;background-color:var(--vocs-color_backgroundDark);border:1px solid var(--vocs-color_backgroundDark);border-radius:var(--vocs-borderRadius_8);color:var(--vocs-color_text2);display:flex;font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);gap:var(--vocs-space_6);height:var(--vocs-space_40);max-width:15.5rem;padding-left:var(--vocs-space_12);padding-right:var(--vocs-space_12);position:relative;width:100%;transition:color .1s,border-color .1s}.vocs_DesktopSearch_search:hover{color:var(--vocs-color_text);border-color:var(--vocs-color_text3)}.vocs_DesktopSearch_searchCommand{align-items:center;border:1.5px solid var(--vocs-color_text3);border-radius:var(--vocs-borderRadius_4);color:var(--vocs-color_text3);display:flex;height:var(--vocs-space_12);justify-content:center;margin-left:auto;margin-top:var(--vocs-space_1);padding:var(--vocs-space_1);width:var(--vocs-space_12)}.vocs_Kbd{color:var(--vocs-color_text2);display:inline-block;border-radius:var(--vocs-borderRadius_3);font-size:var(--vocs-fontSize_11);font-family:var(--vocs-fontFamily_default);font-feature-settings:cv08;line-height:105%;min-width:20px;padding:var(--vocs-space_3);padding-left:var(--vocs-space_4);padding-right:var(--vocs-space_4);padding-top:var(--vocs-space_3);text-align:center;text-transform:capitalize;vertical-align:baseline;border:.5px solid var(--vocs-color_border);background-color:var(--vocs-color_background3);box-shadow:var(--vocs-color_shadow2) 0 2px 0 0}.vocs_KeyboardShortcut{align-items:center;display:inline-flex;gap:var(--vocs-space_6);font-size:var(--vocs-fontSize_12)}.vocs_KeyboardShortcut_kbdGroup{align-items:center;display:inline-flex;gap:var(--vocs-space_3)}@media screen and (width <= 720px){.vocs_KeyboardShortcut{display:none}}@keyframes vocs_SearchDialog_fadeIn{0%{opacity:0}to{opacity:1}}@keyframes vocs_SearchDialog_fadeAndSlideIn{0%{opacity:0;transform:translate(-50%,-5%) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}.vocs_SearchDialog{animation:vocs_SearchDialog_fadeAndSlideIn .1s ease-in-out;background:var(--vocs-color_background);border-radius:var(--vocs-borderRadius_6);display:flex;flex-direction:column;gap:var(--vocs-space_8);height:-moz-min-content;height:min-content;left:50%;margin:64px auto;max-height:min(100vh - 128px,900px);padding:var(--vocs-space_12);padding-bottom:var(--vocs-space_8);position:fixed;top:0;transform:translate(-50%);width:min(100vw - 60px,775px);z-index:var(--vocs-zIndex_backdrop)}.vocs_SearchDialog_overlay{animation:vocs_SearchDialog_fadeIn .1s ease-in-out;background:#0009;position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--vocs-zIndex_backdrop)}.vocs_SearchDialog_searchBox{align-items:center;border:1px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);display:flex;gap:var(--vocs-space_8);padding-left:var(--vocs-space_8);padding-right:var(--vocs-space_8);margin-bottom:var(--vocs-space_8);width:100%}.vocs_SearchDialog_searchBox:focus-within{border-color:var(--vocs-color_borderAccent)}.vocs_SearchDialog_searchInput{background:transparent;display:flex;font-size:var(--vocs-fontSize_16);height:var(--vocs-space_40);width:100%}.vocs_SearchDialog_searchInput:focus{outline:none}.vocs_SearchDialog_searchInput::-moz-placeholder{color:var(--vocs-color_text4)}.vocs_SearchDialog_searchInput::placeholder{color:var(--vocs-color_text4)}.vocs_SearchDialog_searchInputIcon{color:var(--vocs-color_text3)}.vocs_SearchDialog_searchInputIconMobile{display:none}.vocs_SearchDialog_results{display:flex;flex-direction:column;gap:var(--vocs-space_8);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;width:100%}.vocs_SearchDialog_result{border:1.5px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);width:100%}.vocs_SearchDialog_result:focus-within{border-color:var(--vocs-color_borderAccent)}.vocs_SearchDialog_result>a{display:flex;flex-direction:column;gap:var(--vocs-space_8);min-height:var(--vocs-space_36);outline:none;justify-content:center;padding:var(--vocs-space_12);width:100%}.vocs_SearchDialog_resultSelected{border-color:var(--vocs-color_borderAccent)}.vocs_SearchDialog_resultIcon{color:var(--vocs-color_textAccent);margin-right:1px;width:15px}.vocs_SearchDialog_titles{align-items:center;display:flex;flex-wrap:wrap;font-weight:var(--vocs-fontWeight_medium);gap:var(--vocs-space_4);line-height:22px}.vocs_SearchDialog_title{align-items:center;display:flex;gap:var(--vocs-space_4);white-space:nowrap}.vocs_SearchDialog_titleIcon{color:var(--vocs-color_text);display:inline-block;opacity:.5}.vocs_SearchDialog_resultSelected .vocs_SearchDialog_title,.vocs_SearchDialog_resultSelected .vocs_SearchDialog_titleIcon{color:var(--vocs-color_textAccent)}.vocs_SearchDialog_content{padding:0}.vocs_SearchDialog_excerpt{max-height:8.75rem;overflow:hidden;opacity:.5;position:relative}.vocs_SearchDialog_excerpt:before{content:"";position:absolute;top:-1px;left:0;width:100%;height:8px;background:linear-gradient(var(--vocs-color_background),transparent);z-index:1000}.vocs_SearchDialog_excerpt:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:12px;background:linear-gradient(transparent,var(--vocs-color_background));z-index:1000}.vocs_SearchDialog_title mark,.vocs_SearchDialog_excerpt mark{background-color:var(--vocs-color_searchHighlightBackground);color:var(--vocs-color_searchHighlightText);border-radius:var(--vocs-borderRadius_2);padding-bottom:0;padding-left:var(--vocs-space_2);padding-right:var(--vocs-space_2);padding-top:0}.vocs_SearchDialog_resultSelected .vocs_SearchDialog_excerpt{opacity:1}.vocs_SearchDialog_searchShortcuts{align-items:center;color:var(--vocs-color_text2);display:flex;gap:var(--vocs-space_20);font-size:var(--vocs-fontSize_14)}.vocs_SearchDialog_searchShortcutsGroup{align-items:center;display:inline-flex;gap:var(--vocs-space_3);margin-right:var(--vocs-space_6)}@media screen and (width <= 720px){.vocs_SearchDialog{border-radius:0;height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));margin:0;max-height:unset;width:100vw}.vocs_SearchDialog_searchInputIconDesktop{display:none}.vocs_SearchDialog_searchInputIconMobile{display:block}.vocs_SearchDialog_excerpt{opacity:1}.vocs_SearchDialog_searchShortcuts{display:none}}.vocs_DesktopTopNav{align-items:center;display:flex;justify-content:space-between;padding:0 var(--vocs-topNav_horizontalPadding);height:var(--vocs-topNav_height)}.vocs_DesktopTopNav_withLogo{padding-left:calc(((100% - var(--vocs-content_width)) / 2) + var(--vocs-topNav_horizontalPadding))}.vocs_DesktopTopNav_button{border-radius:var(--vocs-borderRadius_4);padding:var(--vocs-space_8)}.vocs_DesktopTopNav_content{right:calc(-1 * var(--vocs-space_24))}.vocs_DesktopTopNav_curtain{background:linear-gradient(var(--vocs-color_background),transparent 70%);height:30px;opacity:.98;width:100%}.vocs_DesktopTopNav_divider{background-color:var(--vocs-color_border);height:35%;width:1px}.vocs_DesktopTopNav_group{align-items:center;display:flex}.vocs_DesktopTopNav_icon{color:var(--vocs-color_text2);transition:color .1s}.vocs_DesktopTopNav_button:hover .vocs_DesktopTopNav_icon{color:var(--vocs-color_text)}.vocs_DesktopTopNav_item{align-items:center;display:flex;height:100%;position:relative}.vocs_DesktopTopNav_logo{padding-left:var(--vocs-sidebar_horizontalPadding);padding-right:var(--vocs-sidebar_horizontalPadding);width:var(--vocs-sidebar_width)}.vocs_DesktopTopNav_logoWrapper{display:flex;height:100%;justify-content:flex-end;left:0;position:absolute;width:var(--vocs_DocsLayout_leftGutterWidth)}.vocs_DesktopTopNav_section{align-items:center;display:flex;height:100%;gap:var(--vocs-space_24)}@media screen and (width <= 1080px){.vocs_DesktopTopNav,.vocs_DesktopTopNav_curtain{display:none}}@media screen and (width <= 1280px){.vocs_DesktopTopNav_hideCompact{display:none}}.vocs_Icon{align-items:center;display:flex;height:var(--vocs_Icon_size);width:var(--vocs_Icon_size)}:root:not(.dark) .vocs_Logo_logoDark{display:none}:root.dark .vocs_Logo_logoLight{display:none}.vocs_NavLogo_logoImage{height:50%;width:auto}.vocs_NavLogo_title{font-size:var(--vocs-fontSize_18);font-weight:var(--vocs-fontWeight_semibold);line-height:var(--vocs-lineHeight_heading)}@keyframes vocs_NavigationMenu_fadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.vocs_NavigationMenu_list{display:flex;gap:var(--vocs-space_20)}.vocs_NavigationMenu_link{align-items:center;display:flex;font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);height:100%}.vocs_NavigationMenu_link:hover,.vocs_NavigationMenu_link[data-active=true]{color:var(--vocs-color_textAccent)}.vocs_NavigationMenu_trigger:after{content:"";background-color:currentColor;color:var(--vocs-color_text3);display:inline-block;height:.625em;margin-left:.325em;width:.625em;-webkit-mask:var(--vocs_NavigationMenu_chevronDownIcon) no-repeat center / contain;mask:var(--vocs_NavigationMenu_chevronDownIcon) no-repeat center / contain}.vocs_NavigationMenu_content{background-color:var(--vocs-color_background2);border:1px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);box-shadow:0 3px 10px var(--vocs-color_shadow);display:flex;flex-direction:column;padding:var(--vocs-space_12) var(--vocs-space_16);position:absolute;top:calc(100% + var(--vocs-space_8));min-width:200px;z-index:var(--vocs-zIndex_popover);animation:vocs_NavigationMenu_fadeIn .5s cubic-bezier(.16,1,.3,1)}.vocs_Footer{--vocs_Footer_iconWidth: 24px;display:flex;flex-direction:column;gap:var(--vocs-space_32);max-width:var(--vocs-content_width);overflow-x:hidden;padding:var(--vocs-space_28) var(--vocs-content_horizontalPadding) var(--vocs-space_48)}.vocs_Footer_container{border-bottom:1px solid var(--vocs-color_border);display:flex;justify-content:space-between;padding-bottom:var(--vocs-space_16)}.vocs_Footer_editLink{align-items:center;display:flex;font-size:var(--vocs-fontSize_14);gap:var(--vocs-space_8);text-decoration:none}.vocs_Footer_lastUpdated{color:var(--vocs-color_text3);font-size:var(--vocs-fontSize_14)}.vocs_Footer_navigation{display:flex;justify-content:space-between}.vocs_Footer_navigationIcon{width:var(--vocs_Footer_iconWidth)}.vocs_Footer_navigationIcon_left{display:flex}.vocs_Footer_navigationIcon_right{display:flex;justify-content:flex-end}.vocs_Footer_navigationItem{display:flex;flex-direction:column;gap:var(--vocs-space_4)}.vocs_Footer_navigationItem_right{align-items:flex-end}.vocs_Footer_navigationText{align-items:center;display:flex;font-size:var(--vocs-fontSize_18);font-weight:var(--vocs-fontWeight_medium)}.vocs_Footer_navigationTextInner{overflow:hidden;text-overflow:ellipsis;width:26ch;white-space:pre}@media screen and (width <= 720px){.vocs_Footer_navigationIcon_left,.vocs_Footer_navigationIcon_right{justify-content:center}.vocs_Footer_navigationText{font-size:var(--vocs-fontSize_12)}}@media screen and (width <= 480px){.vocs_Footer_navigationTextInner{width:20ch}}.vocs_MobileSearch_searchButton{align-items:center;display:flex;color:var(--vocs-color_text);height:var(--vocs-space_28);justify-content:center;width:var(--vocs-space_28)}@keyframes vocs_MobileTopNav_fadeIn{0%{opacity:0}to{opacity:1}}.vocs_MobileTopNav{align-items:center;background-color:var(--vocs-color_backgroundDark);border-bottom:1px solid var(--vocs-color_border);display:none;height:100%;justify-content:space-between;padding:var(--vocs-space_0) var(--vocs-content_horizontalPadding);width:100%}.vocs_MobileTopNav_button{border-radius:var(--vocs-borderRadius_4);padding:var(--vocs-space_8)}.vocs_MobileTopNav_content{left:calc(-1 * var(--vocs-space_24))}.vocs_MobileTopNav_curtain{align-items:center;background-color:var(--vocs-color_backgroundDark);border-bottom:1px solid var(--vocs-color_border);display:none;justify-content:space-between;font-size:var(--vocs-fontSize_13);font-weight:var(--vocs-fontWeight_medium);height:100%;padding:var(--vocs-space_0) var(--vocs-content_horizontalPadding);width:100%}.vocs_MobileTopNav_curtainGroup{align-items:center;display:flex;gap:var(--vocs-space_12)}.vocs_MobileTopNav_divider{background-color:var(--vocs-color_border);height:35%;width:1px}.vocs_MobileTopNav_group{align-items:center;display:flex;height:100%}.vocs_MobileTopNav_icon{color:var(--vocs-color_text2);transition:color .1s}.vocs_MobileTopNav_button:hover .vocs_MobileTopNav_icon{color:var(--vocs-color_text)}.vocs_MobileTopNav_item{position:relative}.vocs_MobileTopNav_logo{align-items:center;display:flex;height:var(--vocs-topNav_height)}.vocs_MobileTopNav_logoImage{height:30%}.vocs_MobileTopNav_menuTrigger{align-items:center;display:flex;gap:var(--vocs-space_8)}.vocs_MobileTopNav_menuTitle{max-width:22ch;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:pre}.vocs_MobileTopNav_navigation{margin-left:var(--vocs-space_8)}.vocs_MobileTopNav_navigationContent{display:flex;flex-direction:column;margin-left:var(--vocs-space_8)}.vocs_MobileTopNav_navigationItem{align-items:center;display:flex;justify-content:flex-start;font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);width:100%}.vocs_MobileTopNav_navigationItem:hover,.vocs_MobileTopNav_navigationItem[data-active=true],.vocs_MobileTopNav_navigationItem[data-state=open]{color:var(--vocs-color_textAccent)}.vocs_MobileTopNav_trigger:after{content:"";background-color:currentColor;display:inline-block;height:.625em;margin-left:.325em;width:.625em;-webkit-mask:var(--vocs_MobileTopNav_chevronDownIcon) no-repeat center / contain;mask:var(--vocs_MobileTopNav_chevronDownIcon) no-repeat center / contain}.vocs_MobileTopNav_trigger[data-state=open]:after{-webkit-mask:var(--vocs_MobileTopNav_chevronUpIcon) no-repeat center / contain;mask:var(--vocs_MobileTopNav_chevronUpIcon) no-repeat center / contain}.vocs_MobileTopNav_outlineTrigger{animation:vocs_MobileTopNav_fadeIn .5s cubic-bezier(.16,1,.3,1);align-items:center;color:var(--vocs-color_text2);display:flex;gap:var(--vocs-space_6)}.vocs_MobileTopNav_outlineTrigger[data-state=open]{color:var(--vocs-color_textAccent)}.vocs_MobileTopNav_outlinePopover{display:none;overflow-y:scroll;padding:var(--vocs-space_16);max-height:80vh}.vocs_MobileTopNav_section{align-items:center;display:flex;height:100%;gap:var(--vocs-space_16)}.vocs_MobileTopNav_separator{background-color:var(--vocs-color_border);height:1.75em;width:1px}.vocs_MobileTopNav_sidebarPopover{display:none;overflow-y:scroll;padding:0 var(--vocs-sidebar_horizontalPadding);max-height:80vh;width:var(--vocs-sidebar_width)}.vocs_MobileTopNav_title{font-size:var(--vocs-fontSize_18);font-weight:var(--vocs-fontWeight_semibold);line-height:var(--vocs-lineHeight_heading)}.vocs_MobileTopNav_topNavPopover{display:none;overflow-y:scroll;padding:var(--vocs-sidebar_verticalPadding) var(--vocs-sidebar_horizontalPadding);max-height:80vh;width:var(--vocs-sidebar_width)}@media screen and (width <= 1080px){.vocs_MobileTopNav,.vocs_MobileTopNav_curtain{display:flex}.vocs_MobileTopNav_outlinePopover{display:block;max-width:300px}.vocs_MobileTopNav_sidebarPopover{display:block}.vocs_MobileTopNav_topNavPopover{display:flex;flex-direction:column}}@media screen and (width <= 720px){.vocs_MobileTopNav_navigation:not(.vocs_MobileTopNav_navigation_compact){display:none}}@media screen and (width > 720px){.vocs_MobileTopNav_navigation.vocs_MobileTopNav_navigation_compact{display:none}}.vocs_Outline{width:100%}.vocs_Outline_nav{display:flex;flex-direction:column;gap:var(--vocs-space_8)}.vocs_DocsLayout_gutterRight .vocs_Outline_nav{border-left:1px solid var(--vocs-color_border);padding-left:var(--vocs-space_16)}.vocs_Outline_heading{color:var(--vocs-color_title);font-size:var(--vocs-fontSize_13);font-weight:var(--vocs-fontWeight_semibold);line-height:var(--vocs-lineHeight_heading);letter-spacing:.025em}.vocs_Outline_items .vocs_Outline_items{padding-left:var(--vocs-space_12)}.vocs_Outline_item{line-height:var(--vocs-lineHeight_outlineItem);margin-bottom:var(--vocs-space_8);overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.vocs_Outline_link{color:var(--vocs-color_text2);font-weight:var(--vocs-fontWeight_medium);font-size:var(--vocs-fontSize_13);transition:color .1s}.vocs_Outline_link[data-active=true]{color:var(--vocs-color_textAccent)}.vocs_Outline_link[data-active=true]:hover{color:var(--vocs-color_textAccentHover)}.vocs_Outline_link:hover{color:var(--vocs-color_text)}.vocs_Popover{background-color:var(--vocs-color_background2);border:1px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);margin:0 var(--vocs-space_6);z-index:var(--vocs-zIndex_popover)}.vocs_Sidebar{display:flex;flex-direction:column;font-size:var(--vocs-fontSize_14);overflow-y:auto;width:var(--vocs-sidebar_width)}.vocs_Sidebar_backLink{text-align:left}.vocs_Sidebar_divider{background-color:var(--vocs-color_border);width:100%;height:1px}.vocs_Sidebar_navigation{outline:0}.vocs_Sidebar_navigation:first-child{padding-top:var(--vocs-space_16)}.vocs_Sidebar_group{display:flex;flex-direction:column}.vocs_Sidebar_logo{align-items:center;display:flex;height:var(--vocs-topNav_height);padding-top:var(--vocs-space_4)}.vocs_Sidebar_logoWrapper{background-color:var(--vocs-color_backgroundDark);position:sticky;top:0;z-index:var(--vocs-zIndex_gutterTopCurtain)}.vocs_Sidebar_section{display:flex;flex-direction:column;font-size:1em}.vocs_Sidebar_navigation>.vocs_Sidebar_group>.vocs_Sidebar_section+.vocs_Sidebar_section{border-top:1px solid var(--vocs-color_border)}.vocs_Sidebar_levelCollapsed{gap:var(--vocs-space_4);padding-bottom:var(--vocs-space_12)}.vocs_Sidebar_levelInset{border-left:1px solid var(--vocs-color_border);font-size:var(--vocs-fontSize_13);margin-top:var(--vocs-space_8);padding-left:var(--vocs-space_12)}.vocs_Sidebar_levelInset.vocs_Sidebar_levelInset.vocs_Sidebar_levelInset{font-weight:var(--vocs-fontWeight_regular);padding-top:0;padding-bottom:0}.vocs_Sidebar_items{display:flex;flex-direction:column;gap:.625em;padding-top:var(--vocs-space_16);padding-bottom:var(--vocs-space_16);font-weight:var(--vocs-fontWeight_medium)}.vocs_Sidebar_level .vocs_Sidebar_items{padding-top:var(--vocs-space_6)}.vocs_Sidebar_item{color:var(--vocs-color_text3);letter-spacing:.25px;line-height:var(--vocs-lineHeight_sidebarItem);width:100%;transition:color .1s}.vocs_Sidebar_item:hover{color:var(--vocs-color_text)}.vocs_Sidebar_item[data-active=true]{color:var(--vocs-color_textAccent)}.vocs_Sidebar_sectionHeader{align-items:center;display:flex;justify-content:space-between}.vocs_Sidebar_level>.vocs_Sidebar_sectionHeader{padding-top:var(--vocs-space_12)}.vocs_Sidebar_sectionHeaderActive{color:var(--vocs-color_text)}.vocs_Sidebar_sectionTitle{color:var(--vocs-color_title);font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_semibold);letter-spacing:.25px;width:100%}.vocs_Sidebar_sectionCollapse{color:var(--vocs-color_text3);transform:rotate(90deg);transition:transform .25s}.vocs_Sidebar_sectionCollapseActive{transform:rotate(0)}@media screen and (max-width: 1080px){.vocs_Sidebar{width:100%}.vocs_Sidebar_logoWrapper{display:none}}.vocs_SkipLink{background:var(--vocs-color_background);border-radius:var(--vocs-borderRadius_4);color:var(--vocs-color_link);font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_semibold);left:var(--vocs-space_8);padding:var(--vocs-space_8) var(--vocs-space_16);position:fixed;text-decoration:none;top:var(--vocs-space_8);z-index:999}.vocs_SkipLink:focus{clip:auto;-webkit-clip-path:none;clip-path:none;height:auto;width:auto}:root{--vocs-color_white: rgba(255 255 255 / 100%)}:root.dark{--vocs-color_white: rgba(255 255 255 / 100%)}:root{--vocs-color_black: rgba(0 0 0 / 100%)}:root.dark{--vocs-color_black: rgba(0 0 0 / 100%)}:root{--vocs-color_background: #232225}:root.dark{--vocs-color_background: #232225}:root{--vocs-color_background2: #2b292d}:root.dark{--vocs-color_background2: #2b292d}:root{--vocs-color_background3: #2e2c31}:root.dark{--vocs-color_background3: #2e2c31}:root{--vocs-color_background4: #323035}:root.dark{--vocs-color_background4: #323035}:root{--vocs-color_background5: #3c393f}:root.dark{--vocs-color_background5: #3c393f}:root{--vocs-color_backgroundAccent: #5b5bd6}:root.dark{--vocs-color_backgroundAccent: #5b5bd6}:root{--vocs-color_backgroundAccentHover: #5b5bd6}:root.dark{--vocs-color_backgroundAccentHover: #5b5bd6}:root{--vocs-color_backgroundAccentText: rgba(255 255 255 / 100%)}:root.dark{--vocs-color_backgroundAccentText: rgba(255 255 255 / 100%)}:root{--vocs-color_backgroundBlueTint: #008ff519}:root.dark{--vocs-color_backgroundBlueTint: #008ff519}:root{--vocs-color_backgroundDark: #1e1d1f}:root.dark{--vocs-color_backgroundDark: #1e1d1f}:root{--vocs-color_backgroundGreenTint: #00a43319}:root.dark{--vocs-color_backgroundGreenTint: #00a43319}:root{--vocs-color_backgroundGreenTint2: #00a83829}:root.dark{--vocs-color_backgroundGreenTint2: #00a83829}:root{--vocs-color_backgroundIrisTint: #000bff19}:root.dark{--vocs-color_backgroundIrisTint: #000bff19}:root{--vocs-color_backgroundRedTint: #f3000d14}:root.dark{--vocs-color_backgroundRedTint: #f3000d14}:root{--vocs-color_backgroundRedTint2: #ff000824}:root.dark{--vocs-color_backgroundRedTint2: #ff000824}:root{--vocs-color_backgroundYellowTint: #f4dd0016}:root.dark{--vocs-color_backgroundYellowTint: #f4dd0016}:root{--vocs-color_border: #3c393f}:root.dark{--vocs-color_border: #3c393f}:root{--vocs-color_border2: #6f6d78}:root.dark{--vocs-color_border2: #6f6d78}:root{--vocs-color_borderAccent: #6e6ade}:root.dark{--vocs-color_borderAccent: #6e6ade}:root{--vocs-color_borderBlue: #009eff2a}:root.dark{--vocs-color_borderBlue: #009eff2a}:root{--vocs-color_borderGreen: #019c393b}:root.dark{--vocs-color_borderGreen: #019c393b}:root{--vocs-color_borderIris: #303374}:root.dark{--vocs-color_borderIris: #303374}:root{--vocs-color_borderRed: #ff000824}:root.dark{--vocs-color_borderRed: #ff000824}:root{--vocs-color_borderYellow: #f4dd0016}:root.dark{--vocs-color_borderYellow: #f4dd0016}:root{--vocs-color_heading: #e9e9ea}:root.dark{--vocs-color_heading: #e9e9ea}:root{--vocs-color_inverted: rgba(255 255 255 / 100%)}:root.dark{--vocs-color_inverted: rgba(255 255 255 / 100%)}:root{--vocs-color_shadow: #00000000}:root.dark{--vocs-color_shadow: #00000000}:root{--vocs-color_shadow2: rgba(0, 0, 0, .05)}:root.dark{--vocs-color_shadow2: rgba(0, 0, 0, .05)}:root{--vocs-color_text: #cfcfcf}:root.dark{--vocs-color_text: #cfcfcf}:root{--vocs-color_text2: #bdbdbe}:root.dark{--vocs-color_text2: #bdbdbe}:root{--vocs-color_text3: #a7a7a8}:root.dark{--vocs-color_text3: #a7a7a8}:root{--vocs-color_text4: #656567}:root.dark{--vocs-color_text4: #656567}:root{--vocs-color_textAccent: #b1a9ff}:root.dark{--vocs-color_textAccent: #b1a9ff}:root{--vocs-color_textAccentHover: #6e6ade}:root.dark{--vocs-color_textAccentHover: #6e6ade}:root{--vocs-color_textBlue: #70b8ff}:root.dark{--vocs-color_textBlue: #70b8ff}:root{--vocs-color_textBlueHover: #3b9eff}:root.dark{--vocs-color_textBlueHover: #3b9eff}:root{--vocs-color_textGreen: #3dd68c}:root.dark{--vocs-color_textGreen: #3dd68c}:root{--vocs-color_textGreenHover: #33b074}:root.dark{--vocs-color_textGreenHover: #33b074}:root{--vocs-color_textIris: #b1a9ff}:root.dark{--vocs-color_textIris: #b1a9ff}:root{--vocs-color_textIrisHover: #6e6ade}:root.dark{--vocs-color_textIrisHover: #6e6ade}:root{--vocs-color_textRed: #ff9592}:root.dark{--vocs-color_textRed: #ff9592}:root{--vocs-color_textRedHover: #ec5d5e}:root.dark{--vocs-color_textRedHover: #ec5d5e}:root{--vocs-color_textYellow: #f5e147}:root.dark{--vocs-color_textYellow: #f5e147}:root{--vocs-color_textYellowHover: #e2a336}:root.dark{--vocs-color_textYellowHover: #e2a336}:root{--vocs-color_title: rgba(255 255 255 / 100%)}:root.dark{--vocs-color_title: rgba(255 255 255 / 100%)}:root{--vocs-content_horizontalPadding: 40px}:root.dark{--vocs-content_horizontalPadding: 40px}:root{--vocs-content_verticalPadding: 80px}:root.dark{--vocs-content_verticalPadding: 80px}.flag-sizeL{padding:0;display:flex;justify-content:center;align-items:center}.flag-sizeM{padding:.2em;display:flex;justify-content:center;align-items:center}.flag-sizeS{padding:.3em;display:flex;justify-content:center;align-items:center}.vertical-timeline-element{width:100%}.vertical-timeline-element-title{font-size:18px}.vertical-timeline-element-subtitle{font-size:16px}.vertical-timeline-element-content{font-size:15px}.hrefverticalelement{color:#fff}.hrefverticalelement:after{content:"↗";position:relative;top:-5px;right:0;font-size:16px}.popacity{background:#33475b;padding:10px}.popacitydanger{background:#b81d1d;padding:10px}.two-column-layout{display:flex;justify-content:space-between;flex-wrap:wrap}.main-content{flex:1;margin-right:50px;min-width:350px}@media only screen and (max-width: 600px){.main-content{flex:1;margin-right:0}}.sidebarcv{margin-right:0;width:"100%";flex-basis:300px}.category-box{width:100%;color:#fff;background:#2c3e50;padding:10px;margin:5px 5px 25px;cursor:pointer;display:inline-block;borderRadius:5px;box-sizing:border-box}.vocs_Section{border-top:1px solid var(--vocs-color_border);margin-top:var(--vocs-space_56);padding-top:var(--vocs-space_24)}.vocs_Anchor{color:var(--vocs-color_link);font-weight:var(--vocs-fontWeight_medium);text-underline-offset:var(--vocs-space_2);text-decoration:underline;transition:color .1s}.vocs_Callout_danger .vocs_Anchor{color:var(--vocs-color_dangerText)}.vocs_Callout_danger .vocs_Anchor:hover{color:var(--vocs-color_dangerTextHover)}.vocs_Callout_info .vocs_Anchor{color:var(--vocs-color_infoText)}.vocs_Callout_info .vocs_Anchor:hover{color:var(--vocs-color_infoTextHover)}.vocs_Callout_success .vocs_Anchor{color:var(--vocs-color_successText)}.vocs_Callout_success .vocs_Anchor:hover{color:var(--vocs-color_successTextHover)}.vocs_Callout_tip .vocs_Anchor{color:var(--vocs-color_tipText)}.vocs_Callout_tip .vocs_Anchor:hover{color:var(--vocs-color_tipTextHover)}.vocs_Callout_warning .vocs_Anchor{color:var(--vocs-color_warningText)}.vocs_Callout_warning .vocs_Anchor:hover{color:var(--vocs-color_warningTextHover)}.vocs_Anchor:hover{color:var(--vocs-color_linkHover)}.vocs_Section a.data-footnote-backref{color:var(--vocs-color_link);font-weight:var(--vocs-fontWeight_medium);text-underline-offset:var(--vocs-space_2);text-decoration:underline}.vocs_Section a.data-footnote-backref:hover{color:var(--vocs-color_linkHover)}.vocs_Autolink{opacity:0;margin-top:.1em;position:absolute;transition:opacity .1s,transform .1s;transform:translate(-2px) scale(.98)}.vocs_Heading:hover .vocs_Autolink{opacity:1;transform:translate(0) scale(1)}.vocs_Pre_wrapper{position:relative}.vocs_Code{transition:color .1s}:not(.vocs_Pre)>.vocs_Code{background-color:var(--vocs-color_codeInlineBackground);border:1px solid var(--vocs-color_codeInlineBorder);border-radius:var(--vocs-borderRadius_4);color:var(--vocs-color_codeInlineText);font-size:var(--vocs-fontSize_code);padding:var(--vocs-space_3) var(--vocs-space_6)}.vocs_Anchor>.vocs_Code{color:var(--vocs-color_link);text-decoration:underline;text-underline-offset:var(--vocs-space_2)}.vocs_Anchor:hover>.vocs_Code{color:var(--vocs-color_linkHover)}.vocs_Callout_danger .vocs_Code{color:var(--vocs-color_dangerText)}.vocs_Callout_info .vocs_Code{color:var(--vocs-color_infoText)}.vocs_Callout_success .vocs_Code{color:var(--vocs-color_successText)}.vocs_Callout_tip .vocs_Code{color:var(--vocs-color_tipText)}.vocs_Callout_warning .vocs_Code{color:var(--vocs-color_warningText)}.vocs_Heading .vocs_Code{color:inherit}.twoslash-popup-info-hover>.vocs_Code{background-color:inherit;padding:0;text-wrap:wrap}.twoslash-popup-jsdoc .vocs_Code{display:inline}.vocs_Authors{color:var(--vocs-color_text3);font-size:var(--vocs-fontSize_14)}.vocs_Authors_authors{color:var(--vocs-color_text)}.vocs_Authors_link{text-decoration:underline;text-underline-offset:2px}.vocs_Authors_link:hover{color:var(--vocs-color_text2)}.vocs_Authors_separator{color:var(--vocs-color_text3)}.vocs_BlogPosts{display:flex;flex-direction:column;gap:var(--vocs-space_32)}.vocs_BlogPosts_description{margin-top:var(--vocs-space_16)}.vocs_BlogPosts_divider{border-color:var(--vocs-color_background4)}.vocs_BlogPosts_post:hover .vocs_BlogPosts_readMore{color:var(--vocs-color_textAccent)}.vocs_BlogPosts_title{font-size:var(--vocs-fontSize_h2);font-weight:var(--vocs-fontWeight_semibold)}.vocs_Sponsors{border-radius:var(--vocs-borderRadius_8);display:flex;flex-direction:column;gap:var(--vocs-space_4);overflow:hidden}.vocs_Sponsors_title{background-color:var(--vocs-color_background3);color:var(--vocs-color_text3);font-size:var(--vocs-fontSize_13);font-weight:var(--vocs-fontWeight_medium);padding:var(--vocs-space_4) 0;text-align:center}.vocs_Sponsors_row{display:flex;flex-direction:row;gap:var(--vocs-space_4)}.vocs_Sponsors_column{align-items:center;background-color:var(--vocs-color_background3);display:flex;justify-content:center;padding:var(--vocs-space_32);width:calc(var(--vocs_Sponsors_columns) * 100%)}.vocs_Sponsors_sponsor{transition:background-color .1s}.vocs_Sponsors_sponsor:hover{background-color:var(--vocs-color_background5)}.dark .vocs_Sponsors_sponsor:hover{background-color:var(--vocs-color_white)}.vocs_Sponsors_image{filter:grayscale(1);height:var(--vocs_Sponsors_height);transition:filter .1s}.dark .vocs_Sponsors_image{filter:grayscale(1) invert(1)}.vocs_Sponsors_column:hover .vocs_Sponsors_image{filter:none}.vocs_AutolinkIcon{background-color:var(--vocs-color_textAccent);display:inline-block;margin-left:.25em;height:.8em;width:.8em;-webkit-mask:var(--vocs_AutolinkIcon_iconUrl) no-repeat center / contain;mask:var(--vocs_AutolinkIcon_iconUrl) no-repeat center / contain;transition:background-color .1s}.vocs_Autolink:hover .vocs_AutolinkIcon{background-color:var(--vocs-color_textAccentHover)}@media screen and (width <= 720px){.vocs_CodeGroup{border-radius:0;border-right:none;border-left:none;margin-left:calc(-1 * var(--vocs-space_16));margin-right:calc(-1 * var(--vocs-space_16))}}.vocs_Steps{border-left:1.5px solid var(--vocs-color_border);counter-reset:step;padding-left:var(--vocs-space_24);margin-left:var(--vocs-space_12);margin-top:var(--vocs-space_24)}@media screen and (width <= 720px){.vocs_Steps{margin-left:var(--vocs-space_4)}}.vocs_Subtitle{color:var(--vocs-color_text2);font-size:var(--vocs-fontSize_subtitle);font-weight:var(--vocs-fontWeight_regular);letter-spacing:-.02em;line-height:var(--vocs-lineHeight_heading);margin-top:var(--vocs-space_4);text-wrap:balance}.vocs_HorizontalRule{border-top:1px solid var(--vocs-color_hr);margin-bottom:var(--vocs-space_16)}.vocs_ListItem{line-height:var(--vocs-lineHeight_listItem)}.vocs_ListItem:not(:last-child){margin-bottom:.5em}.vocs_CopyButton{align-items:center;background-color:color-mix(in srgb,var(--vocs-color_background2) 75%,transparent);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border:1px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);color:var(--vocs-color_text3);display:flex;justify-content:center;position:absolute;right:var(--vocs-space_18);top:var(--vocs-space_18);opacity:0;height:32px;width:32px;transition:background-color .15s,opacity .15s;z-index:var(--vocs-zIndex_surface)}.vocs_CopyButton:hover{background-color:var(--vocs-color_background4);transition:background-color .05s}.vocs_CopyButton:focus-visible{background-color:var(--vocs-color_background4);opacity:1;transition:background-color .05s}.vocs_CopyButton:hover:active{background-color:var(--vocs-color_background2)}.vocs_Pre:hover .vocs_CopyButton{opacity:1}.vocs_CodeTitle{align-items:center;background-color:var(--vocs-color_codeTitleBackground);border-bottom:1px solid var(--vocs-color_border);color:var(--vocs-color_text3);display:flex;font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);gap:var(--vocs-space_6);padding:var(--vocs-space_8) var(--vocs-space_24)}.vocs_CodeGroup .vocs_CodeTitle{display:none}@media screen and (width <= 720px){.vocs_CodeTitle{border-radius:0;padding-left:var(--vocs-space_16);padding-right:var(--vocs-space_16)}}.vocs_CalloutTitle{font-size:var(--vocs-fontSize_12);letter-spacing:.02em;text-transform:uppercase}.vocs_Strong{font-weight:var(--vocs-fontWeight_semibold)}.vocs_Content>.vocs_Strong{display:block}.vocs_Callout>.vocs_Strong{display:block;margin-bottom:var(--vocs-space_4)}.vocs_Summary{cursor:pointer}.vocs_Summary.vocs_Summary:hover{text-decoration:underline}.vocs_Details[open] .vocs_Summary{margin-bottom:var(--vocs-space_4)}.vocs_Callout .vocs_Summary{font-weight:var(--vocs-fontWeight_medium)}.vocs_Details .vocs_Summary.vocs_Summary{margin-bottom:0}.vocs_Table{display:block;border-collapse:collapse;overflow-x:auto;margin-bottom:var(--vocs-space_24)}.vocs_TableCell{border:1px solid var(--vocs-color_tableBorder);font-size:var(--vocs-fontSize_td);padding:var(--vocs-space_8) var(--vocs-space_12)}.vocs_TableHeader{border:1px solid var(--vocs-color_tableBorder);background-color:var(--vocs-color_tableHeaderBackground);color:var(--vocs-color_tableHeaderText);font-size:var(--vocs-fontSize_th);font-weight:var(--vocs-fontWeight_medium);padding:var(--vocs-space_8) var(--vocs-space_12);text-align:left}.vocs_TableHeader[align=center]{text-align:center}.vocs_TableHeader[align=right]{text-align:right}.vocs_TableRow{border-top:1px solid var(--vocs-color_tableBorder)}.vocs_TableRow:nth-child(2n){background-color:var(--vocs-color_background2)}.vocs_Button_button{align-items:center;background:var(--vocs-color_background4);border:1px solid var(--vocs-color_border);border-radius:var(--vocs-borderRadius_4);color:var(--vocs-color_text);display:flex;font-size:var(--vocs-fontSize_14);font-weight:var(--vocs-fontWeight_medium);height:36px;padding:0 var(--vocs-space_16);transition:background .1s;white-space:pre;width:-moz-fit-content;width:fit-content}.vocs_Button_button:hover{background:var(--vocs-color_background3)}.vocs_Button_button_accent{background:var(--vocs-color_backgroundAccent);color:var(--vocs-color_backgroundAccentText);border:1px solid var(--vocs-color_borderAccent)}.vocs_Button_button_accent:hover{background:var(--vocs-color_backgroundAccentHover)}.vocs_HomePage{align-items:center;display:flex;flex-direction:column;padding-top:var(--vocs-space_64);text-align:center;gap:var(--vocs-space_32)}.vocs_HomePage_logo{display:flex;justify-content:center;height:48px}.vocs_HomePage_title{font-size:var(--vocs-fontSize_64);font-weight:var(--vocs-fontWeight_semibold);line-height:1em}.vocs_HomePage_tagline{color:var(--vocs-color_text2);font-size:var(--vocs-fontSize_20);font-weight:var(--vocs-fontWeight_medium);line-height:1.5em}.vocs_HomePage_title+.vocs_HomePage_tagline{margin-top:calc(-1 * var(--vocs-space_8))}.vocs_HomePage_description{color:var(--vocs-color_text);font-size:var(--vocs-fontSize_16);font-weight:var(--vocs-fontWeight_regular);line-height:var(--vocs-lineHeight_paragraph)}.vocs_HomePage_tagline+.vocs_HomePage_description{margin-top:calc(-1 * var(--vocs-space_8))}.vocs_HomePage_buttons{display:flex;gap:var(--vocs-space_16)}.vocs_HomePage_tabs{min-width:300px}.vocs_HomePage_tabsList{display:flex;justify-content:center}.vocs_HomePage_tabsContent{color:var(--vocs-color_text2);font-family:var(--vocs-fontFamily_mono)}.vocs_HomePage_packageManager{color:var(--vocs-color_textAccent)}@media screen and (width <= 720px){.vocs_HomePage{padding-top:var(--vocs-space_32)}.vocs_HomePage_logo{height:36px}}.vertical-timeline *{-webkit-box-sizing:border-box;box-sizing:border-box}.vertical-timeline{width:95%;max-width:1170px;margin:0 auto;position:relative;padding:2em 0}.vertical-timeline:after{content:"";display:table;clear:both}.vertical-timeline:before{content:"";position:absolute;top:0;left:18px;height:100%;width:4px;background:var(--line-color)}.vertical-timeline.vertical-timeline--one-column-right:before{right:18px;left:unset}@media only screen and (min-width:1170px){.vertical-timeline.vertical-timeline--two-columns{width:90%}.vertical-timeline.vertical-timeline--two-columns:before{left:50%;margin-left:-2px}}.vertical-timeline-element{position:relative;margin:2em 0}.vertical-timeline-element>div{min-height:1px}.vertical-timeline-element:after{content:"";display:table;clear:both}.vertical-timeline-element:first-child{margin-top:0}.vertical-timeline-element:last-child{margin-bottom:0}@media only screen and (min-width:1170px){.vertical-timeline-element{margin:4em 0}.vertical-timeline-element:first-child{margin-top:0}.vertical-timeline-element:last-child{margin-bottom:0}}.vertical-timeline-element-icon{position:absolute;top:0;left:0;width:40px;height:40px;border-radius:50%;-webkit-box-shadow:0 0 0 4px #fff,inset 0 2px 0 rgba(0,0,0,.08),0 3px 0 4px rgba(0,0,0,.05);box-shadow:0 0 0 4px #fff,inset 0 2px #00000014,0 3px 0 4px #0000000d}.vertical-timeline--one-column-right .vertical-timeline-element-icon{right:0;left:unset}.vertical-timeline-element-icon svg{display:block;width:24px;height:24px;position:relative;left:50%;top:50%;margin-left:-12px;margin-top:-12px}@media only screen and (min-width:1170px){.vertical-timeline--two-columns .vertical-timeline-element-icon{width:60px;height:60px;left:50%;margin-left:-30px}}.vertical-timeline-element-icon{-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden}.vertical-timeline--animate .vertical-timeline-element-icon.is-hidden{visibility:hidden}.vertical-timeline--animate .vertical-timeline-element-icon.bounce-in{visibility:visible;-webkit-animation:cd-bounce-1 .6s;animation:cd-bounce-1 .6s}@-webkit-keyframes cd-bounce-1{0%{opacity:0;-webkit-transform:scale(.5)}60%{opacity:1;-webkit-transform:scale(1.2)}to{-webkit-transform:scale(1)}}@keyframes cd-bounce-1{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}60%{opacity:1;-webkit-transform:scale(1.2);transform:scale(1.2)}to{-webkit-transform:scale(1);transform:scale(1)}}.vertical-timeline-element-content{position:relative;margin-left:60px;background:#fff;border-radius:.25em;padding:1em;-webkit-box-shadow:0 3px 0 #ddd;box-shadow:0 3px #ddd}.vertical-timeline--one-column-right .vertical-timeline-element-content{margin-right:60px;margin-left:unset}.vertical-timeline-element--no-children .vertical-timeline-element-content{background:0 0;-webkit-box-shadow:none;box-shadow:none}.vertical-timeline-element-content:after{content:"";display:table;clear:both}.vertical-timeline-element-content h2{color:#303e49}.vertical-timeline-element-content .vertical-timeline-element-date,.vertical-timeline-element-content p{font-size:13px;font-size:.8125rem;font-weight:500}.vertical-timeline-element-content .vertical-timeline-element-date{display:inline-block}.vertical-timeline-element-content p{margin:1em 0 0;line-height:1.6}.vertical-timeline-element-title,.vertical-timeline-element-subtitle{margin:0}.vertical-timeline-element-content .vertical-timeline-element-date{float:left;padding:.8em 0;opacity:.7}.vertical-timeline-element-content-arrow{content:"";position:absolute;top:16px;right:100%;height:0;width:0;border:7px solid transparent;border-right:7px solid #fff}.vertical-timeline--one-column-right .vertical-timeline-element-content-arrow{content:"";position:absolute;top:16px;right:unset;left:100%;height:0;width:0;border:7px solid transparent;border-left:7px solid #fff}.vertical-timeline--one-column-right .vertical-timeline-element-content:before{left:100%;border-left:7px solid #fff;border-right:unset}.vertical-timeline-element--no-children .vertical-timeline-element-content:before{display:none}.vertical-timeline-element--no-children .vertical-timeline-element-content-arrow{display:none}@media only screen and (min-width:768px){.vertical-timeline-element-content h2{font-size:20px;font-size:1.25rem}.vertical-timeline-element-content p{font-size:16px;font-size:1rem}.vertical-timeline-element-content .vertical-timeline-element-date{font-size:14px;font-size:.875rem}}@media only screen and (min-width:1170px){.vertical-timeline--two-columns .vertical-timeline-element-content{margin-left:0;padding:1.5em;width:44%}.vertical-timeline--two-columns .vertical-timeline-element-content-arrow{top:24px;left:100%;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.vertical-timeline--two-columns .vertical-timeline-element-content .vertical-timeline-element-date{position:absolute;width:100%;left:124%;top:6px;font-size:16px;font-size:1rem}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content{float:right}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content-arrow,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content-arrow{top:24px;left:auto;right:100%;-webkit-transform:rotate(0);transform:rotate(0)}.vertical-timeline--one-column-right .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content-arrow,.vertical-timeline--one-column-right .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content-arrow{top:24px;left:100%;right:auto;-webkit-transform:rotate(0);transform:rotate(0)}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content .vertical-timeline-element-date,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content .vertical-timeline-element-date{left:auto;right:124%;text-align:right}}.vertical-timeline--animate .vertical-timeline-element-content.is-hidden{visibility:hidden}.vertical-timeline--animate .vertical-timeline-element-content.bounce-in{visibility:visible;-webkit-animation:cd-bounce-2 .6s;animation:cd-bounce-2 .6s}@media only screen and (min-width:1170px){.vertical-timeline--two-columns.vertical-timeline--animate .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content.bounce-in,.vertical-timeline--two-columns.vertical-timeline--animate .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content.bounce-in{-webkit-animation:cd-bounce-2-inverse .6s;animation:cd-bounce-2-inverse .6s}}@media only screen and (max-width:1169px){.vertical-timeline--animate .vertical-timeline-element-content.bounce-in{visibility:visible;-webkit-animation:cd-bounce-2-inverse .6s;animation:cd-bounce-2-inverse .6s}}@-webkit-keyframes cd-bounce-2{0%{opacity:0;-webkit-transform:translateX(-100px)}60%{opacity:1;-webkit-transform:translateX(20px)}to{-webkit-transform:translateX(0)}}@keyframes cd-bounce-2{0%{opacity:0;-webkit-transform:translateX(-100px);transform:translate(-100px)}60%{opacity:1;-webkit-transform:translateX(20px);transform:translate(20px)}to{-webkit-transform:translateX(0);transform:translate(0)}}@-webkit-keyframes cd-bounce-2-inverse{0%{opacity:0;-webkit-transform:translateX(100px)}60%{opacity:1;-webkit-transform:translateX(-20px)}to{-webkit-transform:translateX(0)}}@keyframes cd-bounce-2-inverse{0%{opacity:0;-webkit-transform:translateX(100px);transform:translate(100px)}60%{opacity:1;-webkit-transform:translateX(-20px);transform:translate(-20px)}to{-webkit-transform:translateX(0);transform:translate(0)}} diff --git a/blog/cutonestrand/index.html b/blog/cutonestrand/index.html new file mode 100644 index 0000000..d8ad657 --- /dev/null +++ b/blog/cutonestrand/index.html @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/blog/expdesign/index.html b/blog/expdesign/index.html index 95a06e9..d8ad657 100644 --- a/blog/expdesign/index.html +++ b/blog/expdesign/index.html @@ -12,8 +12,8 @@ - - + +
diff --git a/blog/gsea/index.html b/blog/gsea/index.html index 95a06e9..d8ad657 100644 --- a/blog/gsea/index.html +++ b/blog/gsea/index.html @@ -12,8 +12,8 @@ - - + +
diff --git a/blog/index.html b/blog/index.html index 95a06e9..d8ad657 100644 --- a/blog/index.html +++ b/blog/index.html @@ -12,8 +12,8 @@ - - + +
diff --git a/index.html b/index.html index 95a06e9..d8ad657 100644 --- a/index.html +++ b/index.html @@ -12,8 +12,8 @@ - - + +
diff --git a/projects/germlinevardb/index.html b/projects/germlinevardb/index.html index 95a06e9..d8ad657 100644 --- a/projects/germlinevardb/index.html +++ b/projects/germlinevardb/index.html @@ -12,8 +12,8 @@ - - + +
diff --git a/projects/index.html b/projects/index.html index 95a06e9..d8ad657 100644 --- a/projects/index.html +++ b/projects/index.html @@ -12,8 +12,8 @@ - - + +
diff --git a/projects/somavardb/index.html b/projects/somavardb/index.html index 95a06e9..d8ad657 100644 --- a/projects/somavardb/index.html +++ b/projects/somavardb/index.html @@ -12,8 +12,8 @@ - - + +