├── backend
├── __init__.py
├── requirements.txt
├── prompts
│ ├── socratic_method_ai.json
│ └── ai_travel_agent.json
├── Dockerfile
├── app.py
├── fast_api.py
├── .gitignore
└── README.md
├── .gitignore
├── frontend
├── README.md
├── public
│ ├── favicon.ico
│ └── vercel.svg
├── .gitignore
├── package.json
├── styles
│ ├── globals.css
│ └── Home.module.css
├── Dockerfile
├── pages
│ ├── travel.js
│ └── index.js
├── components
│ └── ChatBox.js
└── package-lock.json
├── docs
├── demo-image-1.png
└── demo-image-2.png
├── docker-compose.yml
└── README.md
/backend/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .venv
2 | .aws-sam
3 | .DS_Store
4 | openai_api_key.txt
5 |
--------------------------------------------------------------------------------
/backend/requirements.txt:
--------------------------------------------------------------------------------
1 | openai
2 | requests
3 |
4 | boto3
5 | fastapi
6 | uvicorn
--------------------------------------------------------------------------------
/frontend/README.md:
--------------------------------------------------------------------------------
1 | This is a starter template for [Learn Next.js](https://nextjs.org/learn).
--------------------------------------------------------------------------------
/docs/demo-image-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chrishart0/open-ai-aws-lambda-starter/HEAD/docs/demo-image-1.png
--------------------------------------------------------------------------------
/docs/demo-image-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chrishart0/open-ai-aws-lambda-starter/HEAD/docs/demo-image-2.png
--------------------------------------------------------------------------------
/frontend/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chrishart0/open-ai-aws-lambda-starter/HEAD/frontend/public/favicon.ico
--------------------------------------------------------------------------------
/backend/prompts/socratic_method_ai.json:
--------------------------------------------------------------------------------
1 | {
2 | "Version": {
3 | "1": {
4 | "Name": "Socratic Method Practice Bot",
5 | "AI Definition": "You will take part in a socratic method style debate",
6 | "AI Initial Message": "Hello! Please start this Socratic debate or ask me for a topic and I can suggest one."
7 | }
8 | }
9 | }
--------------------------------------------------------------------------------
/frontend/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # next.js
12 | /.next/
13 | /out/
14 |
15 | # production
16 | /build
17 |
18 | # misc
19 | .DS_Store
20 |
21 | # debug
22 | npm-debug.log*
23 | yarn-debug.log*
24 | yarn-error.log*
25 |
26 | # local env files
27 | .env.local
28 | .env.development.local
29 | .env.test.local
30 | .env.production.local
31 |
--------------------------------------------------------------------------------
/docker-compose.yml:
--------------------------------------------------------------------------------
1 | version: '3.7'
2 |
3 | services:
4 | fastapi:
5 | image: backend_chat_fastapi
6 | build:
7 | context: ./backend/chat_api
8 | ports:
9 | - "4000:4000"
10 | volumes:
11 | - ./backend:/app
12 |
13 | nextjs: # Name of your Next.js service
14 | image: frontend_nextjs
15 | build:
16 | context: ./frontend
17 | ports:
18 | - "3000:3000"
19 | volumes:
20 | - ./frontend:/usr/src/app # Replace with your actual Next.js directory path relative to this docker-compose file
21 | - /usr/src/app/node_modules
22 |
--------------------------------------------------------------------------------
/frontend/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "private": true,
3 | "scripts": {
4 | "dev": "next dev",
5 | "build": "next build",
6 | "start": "next start"
7 | },
8 | "dependencies": {
9 | "@emotion/react": "^11.11.0",
10 | "@emotion/server": "^11.11.0",
11 | "@emotion/styled": "^11.11.0",
12 | "@fontsource/roboto": "^5.0.2",
13 | "@mui/icons-material": "^5.11.16",
14 | "@mui/material": "^5.13.3",
15 | "axios": "^1.4.0",
16 | "next": "latest",
17 | "papaparse": "^5.4.1",
18 | "react": "18.2.0",
19 | "react-dom": "18.2.0",
20 | "react-markdown": "^8.0.7"
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/frontend/styles/globals.css:
--------------------------------------------------------------------------------
1 | html,
2 | body {
3 | padding: 0;
4 | margin: 0;
5 | font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,
6 | Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
7 | }
8 |
9 | a {
10 | color: inherit;
11 | text-decoration: none;
12 | }
13 |
14 | * {
15 | box-sizing: border-box;
16 | }
17 |
18 | img {
19 | max-width: 100%;
20 | height: auto;
21 | }
22 |
23 | h1,
24 | h2,
25 | p,
26 | ul {
27 | margin: 0;
28 | }
29 |
30 | ul {
31 | padding: 0;
32 | list-style: none;
33 | }
34 |
35 | button {
36 | padding: 0.5rem 1rem;
37 | font-weight: bold;
38 | }
39 |
--------------------------------------------------------------------------------
/frontend/Dockerfile:
--------------------------------------------------------------------------------
1 | # Use an official Node.js runtime as the parent image
2 | FROM node:16
3 |
4 | # Set the working directory inside the container
5 | WORKDIR /usr/src/app
6 |
7 | # Copy package.json and package-lock.json (or yarn.lock if you're using Yarn) into the container
8 | COPY package*.json ./
9 |
10 | # Install application dependencies inside the container
11 | RUN npm install
12 |
13 | # Copy the rest of the application source code from your host to your image filesystem.
14 | COPY . .
15 |
16 | # Specify the port the app runs on for documentation purposes
17 | EXPOSE 3000
18 |
19 | # Command to run your application
20 | CMD [ "npm", "run", "dev" ]
21 |
--------------------------------------------------------------------------------
/backend/Dockerfile:
--------------------------------------------------------------------------------
1 | # Use an official lightweight Python image.
2 | # We chose a slim-buster image to keep the image size small, but you can choose another if needed.
3 | FROM python:3.10-slim-buster
4 |
5 | # Set the working directory in the container
6 | WORKDIR /app
7 |
8 | # Copy the dependencies file to the working directory
9 | COPY requirements.txt .
10 |
11 | # Install any dependencies
12 | RUN pip install --no-cache-dir -r requirements.txt
13 |
14 | # Copy the content of the local src directory to the working directory
15 | COPY . .
16 |
17 | # Specify the command to run on container start, reload API when code change detected
18 | CMD ["uvicorn", "fast_api:app", "--host", "0.0.0.0", "--port", "4000", "--reload"]
19 |
20 |
--------------------------------------------------------------------------------
/frontend/public/vercel.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/backend/prompts/ai_travel_agent.json:
--------------------------------------------------------------------------------
1 | {
2 | "Version": {
3 | "1": {
4 | "Name": "AI Travel Agent",
5 | "AI Definition": "You are travel agent with years of experience. \n You are a posh English person who is slightly pretentious but still friendly. \n You are speaking with me, a client who has come to you with help for planning out my trip. Hello! How can I assist you with planning your trip? Let me know where you are going, how long you will be there, the sorts of things you are interested in doing, and anything else which will help me write your itinerary.You should ask me as many questions as you need and help me to build out a trip itinerary and answer any questions I have. \n Keep resounse short and easy to read, take advantage of bullet points and markdown to make your responses easy to read. \n If you are wiring the itinerary, ensure it is written in markdown, write a title for the itinerary and ensure its a markdown # h1",
6 | "AI Initial Message": "Hello! How can I assist you with planning your trip? Let me know where you are going, how long you will be there, the sorts of things you are interested in doing, and anything else which will help me write your itinerary."
7 | }
8 | }
9 | }
--------------------------------------------------------------------------------
/frontend/styles/Home.module.css:
--------------------------------------------------------------------------------
1 | .container {
2 | min-height: 100vh;
3 | padding: 0 0.5rem;
4 | display: flex;
5 | flex-direction: column;
6 | justify-content: center;
7 | align-items: center;
8 | }
9 |
10 | .title a {
11 | color: #0070f3;
12 | text-decoration: none;
13 | }
14 |
15 | .title a:hover,
16 | .title a:focus,
17 | .title a:active {
18 | text-decoration: underline;
19 | }
20 |
21 | .title {
22 | margin: 0 0 1rem;
23 | line-height: 1.15;
24 | font-size: 3.6rem;
25 | }
26 |
27 | .title {
28 | text-align: center;
29 | }
30 |
31 | .title,
32 | .description {
33 | text-align: center;
34 | }
35 |
36 |
37 | .description {
38 | line-height: 1.5;
39 | font-size: 1.5rem;
40 | }
41 |
42 | .grid {
43 | display: flex;
44 | align-items: center;
45 | justify-content: center;
46 | flex-wrap: wrap;
47 |
48 | max-width: 800px;
49 | margin-top: 3rem;
50 | }
51 |
52 | .card {
53 | margin: 1rem;
54 | flex-basis: 45%;
55 | padding: 1.5rem;
56 | text-align: left;
57 | color: inherit;
58 | text-decoration: none;
59 | border: 1px solid #eaeaea;
60 | border-radius: 10px;
61 | transition: color 0.15s ease, border-color 0.15s ease;
62 | }
63 |
64 | .card:hover,
65 | .card:focus,
66 | .card:active {
67 | color: #0070f3;
68 | border-color: #0070f3;
69 | }
70 |
71 | .card h3 {
72 | margin: 0 0 1rem 0;
73 | font-size: 1.5rem;
74 | }
75 |
76 | .card p {
77 | margin: 0;
78 | font-size: 1.25rem;
79 | line-height: 1.5;
80 | }
81 |
82 | .logo {
83 | height: 1em;
84 | }
85 |
86 | @media (max-width: 600px) {
87 | .grid {
88 | width: 100%;
89 | flex-direction: column;
90 | }
91 | }
92 |
--------------------------------------------------------------------------------
/frontend/pages/travel.js:
--------------------------------------------------------------------------------
1 | import { useState, useEffect } from 'react';
2 |
3 | import Head from 'next/head';
4 | import styles from '../styles/Home.module.css';
5 | import Typography from '@mui/material/Typography';
6 |
7 | import axios from 'axios';
8 |
9 |
10 | // Components
11 | import ChatBox from '../components/ChatBox';
12 |
13 | // const url = https://77rhnjbnf3.execute-api.us-east-1.amazonaws.com/prod/
14 | const baseURL = "http://localhost:4000";
15 |
16 | export default function Home() {
17 | const [prompts, setPrompts] = useState([]);
18 |
19 | // const [lambdaResposne, setLambdaResposne] = useState([]);
20 |
21 | // Load data on component mount
22 | useEffect(() => {
23 | getPrompts()
24 | }, []);
25 |
26 | // console.log(lambdaResposne)
27 |
28 | const getPrompts = async () => {
29 | // setPrompts();
30 |
31 |
32 | // setLoading(true);
33 | console.log("Getting prompts")
34 |
35 | try {
36 | const response = await axios.get(`${baseURL}/prompts`, {
37 | headers: {
38 | 'Content-Type': 'application/json'
39 | }
40 | });
41 | console.log(response)
42 | setPrompts(response.data.prompts);
43 | // setLoading(false);
44 | } catch (err) {
45 | // setError(err.message);
46 | // setLoading(false);
47 | console.error(err);
48 | }
49 | };
50 |
51 | const DisplayPrompts = () => {
52 | return (
53 | prompts.map((prompt) => {
54 | console.log("prompt:", prompt)
55 | return (
56 |
57 | Prompt {prompt}
58 |
59 | )
60 | })
61 | )
62 |
63 | }
64 |
65 | return (
66 |
67 |
68 |
Your AI Travel Agent
69 |
70 |
71 |
72 |
73 |
80 | Your AI Travel Agent!
81 |
82 |
83 |
84 | Choose a prompt
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 | )
94 | }
95 |
--------------------------------------------------------------------------------
/backend/app.py:
--------------------------------------------------------------------------------
1 | import logging
2 | import logging.config
3 | import os
4 | from langchain.chat_models import ChatOpenAI
5 | from langchain.prompts import (
6 | ChatPromptTemplate,
7 | MessagesPlaceholder,
8 | SystemMessagePromptTemplate,
9 | HumanMessagePromptTemplate,
10 | )
11 | from langchain.schema import (
12 | HumanMessage,
13 | SystemMessage
14 | )
15 | from langchain.chains import LLMChain
16 |
17 |
18 | # Configure logging
19 | LOGGING_CONFIG = {
20 | "version": 1,
21 | "disable_existing_loggers": False,
22 | "handlers": {
23 | "console": {
24 | "class": "logging.StreamHandler",
25 | },
26 | },
27 | "root": {
28 | "handlers": ["console"],
29 | "level": "INFO",
30 | },
31 | "loggers": {
32 | "uvicorn.error": {
33 | "level": "INFO",
34 | },
35 | "uvicorn.access": {
36 | "level": "INFO",
37 | "handlers": ["console"],
38 | },
39 | },
40 | }
41 |
42 | logging.config.dictConfig(LOGGING_CONFIG)
43 | logger = logging.getLogger("uvicorn.info")
44 |
45 | # Export logger as a function
46 | def get_logger():
47 | """
48 | :return: Logger object
49 | Example of how to import
50 | from app import get_logger
51 | logger = get_logger()
52 | """
53 | return logger
54 |
55 |
56 | logger.info("Initializing the things which need that to be prepared")
57 |
58 | def get_openai_api_key():
59 | with open('openai_api_key.txt', 'r') as file:
60 | api_key = file.read().strip()
61 | return api_key
62 |
63 |
64 | def call_llm(messages, api_key):
65 | """
66 | :param message: Message to send to OpenAI API
67 | :param api_key: OpenAI API key
68 | :return: Response from OpenAI API
69 |
70 | This function calls the OpenAI API with the provided message and returns the response.
71 | """
72 |
73 | # Prompt
74 | prompt = ChatPromptTemplate(
75 | messages=[
76 | SystemMessagePromptTemplate.from_template(
77 | "You are a nice chatbot having a conversation with a human."
78 | ),
79 | # The `variable_name` here is what must align with memory
80 | MessagesPlaceholder(variable_name="chat_history"),
81 | HumanMessagePromptTemplate.from_template("{question}")
82 | ]
83 | )
84 |
85 | try:
86 | # Set OpenAI API key
87 | os.environ["OPENAI_API_KEY"] = api_key
88 |
89 | logger.info("Calling OpenAI API with Langchain")
90 | chat = ChatOpenAI(model_name="gpt-3.5-turbo")
91 |
92 | # Convert messages to schema for Langchain
93 | chatHistory = []
94 | for messages in messages:
95 | if messages['role'] == 'user':
96 | chatHistory.append(HumanMessage(content=messages['content']))
97 | elif messages['role'] == 'assistant':
98 | chatHistory.append(SystemMessage(content=messages['content']))
99 |
100 | # Call OpenAI API with provided messages and model
101 | message = chat(chatHistory).content
102 | logger.info("Message: %s", message)
103 |
104 |
105 | return {'role': 'assistant', 'content':message}
106 |
107 | except Exception as e:
108 | # Log error if any exception occurs
109 | logger.error(e)
110 | logger.error(f"Error in calling OpenAI API: {str(e)}")
111 | # Propagate the exception further
112 | raise e
113 |
--------------------------------------------------------------------------------
/backend/fast_api.py:
--------------------------------------------------------------------------------
1 | import os
2 | import json
3 | from fastapi import FastAPI, HTTPException, Request
4 | from fastapi.middleware.cors import CORSMiddleware
5 | from fastapi.exceptions import RequestValidationError
6 | from fastapi.responses import JSONResponse, PlainTextResponse
7 | from typing import List
8 | from pydantic import BaseModel
9 |
10 | # Import necessary functions from the app module
11 | from app import get_openai_api_key, call_llm, get_logger
12 |
13 | # Initialize a logger
14 | logger = get_logger()
15 |
16 | # Instantiate FastAPI app
17 | logger.info("Initializing FastAPI application")
18 | app = FastAPI()
19 |
20 | # Add CORS middleware for API to allow requests from specific origins
21 | app.add_middleware(
22 | CORSMiddleware,
23 | allow_origins=[
24 | "http://localhost:3000",
25 | "http://localhost:3001",
26 | "http://mydomain.com",
27 | # Add other origins you want to allow
28 | ],
29 | allow_credentials=True,
30 | allow_methods=["*"],
31 | allow_headers=["*"],
32 | )
33 |
34 | # Define Message and ChatPayload models for API request validation
35 | class Message(BaseModel):
36 | role: str
37 | content: str
38 |
39 | class ChatPayload(BaseModel):
40 | message: List[Message]
41 |
42 | # Exception handler for HTTP errors with enhanced logging
43 | @app.exception_handler(HTTPException)
44 | async def custom_http_exception_handler(request: Request, exc: HTTPException):
45 | logger.error(f"Error occurred: {exc.detail}")
46 | logger.error(f"Request body: {await request.body()}")
47 | return JSONResponse(content={"detail": exc.detail}, status_code=exc.status_code)
48 |
49 | # Exception handler for validation errors
50 | @app.exception_handler(RequestValidationError)
51 | async def validation_exception_handler(request: Request, exc: RequestValidationError):
52 | logger.error(f"Validation Error occurred: {exc.errors()}")
53 | logger.error(f"Request body: {await request.body()}")
54 | return PlainTextResponse(str(exc), status_code=400)
55 |
56 | # Define chat endpoint to interact with the OpenAI API
57 | @app.post("/chat")
58 | async def post_chat_body(payload: ChatPayload):
59 |
60 | # Get OpenAI API key
61 | logger.info("Getting OpenAI API key")
62 | open_ai_api_key = get_openai_api_key()
63 |
64 | logger.info(payload)
65 |
66 | # Extract chat history from payload
67 | chat_history = [message.dict() for message in payload.message]
68 |
69 | logger.info("Chat Endpoint called")
70 | logger.info("Chat History: %s", chat_history)
71 |
72 | # Call OpenAI API and get responsexz
73 | latest_response = call_llm(chat_history, open_ai_api_key)
74 | chat_history.append(latest_response)
75 |
76 | # Return the response
77 | return {
78 | "message": chat_history,
79 | }
80 |
81 | @app.get("/prompts")
82 | async def get_prompts():
83 |
84 | # with open('openai_api_key.txt', 'r') as file:
85 | # api_key = file.read().strip()
86 |
87 | prompts_list = os.listdir("prompts")
88 |
89 | # Return the response
90 | return {
91 | "prompts": prompts_list,
92 | }
93 |
94 |
95 | @app.get("/prompts/prompt")
96 | async def get_prompt(prompt_name):
97 |
98 | with open(f'prompts/{prompt_name}', 'r') as file:
99 | prompt = json.load( file)
100 |
101 | return {
102 | "prompt": prompt
103 | }
104 |
105 | # Main execution block: Starts the FastAPI app using Uvicorn running locally
106 | if __name__ == "__main__":
107 | import uvicorn
108 |
109 | # Run the FastAPI app on the specified host and port
110 | uvicorn.run(app, host="0.0.0.0", port=4000)
--------------------------------------------------------------------------------
/frontend/pages/index.js:
--------------------------------------------------------------------------------
1 | import { useState, useEffect } from 'react';
2 |
3 | import Head from 'next/head';
4 | import styles from '../styles/Home.module.css';
5 | import Typography from '@mui/material/Typography';
6 | import Button from '@mui/material/Button';
7 |
8 | import axios from 'axios';
9 |
10 |
11 | // Components
12 | import ChatBox from '../components/ChatBox';
13 |
14 | const baseURL = "http://localhost:4000";
15 |
16 | export default function Home() {
17 | const [prompts, setPrompts] = useState([]);
18 | const [currentPromptDetails, setCurrentPromptDetails] = useState([]);
19 |
20 | // Load data on component mount
21 | useEffect(() => {
22 | getPrompts()
23 | setPromptDetails('ai_travel_agent.json')
24 | }, []);
25 |
26 |
27 | const getPrompts = async () => {
28 | // setLoading(true);
29 | console.log("Getting prompts")
30 |
31 | try {
32 | const response = await axios.get(`${baseURL}/prompts`, {
33 | headers: {
34 | 'Content-Type': 'application/json'
35 | }
36 | });
37 | console.log(response)
38 | setPrompts(response.data.prompts);
39 | // setLoading(false);
40 | } catch (err) {
41 | // setError(err.message);
42 | // setLoading(false);
43 | console.error(err);
44 | }
45 | };
46 |
47 | const setPromptDetails = async (prompt) => {
48 | // setLoading(true);
49 | console.log(`Getting ${prompt} prompts`)
50 |
51 | try {
52 | const response = await axios.get(`${baseURL}/prompts/prompt?prompt_name=${prompt}`, {
53 | headers: {
54 | 'Content-Type': 'application/json'
55 | }
56 | });
57 | console.log(response)
58 | setCurrentPromptDetails(response.data.prompt);
59 | // setLoading(false);
60 | } catch (err) {
61 | // setError(err.message);
62 | // setLoading(false);
63 | console.error(err);
64 | }
65 | };
66 |
67 | const DisplayPrompts = () => {
68 | return (
69 | prompts.map((prompt) => {
70 | console.log("prompt:", prompt)
71 | return (
72 |
75 | )
76 | })
77 | )
78 | }
79 |
80 | const DisplayCurrentPromptDetails = () => {
81 | if (currentPromptDetails['Version']) {
82 | let promptDetails = currentPromptDetails['Version'][1]
83 | console.log("promptDetails")
84 | console.log(promptDetails)
85 |
86 | return (
87 | <>
88 |
89 | Current Prompt:
90 |
91 |
92 | Name: {promptDetails['Name']}
93 |
94 |
95 | AI Definition: {promptDetails['AI Definition']}
96 |
97 |
98 | AI Initial Message: {promptDetails['AI Initial Message']}
99 |
100 | >
101 | )
102 | }
103 | }
104 |
105 | const DisplayChat = () => {
106 | if (currentPromptDetails['Version'] && currentPromptDetails['Version']) {
107 | let promptDetails = currentPromptDetails['Version'][1]
108 | return(
109 |
110 | )
111 | }
112 | }
113 |
114 | return (
115 |
116 |
117 |
AI Chat
118 |
119 |
120 |
121 |
122 |
123 |
124 | Choose a prompt
125 |
126 |
127 |
128 |
129 |
130 |
131 |
138 | AI Chat
139 |
140 |
141 |
142 |
143 |
144 |
145 | )
146 | }
147 |
--------------------------------------------------------------------------------
/backend/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | # Created by https://www.gitignore.io/api/osx,linux,python,windows,pycharm,visualstudiocode
3 |
4 | ### Linux ###
5 | *~
6 |
7 | # temporary files which can be created if a process still has a handle open of a deleted file
8 | .fuse_hidden*
9 |
10 | # KDE directory preferences
11 | .directory
12 |
13 | # Linux trash folder which might appear on any partition or disk
14 | .Trash-*
15 |
16 | # .nfs files are created when an open file is removed but is still being accessed
17 | .nfs*
18 |
19 | ### OSX ###
20 | *.DS_Store
21 | .AppleDouble
22 | .LSOverride
23 |
24 | # Icon must end with two \r
25 | Icon
26 |
27 | # Thumbnails
28 | ._*
29 |
30 | # Files that might appear in the root of a volume
31 | .DocumentRevisions-V100
32 | .fseventsd
33 | .Spotlight-V100
34 | .TemporaryItems
35 | .Trashes
36 | .VolumeIcon.icns
37 | .com.apple.timemachine.donotpresent
38 |
39 | # Directories potentially created on remote AFP share
40 | .AppleDB
41 | .AppleDesktop
42 | Network Trash Folder
43 | Temporary Items
44 | .apdisk
45 |
46 | ### PyCharm ###
47 | # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
48 | # Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
49 |
50 | # User-specific stuff:
51 | .idea/**/workspace.xml
52 | .idea/**/tasks.xml
53 | .idea/dictionaries
54 |
55 | # Sensitive or high-churn files:
56 | .idea/**/dataSources/
57 | .idea/**/dataSources.ids
58 | .idea/**/dataSources.xml
59 | .idea/**/dataSources.local.xml
60 | .idea/**/sqlDataSources.xml
61 | .idea/**/dynamic.xml
62 | .idea/**/uiDesigner.xml
63 |
64 | # Gradle:
65 | .idea/**/gradle.xml
66 | .idea/**/libraries
67 |
68 | # CMake
69 | cmake-build-debug/
70 |
71 | # Mongo Explorer plugin:
72 | .idea/**/mongoSettings.xml
73 |
74 | ## File-based project format:
75 | *.iws
76 |
77 | ## Plugin-specific files:
78 |
79 | # IntelliJ
80 | /out/
81 |
82 | # mpeltonen/sbt-idea plugin
83 | .idea_modules/
84 |
85 | # JIRA plugin
86 | atlassian-ide-plugin.xml
87 |
88 | # Cursive Clojure plugin
89 | .idea/replstate.xml
90 |
91 | # Ruby plugin and RubyMine
92 | /.rakeTasks
93 |
94 | # Crashlytics plugin (for Android Studio and IntelliJ)
95 | com_crashlytics_export_strings.xml
96 | crashlytics.properties
97 | crashlytics-build.properties
98 | fabric.properties
99 |
100 | ### PyCharm Patch ###
101 | # Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
102 |
103 | # *.iml
104 | # modules.xml
105 | # .idea/misc.xml
106 | # *.ipr
107 |
108 | # Sonarlint plugin
109 | .idea/sonarlint
110 |
111 | ### Python ###
112 | # Byte-compiled / optimized / DLL files
113 | __pycache__/
114 | *.py[cod]
115 | *$py.class
116 |
117 | # C extensions
118 | *.so
119 |
120 | # Distribution / packaging
121 | .Python
122 | build/
123 | develop-eggs/
124 | dist/
125 | downloads/
126 | eggs/
127 | .eggs/
128 | lib/
129 | lib64/
130 | parts/
131 | sdist/
132 | var/
133 | wheels/
134 | *.egg-info/
135 | .installed.cfg
136 | *.egg
137 |
138 | # PyInstaller
139 | # Usually these files are written by a python script from a template
140 | # before PyInstaller builds the exe, so as to inject date/other infos into it.
141 | *.manifest
142 | *.spec
143 |
144 | # Installer logs
145 | pip-log.txt
146 | pip-delete-this-directory.txt
147 |
148 | # Unit test / coverage reports
149 | htmlcov/
150 | .tox/
151 | .coverage
152 | .coverage.*
153 | .cache
154 | .pytest_cache/
155 | nosetests.xml
156 | coverage.xml
157 | *.cover
158 | .hypothesis/
159 |
160 | # Translations
161 | *.mo
162 | *.pot
163 |
164 | # Flask stuff:
165 | instance/
166 | .webassets-cache
167 |
168 | # Scrapy stuff:
169 | .scrapy
170 |
171 | # Sphinx documentation
172 | docs/_build/
173 |
174 | # PyBuilder
175 | target/
176 |
177 | # Jupyter Notebook
178 | .ipynb_checkpoints
179 |
180 | # pyenv
181 | .python-version
182 |
183 | # celery beat schedule file
184 | celerybeat-schedule.*
185 |
186 | # SageMath parsed files
187 | *.sage.py
188 |
189 | # Environments
190 | .env
191 | .venv
192 | env/
193 | venv/
194 | ENV/
195 | env.bak/
196 | venv.bak/
197 |
198 | # Spyder project settings
199 | .spyderproject
200 | .spyproject
201 |
202 | # Rope project settings
203 | .ropeproject
204 |
205 | # mkdocs documentation
206 | /site
207 |
208 | # mypy
209 | .mypy_cache/
210 |
211 | ### VisualStudioCode ###
212 | .vscode/*
213 | !.vscode/settings.json
214 | !.vscode/tasks.json
215 | !.vscode/launch.json
216 | !.vscode/extensions.json
217 | .history
218 |
219 | ### Windows ###
220 | # Windows thumbnail cache files
221 | Thumbs.db
222 | ehthumbs.db
223 | ehthumbs_vista.db
224 |
225 | # Folder config file
226 | Desktop.ini
227 |
228 | # Recycle Bin used on file shares
229 | $RECYCLE.BIN/
230 |
231 | # Windows Installer files
232 | *.cab
233 | *.msi
234 | *.msm
235 | *.msp
236 |
237 | # Windows shortcuts
238 | *.lnk
239 |
240 | # Build folder
241 |
242 | */build/*
243 |
244 | # End of https://www.gitignore.io/api/osx,linux,python,windows,pycharm,visualstudiocode
--------------------------------------------------------------------------------
/frontend/components/ChatBox.js:
--------------------------------------------------------------------------------
1 | import React, { useState } from "react";
2 | import {
3 | Button,
4 | TextField,
5 | Box,
6 | Paper,
7 | Typography,
8 | Alert,
9 | CircularProgress,
10 | Avatar,
11 | Grid,
12 | Divider,
13 | } from "@mui/material";
14 | import axios from "axios";
15 | import AccountCircleIcon from '@mui/icons-material/AccountCircle';
16 | import AssistantIcon from '@mui/icons-material/Assistant';
17 | import ReactMarkdown from 'react-markdown';
18 |
19 | const baseURL = "http://localhost:4000";
20 |
21 | const ChatBox = (aiDefinition, aiInitialMessage) => {
22 |
23 | const initialMessages = [
24 | {
25 | role: "system",
26 | content: aiDefinition['aiDefinition'], //ToDo: No idea why I need to access the string like this. Why can't I just look into aiInitialMessage, why do I need to go 1 level in?
27 | },
28 | {
29 | role: "assistant",
30 | content: aiDefinition['aiInitialMessage'],
31 | },
32 | ];
33 |
34 |
35 | const [message, setMessage] = useState("");
36 | const [chatHistory, setChatHistory] = useState(initialMessages);
37 | const [error, setError] = useState("");
38 | const [loading, setLoading] = useState(false);
39 |
40 | const sendMessage = async () => {
41 | const userMessage = { role: "user", content: message };
42 | setChatHistory([...chatHistory, userMessage]);
43 |
44 | const body = {
45 | message: [...chatHistory, userMessage],
46 | };
47 |
48 | setMessage("");
49 | setLoading(true);
50 |
51 | try {
52 | const response = await axios.post(`${baseURL}/chat`, body, {
53 | headers: {
54 | 'Content-Type': 'application/json'
55 | }
56 | });
57 | setChatHistory(response.data.message);
58 | setLoading(false);
59 | } catch (err) {
60 | setError(err.message);
61 | setLoading(false);
62 | console.error(err);
63 | }
64 | };
65 |
66 | const isMarkdown = (text) => {
67 | return text.startsWith('# ') || text.startsWith('## ') || text.startsWith('### ');
68 | }
69 |
70 | const handleSendMessage = () => {
71 | if (message.trim() !== "") {
72 | sendMessage();
73 | }
74 | };
75 |
76 | const handleKeyDown = (e) => {
77 | if (e.key === 'Enter' && !e.shiftKey) {
78 | e.preventDefault();
79 | if (message.trim() !== "") {
80 | sendMessage();
81 | }
82 | }
83 | };
84 |
85 |
86 | return (
87 |
96 | {error && (
97 |
98 | {error}
99 |
100 | )}
101 |
111 | {chatHistory
112 | .filter((chat) => chat.role !== "system")
113 | .map((chat, i) => (
114 |
115 |
122 |
123 |
124 |
125 | {chat.role === "user" ? : }
126 |
127 |
128 |
129 |
130 | {chat.role}: {chat.role === "assistant" ? {chat.content} : chat.content}
131 |
132 |
133 |
134 |
135 |
136 |
137 | ))}
138 | {loading && }
139 |
140 |
149 | setMessage(e.target.value)}
154 | inputProps={{
155 | onKeyDown: handleKeyDown
156 | }}
157 | />
158 |
166 |
167 |
168 | );
169 | };
170 |
171 | export default ChatBox;
172 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # AWS Serverless Generative AI Quick Start Guide
2 | In this guide we will provide a relatively simple example of how to host a generative AI application on AWS using the OpenAI API. I pulled most of this UI code from my other side project: [MyChefAI.com](MyChefAI.com), which is an AI recipe writer.
3 |
4 | There are two main pieces to this repo, a frontend and a backend. The frontend uses NextJS, the backend uses FastAPI and Langchain. The Lambda utilizes the OpenAI API.
5 |
6 | NOTE: This repo is a work in progress. Right now it is only designed to be run locally, there is no IaC to deploy this anywhere.
7 |
8 | **Features:**
9 | * OpenAI API key stored locally
10 | * Chat History for the current conversation maintained in UI
11 | * UI will render markdown for better looking user interface
12 | * Chat Prompt instructed to return travel itinerary in markdown
13 |
14 | **ToDo:**
15 | * Store chate history in a DB to be retrived later
16 | * Allow user to create new prompts and store these in a DB
17 | * Allow user to upload a file, generate embeddings, and chat with it (RAG)
18 |
19 | ## Overview of the demo application
20 | The application is an AI Travel agent who will attempt to write a trip itinerary for you. Once the LLM has gotten enough info, it will attempt to write the itinerary in markdown. The UI will render this markdown in the chat window into a nice looking format.
21 |
22 | Here is how it looks:
23 | 
24 | 
25 |
26 |
27 | # Start with Docker-Compose
28 | The easiest way to spin up this application is with docker compose. Just run the below command and docker will take care of the rest. Just make sure you have docker and docker-compose installed and running.
29 |
30 | ## 1) Prepare the Key
31 | First, preparethe OpenAPI key. Create a file in the `backend` directory called `openai_api_key.txt`. This file is added in the .gitignore so it will not be commited if you clone this repo.
32 |
33 | ## 2) Start the Containers
34 | Startup the frontend and backend containers. Docker Compose will automaticlly build these container on your system the first time you run this command.
35 | ```
36 | docker-compose up
37 | ```
38 |
39 | The application will now be availbe at
40 | You can also access the OpenAPI spec at
41 |
42 | # Running the Application without docker-compose
43 |
44 | ## Backend - Fast API, Langchain, OpenAI
45 |
46 | ### 1) Prepare the OpenAPI key
47 | First, preparethe OpenAPI key. Create a file in the `backend` directory called `openai_api_key.txt`. This file is added in the .gitignore so it will not be commited if you clone this repo.
48 |
49 |
50 | ### 2) Statup the API
51 | There are two ways to run the backend. if you'd like to run FastAPI without docker then follow these steps.
52 |
53 | Install prereqs
54 | ```
55 | python3 -m venv .venv
56 | source .venv/bin/activate
57 | pip install -r backend/requirements.txt
58 | ```
59 |
60 | Run the python script which starts the API, as shown below.
61 | ```
62 | python backend/chat_api/fast_api.py
63 | ```
64 |
65 | Startup te API with SAM to mock API Gateway and lambda locally
66 |
67 | ```
68 | # NOTE: Use port 4000 because the local UI runs on port 3000
69 | sam build && sam local start-api --port 4000
70 | ```
71 |
72 | ## Frontend - NextJS
73 | The frontend uses NextJS.
74 |
75 | *NOTE:* I have not yet written any deployment mechanism for the frontend, for now it only works on the local machine
76 |
77 | ### Prereqs
78 | Ensure you have nodejs and npm installed
79 |
80 | ## Setup Steps
81 | Leave your terminal with the backend up and running, open up a new terminal in the root of the repo to run the frontend
82 |
83 | Install the needed deps for the frontend to run
84 | ```
85 | cd frontend
86 | npm install
87 | ```
88 |
89 | ## Run the frontend
90 | ```
91 | npm run dev
92 | ```
93 |
94 | You can now open the frontend at
95 |
96 | # Now time to change up the prompt!
97 |
98 | The initial prompt is maintained here in the ChatBot component of the frontend: [frontend/components/ChatBox.js](frontend/components/ChatBox.js) in the `initialMessages` variable. Change up the prompt however you wish. Maybe tell it to speak with a different accent, or tell the LLM it is a travel agent for Vienna, Virginia instead of Vienna, Austria.
99 |
100 | There is no need to reload or rebuild. Simple make your alteration to the prompt, save the file, and you should see the localhost:3000 page will have refreshed, ready for you to start a new chat.
101 |
102 | # Handling In-Context data (WIP)
103 | Let's give the model access to data
104 |
105 | Quote from OpenAI:
106 |
107 | > Why search is better than fine-tuning
108 | GPT can learn knowledge in two ways:
109 | > 1) Via model weights (i.e., fine-tune the model on a training set)
110 | > 2) Via model inputs (i.e., insert the knowledge into an input message)
111 | Although fine-tuning can feel like the more natural option—training on data is how GPT learned all of its other knowledge, after all—we generally do not recommend it as a way to teach the model knowledge. Fine-tuning is better suited to teaching specialized tasks or styles, and is less reliable for factual recall.
112 |
113 | Source: https://github.com/openai/openai-cookbook/blob/main/examples/Question_answering_using_embeddings.ipynb
114 |
115 |
116 | ## Need some help or have an idea for an improvement?
117 | Please feel free to ask questions or make PRs.
118 |
--------------------------------------------------------------------------------
/backend/README.md:
--------------------------------------------------------------------------------
1 | # backend
2 |
3 | This project contains source code and supporting files for a serverless application that you can deploy with the SAM CLI. It includes the following files and folders.
4 |
5 | - chat_api - Code for the application's Lambda function.
6 | - events - Invocation events that you can use to invoke the function.
7 | - tests - Unit tests for the application code.
8 | - template.yaml - A template that defines the application's AWS resources.
9 |
10 | The application uses several AWS resources, including Lambda functions and an API Gateway API. These resources are defined in the `template.yaml` file in this project. You can update the template to add AWS resources through the same deployment process that updates your application code.
11 |
12 | If you prefer to use an integrated development environment (IDE) to build and test your application, you can use the AWS Toolkit.
13 | The AWS Toolkit is an open source plug-in for popular IDEs that uses the SAM CLI to build and deploy serverless applications on AWS. The AWS Toolkit also adds a simplified step-through debugging experience for Lambda function code. See the following links to get started.
14 |
15 | * [CLion](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html)
16 | * [GoLand](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html)
17 | * [IntelliJ](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html)
18 | * [WebStorm](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html)
19 | * [Rider](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html)
20 | * [PhpStorm](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html)
21 | * [PyCharm](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html)
22 | * [RubyMine](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html)
23 | * [DataGrip](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html)
24 | * [VS Code](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/welcome.html)
25 | * [Visual Studio](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/welcome.html)
26 |
27 | ## Deploy the sample application
28 |
29 | The Serverless Application Model Command Line Interface (SAM CLI) is an extension of the AWS CLI that adds functionality for building and testing Lambda applications. It uses Docker to run your functions in an Amazon Linux environment that matches Lambda. It can also emulate your application's build environment and API.
30 |
31 | To use the SAM CLI, you need the following tools.
32 |
33 | * SAM CLI - [Install the SAM CLI](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-install.html)
34 | * [Python 3 installed](https://www.python.org/downloads/)
35 | * Docker - [Install Docker community edition](https://hub.docker.com/search/?type=edition&offering=community)
36 |
37 | To build and deploy your application for the first time, run the following in your shell:
38 |
39 | ```bash
40 | sam build --use-container
41 | sam deploy --guided
42 | ```
43 |
44 | The first command will build the source of your application. The second command will package and deploy your application to AWS, with a series of prompts:
45 |
46 | * **Stack Name**: The name of the stack to deploy to CloudFormation. This should be unique to your account and region, and a good starting point would be something matching your project name.
47 | * **AWS Region**: The AWS region you want to deploy your app to.
48 | * **Confirm changes before deploy**: If set to yes, any change sets will be shown to you before execution for manual review. If set to no, the AWS SAM CLI will automatically deploy application changes.
49 | * **Allow SAM CLI IAM role creation**: Many AWS SAM templates, including this example, create AWS IAM roles required for the AWS Lambda function(s) included to access AWS services. By default, these are scoped down to minimum required permissions. To deploy an AWS CloudFormation stack which creates or modifies IAM roles, the `CAPABILITY_IAM` value for `capabilities` must be provided. If permission isn't provided through this prompt, to deploy this example you must explicitly pass `--capabilities CAPABILITY_IAM` to the `sam deploy` command.
50 | * **Save arguments to samconfig.toml**: If set to yes, your choices will be saved to a configuration file inside the project, so that in the future you can just re-run `sam deploy` without parameters to deploy changes to your application.
51 |
52 | You can find your API Gateway Endpoint URL in the output values displayed after deployment.
53 |
54 | ## Use the SAM CLI to build and test locally
55 |
56 | Build your application with the `sam build --use-container` command.
57 |
58 | ```bash
59 | backend$ sam build --use-container
60 | ```
61 |
62 | The SAM CLI installs dependencies defined in `chat_api/requirements.txt`, creates a deployment package, and saves it in the `.aws-sam/build` folder.
63 |
64 | Test a single function by invoking it directly with a test event. An event is a JSON document that represents the input that the function receives from the event source. Test events are included in the `events` folder in this project.
65 |
66 | Run functions locally and invoke them with the `sam local invoke` command.
67 |
68 | ```bash
69 | backend$ sam local invoke HelloWorldFunction --event events/event.json
70 | ```
71 |
72 | The SAM CLI can also emulate your application's API. Use the `sam local start-api` to run the API locally on port 3000.
73 |
74 | ```bash
75 | backend$ sam local start-api
76 | backend$ curl http://localhost:3000/
77 | ```
78 |
79 | The SAM CLI reads the application template to determine the API's routes and the functions that they invoke. The `Events` property on each function's definition includes the route and method for each path.
80 |
81 | ```yaml
82 | Events:
83 | HelloWorld:
84 | Type: Api
85 | Properties:
86 | Path: /hello
87 | Method: get
88 | ```
89 |
90 | ## Add a resource to your application
91 | The application template uses AWS Serverless Application Model (AWS SAM) to define application resources. AWS SAM is an extension of AWS CloudFormation with a simpler syntax for configuring common serverless application resources such as functions, triggers, and APIs. For resources not included in [the SAM specification](https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md), you can use standard [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html) resource types.
92 |
93 | ## Fetch, tail, and filter Lambda function logs
94 |
95 | To simplify troubleshooting, SAM CLI has a command called `sam logs`. `sam logs` lets you fetch logs generated by your deployed Lambda function from the command line. In addition to printing the logs on the terminal, this command has several nifty features to help you quickly find the bug.
96 |
97 | `NOTE`: This command works for all AWS Lambda functions; not just the ones you deploy using SAM.
98 |
99 | ```bash
100 | backend$ sam logs -n HelloWorldFunction --stack-name backend --tail
101 | ```
102 |
103 | You can find more information and examples about filtering Lambda function logs in the [SAM CLI Documentation](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-logging.html).
104 |
105 | ## Tests
106 |
107 | Tests are defined in the `tests` folder in this project. Use PIP to install the test dependencies and run tests.
108 |
109 | ```bash
110 | backend$ pip install -r tests/requirements.txt --user
111 | # unit test
112 | backend$ python -m pytest tests/unit -v
113 | # integration test, requiring deploying the stack first.
114 | # Create the env variable AWS_SAM_STACK_NAME with the name of the stack we are testing
115 | backend$ AWS_SAM_STACK_NAME= python -m pytest tests/integration -v
116 | ```
117 |
118 | ## Cleanup
119 |
120 | To delete the sample application that you created, use the AWS CLI. Assuming you used your project name for the stack name, you can run the following:
121 |
122 | ```bash
123 | sam delete --stack-name backend
124 | ```
125 |
126 | ## Resources
127 |
128 | See the [AWS SAM developer guide](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/what-is-sam.html) for an introduction to SAM specification, the SAM CLI, and serverless application concepts.
129 |
130 | Next, you can use AWS Serverless Application Repository to deploy ready to use Apps that go beyond hello world samples and learn how authors developed their applications: [AWS Serverless Application Repository main page](https://aws.amazon.com/serverless/serverlessrepo/)
131 |
--------------------------------------------------------------------------------
/frontend/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "frontend",
3 | "lockfileVersion": 2,
4 | "requires": true,
5 | "packages": {
6 | "": {
7 | "dependencies": {
8 | "@emotion/react": "^11.11.0",
9 | "@emotion/server": "^11.11.0",
10 | "@emotion/styled": "^11.11.0",
11 | "@fontsource/roboto": "^5.0.2",
12 | "@mui/icons-material": "^5.11.16",
13 | "@mui/material": "^5.13.3",
14 | "axios": "^1.4.0",
15 | "next": "latest",
16 | "papaparse": "^5.4.1",
17 | "react": "18.2.0",
18 | "react-dom": "18.2.0",
19 | "react-markdown": "^8.0.7"
20 | }
21 | },
22 | "node_modules/@babel/code-frame": {
23 | "version": "7.21.4",
24 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz",
25 | "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==",
26 | "dependencies": {
27 | "@babel/highlight": "^7.18.6"
28 | },
29 | "engines": {
30 | "node": ">=6.9.0"
31 | }
32 | },
33 | "node_modules/@babel/helper-module-imports": {
34 | "version": "7.21.4",
35 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz",
36 | "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==",
37 | "dependencies": {
38 | "@babel/types": "^7.21.4"
39 | },
40 | "engines": {
41 | "node": ">=6.9.0"
42 | }
43 | },
44 | "node_modules/@babel/helper-string-parser": {
45 | "version": "7.21.5",
46 | "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz",
47 | "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==",
48 | "engines": {
49 | "node": ">=6.9.0"
50 | }
51 | },
52 | "node_modules/@babel/helper-validator-identifier": {
53 | "version": "7.19.1",
54 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz",
55 | "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==",
56 | "engines": {
57 | "node": ">=6.9.0"
58 | }
59 | },
60 | "node_modules/@babel/highlight": {
61 | "version": "7.18.6",
62 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
63 | "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
64 | "dependencies": {
65 | "@babel/helper-validator-identifier": "^7.18.6",
66 | "chalk": "^2.0.0",
67 | "js-tokens": "^4.0.0"
68 | },
69 | "engines": {
70 | "node": ">=6.9.0"
71 | }
72 | },
73 | "node_modules/@babel/runtime": {
74 | "version": "7.22.3",
75 | "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.3.tgz",
76 | "integrity": "sha512-XsDuspWKLUsxwCp6r7EhsExHtYfbe5oAGQ19kqngTdCPUoPQzOPdUbD/pB9PJiwb2ptYKQDjSJT3R6dC+EPqfQ==",
77 | "dependencies": {
78 | "regenerator-runtime": "^0.13.11"
79 | },
80 | "engines": {
81 | "node": ">=6.9.0"
82 | }
83 | },
84 | "node_modules/@babel/types": {
85 | "version": "7.22.4",
86 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.4.tgz",
87 | "integrity": "sha512-Tx9x3UBHTTsMSW85WB2kphxYQVvrZ/t1FxD88IpSgIjiUJlCm9z+xWIDwyo1vffTwSqteqyznB8ZE9vYYk16zA==",
88 | "dependencies": {
89 | "@babel/helper-string-parser": "^7.21.5",
90 | "@babel/helper-validator-identifier": "^7.19.1",
91 | "to-fast-properties": "^2.0.0"
92 | },
93 | "engines": {
94 | "node": ">=6.9.0"
95 | }
96 | },
97 | "node_modules/@emotion/babel-plugin": {
98 | "version": "11.11.0",
99 | "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz",
100 | "integrity": "sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==",
101 | "dependencies": {
102 | "@babel/helper-module-imports": "^7.16.7",
103 | "@babel/runtime": "^7.18.3",
104 | "@emotion/hash": "^0.9.1",
105 | "@emotion/memoize": "^0.8.1",
106 | "@emotion/serialize": "^1.1.2",
107 | "babel-plugin-macros": "^3.1.0",
108 | "convert-source-map": "^1.5.0",
109 | "escape-string-regexp": "^4.0.0",
110 | "find-root": "^1.1.0",
111 | "source-map": "^0.5.7",
112 | "stylis": "4.2.0"
113 | }
114 | },
115 | "node_modules/@emotion/cache": {
116 | "version": "11.11.0",
117 | "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz",
118 | "integrity": "sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==",
119 | "dependencies": {
120 | "@emotion/memoize": "^0.8.1",
121 | "@emotion/sheet": "^1.2.2",
122 | "@emotion/utils": "^1.2.1",
123 | "@emotion/weak-memoize": "^0.3.1",
124 | "stylis": "4.2.0"
125 | }
126 | },
127 | "node_modules/@emotion/hash": {
128 | "version": "0.9.1",
129 | "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz",
130 | "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ=="
131 | },
132 | "node_modules/@emotion/is-prop-valid": {
133 | "version": "1.2.1",
134 | "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz",
135 | "integrity": "sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==",
136 | "dependencies": {
137 | "@emotion/memoize": "^0.8.1"
138 | }
139 | },
140 | "node_modules/@emotion/memoize": {
141 | "version": "0.8.1",
142 | "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz",
143 | "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA=="
144 | },
145 | "node_modules/@emotion/react": {
146 | "version": "11.11.0",
147 | "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.0.tgz",
148 | "integrity": "sha512-ZSK3ZJsNkwfjT3JpDAWJZlrGD81Z3ytNDsxw1LKq1o+xkmO5pnWfr6gmCC8gHEFf3nSSX/09YrG67jybNPxSUw==",
149 | "dependencies": {
150 | "@babel/runtime": "^7.18.3",
151 | "@emotion/babel-plugin": "^11.11.0",
152 | "@emotion/cache": "^11.11.0",
153 | "@emotion/serialize": "^1.1.2",
154 | "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1",
155 | "@emotion/utils": "^1.2.1",
156 | "@emotion/weak-memoize": "^0.3.1",
157 | "hoist-non-react-statics": "^3.3.1"
158 | },
159 | "peerDependencies": {
160 | "react": ">=16.8.0"
161 | },
162 | "peerDependenciesMeta": {
163 | "@types/react": {
164 | "optional": true
165 | }
166 | }
167 | },
168 | "node_modules/@emotion/serialize": {
169 | "version": "1.1.2",
170 | "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.2.tgz",
171 | "integrity": "sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA==",
172 | "dependencies": {
173 | "@emotion/hash": "^0.9.1",
174 | "@emotion/memoize": "^0.8.1",
175 | "@emotion/unitless": "^0.8.1",
176 | "@emotion/utils": "^1.2.1",
177 | "csstype": "^3.0.2"
178 | }
179 | },
180 | "node_modules/@emotion/server": {
181 | "version": "11.11.0",
182 | "resolved": "https://registry.npmjs.org/@emotion/server/-/server-11.11.0.tgz",
183 | "integrity": "sha512-6q89fj2z8VBTx9w93kJ5n51hsmtYuFPtZgnc1L8VzRx9ti4EU6EyvF6Nn1H1x3vcCQCF7u2dB2lY4AYJwUW4PA==",
184 | "dependencies": {
185 | "@emotion/utils": "^1.2.1",
186 | "html-tokenize": "^2.0.0",
187 | "multipipe": "^1.0.2",
188 | "through": "^2.3.8"
189 | },
190 | "peerDependencies": {
191 | "@emotion/css": "^11.0.0-rc.0"
192 | },
193 | "peerDependenciesMeta": {
194 | "@emotion/css": {
195 | "optional": true
196 | }
197 | }
198 | },
199 | "node_modules/@emotion/sheet": {
200 | "version": "1.2.2",
201 | "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz",
202 | "integrity": "sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA=="
203 | },
204 | "node_modules/@emotion/styled": {
205 | "version": "11.11.0",
206 | "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz",
207 | "integrity": "sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==",
208 | "dependencies": {
209 | "@babel/runtime": "^7.18.3",
210 | "@emotion/babel-plugin": "^11.11.0",
211 | "@emotion/is-prop-valid": "^1.2.1",
212 | "@emotion/serialize": "^1.1.2",
213 | "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1",
214 | "@emotion/utils": "^1.2.1"
215 | },
216 | "peerDependencies": {
217 | "@emotion/react": "^11.0.0-rc.0",
218 | "react": ">=16.8.0"
219 | },
220 | "peerDependenciesMeta": {
221 | "@types/react": {
222 | "optional": true
223 | }
224 | }
225 | },
226 | "node_modules/@emotion/unitless": {
227 | "version": "0.8.1",
228 | "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz",
229 | "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ=="
230 | },
231 | "node_modules/@emotion/use-insertion-effect-with-fallbacks": {
232 | "version": "1.0.1",
233 | "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz",
234 | "integrity": "sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==",
235 | "peerDependencies": {
236 | "react": ">=16.8.0"
237 | }
238 | },
239 | "node_modules/@emotion/utils": {
240 | "version": "1.2.1",
241 | "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz",
242 | "integrity": "sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg=="
243 | },
244 | "node_modules/@emotion/weak-memoize": {
245 | "version": "0.3.1",
246 | "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz",
247 | "integrity": "sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww=="
248 | },
249 | "node_modules/@fontsource/roboto": {
250 | "version": "5.0.2",
251 | "resolved": "https://registry.npmjs.org/@fontsource/roboto/-/roboto-5.0.2.tgz",
252 | "integrity": "sha512-SLw0o3kWwJ53/Ogyk8GGwSaULNX6Hogs+GsVempDdqpX8wm5hKBLYgUkdUPk+NogiViPp1x++OnkuLA+fAd9Kg=="
253 | },
254 | "node_modules/@mui/base": {
255 | "version": "5.0.0-beta.3",
256 | "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.3.tgz",
257 | "integrity": "sha512-ErOMoGNpgf6BF5W+jgXDiRlXJnpSeg8XSRonuY5UCCMHIlOWtKDtt/LS3qDAbFFGb7tV/y6EBddbcMeexx+zHw==",
258 | "dependencies": {
259 | "@babel/runtime": "^7.21.0",
260 | "@emotion/is-prop-valid": "^1.2.1",
261 | "@mui/types": "^7.2.4",
262 | "@mui/utils": "^5.13.1",
263 | "@popperjs/core": "^2.11.7",
264 | "clsx": "^1.2.1",
265 | "prop-types": "^15.8.1",
266 | "react-is": "^18.2.0"
267 | },
268 | "engines": {
269 | "node": ">=12.0.0"
270 | },
271 | "funding": {
272 | "type": "opencollective",
273 | "url": "https://opencollective.com/mui"
274 | },
275 | "peerDependencies": {
276 | "@types/react": "^17.0.0 || ^18.0.0",
277 | "react": "^17.0.0 || ^18.0.0",
278 | "react-dom": "^17.0.0 || ^18.0.0"
279 | },
280 | "peerDependenciesMeta": {
281 | "@types/react": {
282 | "optional": true
283 | }
284 | }
285 | },
286 | "node_modules/@mui/core-downloads-tracker": {
287 | "version": "5.13.3",
288 | "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.13.3.tgz",
289 | "integrity": "sha512-w4//nRIi9fiMow/MmhkForOezd8nc229EpSZZ5DzwpJNOmAXwypFTapOUVAGTUQiTJyeZXUNbQqYuUIrIs2nbg==",
290 | "funding": {
291 | "type": "opencollective",
292 | "url": "https://opencollective.com/mui"
293 | }
294 | },
295 | "node_modules/@mui/icons-material": {
296 | "version": "5.11.16",
297 | "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.11.16.tgz",
298 | "integrity": "sha512-oKkx9z9Kwg40NtcIajF9uOXhxiyTZrrm9nmIJ4UjkU2IdHpd4QVLbCc/5hZN/y0C6qzi2Zlxyr9TGddQx2vx2A==",
299 | "dependencies": {
300 | "@babel/runtime": "^7.21.0"
301 | },
302 | "engines": {
303 | "node": ">=12.0.0"
304 | },
305 | "funding": {
306 | "type": "opencollective",
307 | "url": "https://opencollective.com/mui"
308 | },
309 | "peerDependencies": {
310 | "@mui/material": "^5.0.0",
311 | "@types/react": "^17.0.0 || ^18.0.0",
312 | "react": "^17.0.0 || ^18.0.0"
313 | },
314 | "peerDependenciesMeta": {
315 | "@types/react": {
316 | "optional": true
317 | }
318 | }
319 | },
320 | "node_modules/@mui/material": {
321 | "version": "5.13.3",
322 | "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.13.3.tgz",
323 | "integrity": "sha512-10pek+Bz+PZ4rjUf3KTKfXWjPMUqU1nSnRPf4DAXABhsjzelGGfGW/EICgrLRrttYplTJZhoponWALezAge8ug==",
324 | "dependencies": {
325 | "@babel/runtime": "^7.21.0",
326 | "@mui/base": "5.0.0-beta.3",
327 | "@mui/core-downloads-tracker": "^5.13.3",
328 | "@mui/system": "^5.13.2",
329 | "@mui/types": "^7.2.4",
330 | "@mui/utils": "^5.13.1",
331 | "@types/react-transition-group": "^4.4.6",
332 | "clsx": "^1.2.1",
333 | "csstype": "^3.1.2",
334 | "prop-types": "^15.8.1",
335 | "react-is": "^18.2.0",
336 | "react-transition-group": "^4.4.5"
337 | },
338 | "engines": {
339 | "node": ">=12.0.0"
340 | },
341 | "funding": {
342 | "type": "opencollective",
343 | "url": "https://opencollective.com/mui"
344 | },
345 | "peerDependencies": {
346 | "@emotion/react": "^11.5.0",
347 | "@emotion/styled": "^11.3.0",
348 | "@types/react": "^17.0.0 || ^18.0.0",
349 | "react": "^17.0.0 || ^18.0.0",
350 | "react-dom": "^17.0.0 || ^18.0.0"
351 | },
352 | "peerDependenciesMeta": {
353 | "@emotion/react": {
354 | "optional": true
355 | },
356 | "@emotion/styled": {
357 | "optional": true
358 | },
359 | "@types/react": {
360 | "optional": true
361 | }
362 | }
363 | },
364 | "node_modules/@mui/private-theming": {
365 | "version": "5.13.1",
366 | "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.13.1.tgz",
367 | "integrity": "sha512-HW4npLUD9BAkVppOUZHeO1FOKUJWAwbpy0VQoGe3McUYTlck1HezGHQCfBQ5S/Nszi7EViqiimECVl9xi+/WjQ==",
368 | "dependencies": {
369 | "@babel/runtime": "^7.21.0",
370 | "@mui/utils": "^5.13.1",
371 | "prop-types": "^15.8.1"
372 | },
373 | "engines": {
374 | "node": ">=12.0.0"
375 | },
376 | "funding": {
377 | "type": "opencollective",
378 | "url": "https://opencollective.com/mui"
379 | },
380 | "peerDependencies": {
381 | "@types/react": "^17.0.0 || ^18.0.0",
382 | "react": "^17.0.0 || ^18.0.0"
383 | },
384 | "peerDependenciesMeta": {
385 | "@types/react": {
386 | "optional": true
387 | }
388 | }
389 | },
390 | "node_modules/@mui/styled-engine": {
391 | "version": "5.13.2",
392 | "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.13.2.tgz",
393 | "integrity": "sha512-VCYCU6xVtXOrIN8lcbuPmoG+u7FYuOERG++fpY74hPpEWkyFQG97F+/XfTQVYzlR2m7nPjnwVUgATcTCMEaMvw==",
394 | "dependencies": {
395 | "@babel/runtime": "^7.21.0",
396 | "@emotion/cache": "^11.11.0",
397 | "csstype": "^3.1.2",
398 | "prop-types": "^15.8.1"
399 | },
400 | "engines": {
401 | "node": ">=12.0.0"
402 | },
403 | "funding": {
404 | "type": "opencollective",
405 | "url": "https://opencollective.com/mui"
406 | },
407 | "peerDependencies": {
408 | "@emotion/react": "^11.4.1",
409 | "@emotion/styled": "^11.3.0",
410 | "react": "^17.0.0 || ^18.0.0"
411 | },
412 | "peerDependenciesMeta": {
413 | "@emotion/react": {
414 | "optional": true
415 | },
416 | "@emotion/styled": {
417 | "optional": true
418 | }
419 | }
420 | },
421 | "node_modules/@mui/system": {
422 | "version": "5.13.2",
423 | "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.13.2.tgz",
424 | "integrity": "sha512-TPyWmRJPt0JPVxacZISI4o070xEJ7ftxpVtu6LWuYVOUOINlhoGOclam4iV8PDT3EMQEHuUrwU49po34UdWLlw==",
425 | "dependencies": {
426 | "@babel/runtime": "^7.21.0",
427 | "@mui/private-theming": "^5.13.1",
428 | "@mui/styled-engine": "^5.13.2",
429 | "@mui/types": "^7.2.4",
430 | "@mui/utils": "^5.13.1",
431 | "clsx": "^1.2.1",
432 | "csstype": "^3.1.2",
433 | "prop-types": "^15.8.1"
434 | },
435 | "engines": {
436 | "node": ">=12.0.0"
437 | },
438 | "funding": {
439 | "type": "opencollective",
440 | "url": "https://opencollective.com/mui"
441 | },
442 | "peerDependencies": {
443 | "@emotion/react": "^11.5.0",
444 | "@emotion/styled": "^11.3.0",
445 | "@types/react": "^17.0.0 || ^18.0.0",
446 | "react": "^17.0.0 || ^18.0.0"
447 | },
448 | "peerDependenciesMeta": {
449 | "@emotion/react": {
450 | "optional": true
451 | },
452 | "@emotion/styled": {
453 | "optional": true
454 | },
455 | "@types/react": {
456 | "optional": true
457 | }
458 | }
459 | },
460 | "node_modules/@mui/types": {
461 | "version": "7.2.4",
462 | "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.4.tgz",
463 | "integrity": "sha512-LBcwa8rN84bKF+f5sDyku42w1NTxaPgPyYKODsh01U1fVstTClbUoSA96oyRBnSNyEiAVjKm6Gwx9vjR+xyqHA==",
464 | "peerDependencies": {
465 | "@types/react": "*"
466 | },
467 | "peerDependenciesMeta": {
468 | "@types/react": {
469 | "optional": true
470 | }
471 | }
472 | },
473 | "node_modules/@mui/utils": {
474 | "version": "5.13.1",
475 | "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.13.1.tgz",
476 | "integrity": "sha512-6lXdWwmlUbEU2jUI8blw38Kt+3ly7xkmV9ljzY4Q20WhsJMWiNry9CX8M+TaP/HbtuyR8XKsdMgQW7h7MM3n3A==",
477 | "dependencies": {
478 | "@babel/runtime": "^7.21.0",
479 | "@types/prop-types": "^15.7.5",
480 | "@types/react-is": "^18.2.0",
481 | "prop-types": "^15.8.1",
482 | "react-is": "^18.2.0"
483 | },
484 | "engines": {
485 | "node": ">=12.0.0"
486 | },
487 | "funding": {
488 | "type": "opencollective",
489 | "url": "https://opencollective.com/mui"
490 | },
491 | "peerDependencies": {
492 | "react": "^17.0.0 || ^18.0.0"
493 | }
494 | },
495 | "node_modules/@next/env": {
496 | "version": "13.4.4",
497 | "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.4.tgz",
498 | "integrity": "sha512-q/y7VZj/9YpgzDe64Zi6rY1xPizx80JjlU2BTevlajtaE3w1LqweH1gGgxou2N7hdFosXHjGrI4OUvtFXXhGLg=="
499 | },
500 | "node_modules/@next/swc-darwin-arm64": {
501 | "version": "13.4.4",
502 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.4.tgz",
503 | "integrity": "sha512-xfjgXvp4KalNUKZMHmsFxr1Ug+aGmmO6NWP0uoh4G3WFqP/mJ1xxfww0gMOeMeSq/Jyr5k7DvoZ2Pv+XOITTtw==",
504 | "cpu": [
505 | "arm64"
506 | ],
507 | "optional": true,
508 | "os": [
509 | "darwin"
510 | ],
511 | "engines": {
512 | "node": ">= 10"
513 | }
514 | },
515 | "node_modules/@next/swc-darwin-x64": {
516 | "version": "13.4.4",
517 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.4.tgz",
518 | "integrity": "sha512-ZY9Ti1hkIwJsxGus3nlubIkvYyB0gNOYxKrfsOrLEqD0I2iCX8D7w8v6QQZ2H+dDl6UT29oeEUdDUNGk4UEpfg==",
519 | "cpu": [
520 | "x64"
521 | ],
522 | "optional": true,
523 | "os": [
524 | "darwin"
525 | ],
526 | "engines": {
527 | "node": ">= 10"
528 | }
529 | },
530 | "node_modules/@next/swc-linux-arm64-gnu": {
531 | "version": "13.4.4",
532 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.4.tgz",
533 | "integrity": "sha512-+KZnDeMShYkpkqAvGCEDeqYTRADJXc6SY1jWXz+Uo6qWQO/Jd9CoyhTJwRSxvQA16MoYzvILkGaDqirkRNctyA==",
534 | "cpu": [
535 | "arm64"
536 | ],
537 | "optional": true,
538 | "os": [
539 | "linux"
540 | ],
541 | "engines": {
542 | "node": ">= 10"
543 | }
544 | },
545 | "node_modules/@next/swc-linux-arm64-musl": {
546 | "version": "13.4.4",
547 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.4.tgz",
548 | "integrity": "sha512-evC1twrny2XDT4uOftoubZvW3EG0zs0ZxMwEtu/dDGVRO5n5pT48S8qqEIBGBUZYu/Xx4zzpOkIxx1vpWdE+9A==",
549 | "cpu": [
550 | "arm64"
551 | ],
552 | "optional": true,
553 | "os": [
554 | "linux"
555 | ],
556 | "engines": {
557 | "node": ">= 10"
558 | }
559 | },
560 | "node_modules/@next/swc-linux-x64-gnu": {
561 | "version": "13.4.4",
562 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.4.tgz",
563 | "integrity": "sha512-PX706XcCHr2FfkyhP2lpf+pX/tUvq6/ke7JYnnr0ykNdEMo+sb7cC/o91gnURh4sPYSiZJhsF2gbIqg9rciOHQ==",
564 | "cpu": [
565 | "x64"
566 | ],
567 | "optional": true,
568 | "os": [
569 | "linux"
570 | ],
571 | "engines": {
572 | "node": ">= 10"
573 | }
574 | },
575 | "node_modules/@next/swc-linux-x64-musl": {
576 | "version": "13.4.4",
577 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.4.tgz",
578 | "integrity": "sha512-TKUUx3Ftd95JlHV6XagEnqpT204Y+IsEa3awaYIjayn0MOGjgKZMZibqarK3B1FsMSPaieJf2FEAcu9z0yT5aA==",
579 | "cpu": [
580 | "x64"
581 | ],
582 | "optional": true,
583 | "os": [
584 | "linux"
585 | ],
586 | "engines": {
587 | "node": ">= 10"
588 | }
589 | },
590 | "node_modules/@next/swc-win32-arm64-msvc": {
591 | "version": "13.4.4",
592 | "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.4.tgz",
593 | "integrity": "sha512-FP8AadgSq4+HPtim7WBkCMGbhr5vh9FePXiWx9+YOdjwdQocwoCK5ZVC3OW8oh3TWth6iJ0AXJ/yQ1q1cwSZ3A==",
594 | "cpu": [
595 | "arm64"
596 | ],
597 | "optional": true,
598 | "os": [
599 | "win32"
600 | ],
601 | "engines": {
602 | "node": ">= 10"
603 | }
604 | },
605 | "node_modules/@next/swc-win32-ia32-msvc": {
606 | "version": "13.4.4",
607 | "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.4.tgz",
608 | "integrity": "sha512-3WekVmtuA2MCdcAOrgrI+PuFiFURtSyyrN1I3UPtS0ckR2HtLqyqmS334Eulf15g1/bdwMteePdK363X/Y9JMg==",
609 | "cpu": [
610 | "ia32"
611 | ],
612 | "optional": true,
613 | "os": [
614 | "win32"
615 | ],
616 | "engines": {
617 | "node": ">= 10"
618 | }
619 | },
620 | "node_modules/@next/swc-win32-x64-msvc": {
621 | "version": "13.4.4",
622 | "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.4.tgz",
623 | "integrity": "sha512-AHRITu/CrlQ+qzoqQtEMfaTu7GHaQ6bziQln/pVWpOYC1wU+Mq6VQQFlsDtMCnDztPZtppAXdvvbNS7pcfRzlw==",
624 | "cpu": [
625 | "x64"
626 | ],
627 | "optional": true,
628 | "os": [
629 | "win32"
630 | ],
631 | "engines": {
632 | "node": ">= 10"
633 | }
634 | },
635 | "node_modules/@popperjs/core": {
636 | "version": "2.11.8",
637 | "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
638 | "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==",
639 | "funding": {
640 | "type": "opencollective",
641 | "url": "https://opencollective.com/popperjs"
642 | }
643 | },
644 | "node_modules/@swc/helpers": {
645 | "version": "0.5.1",
646 | "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz",
647 | "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==",
648 | "dependencies": {
649 | "tslib": "^2.4.0"
650 | }
651 | },
652 | "node_modules/@types/debug": {
653 | "version": "4.1.8",
654 | "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.8.tgz",
655 | "integrity": "sha512-/vPO1EPOs306Cvhwv7KfVfYvOJqA/S/AXjaHQiJboCZzcNDb+TIJFN9/2C9DZ//ijSKWioNyUxD792QmDJ+HKQ==",
656 | "dependencies": {
657 | "@types/ms": "*"
658 | }
659 | },
660 | "node_modules/@types/hast": {
661 | "version": "2.3.4",
662 | "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz",
663 | "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==",
664 | "dependencies": {
665 | "@types/unist": "*"
666 | }
667 | },
668 | "node_modules/@types/mdast": {
669 | "version": "3.0.11",
670 | "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.11.tgz",
671 | "integrity": "sha512-Y/uImid8aAwrEA24/1tcRZwpxX3pIFTSilcNDKSPn+Y2iDywSEachzRuvgAYYLR3wpGXAsMbv5lvKLDZLeYPAw==",
672 | "dependencies": {
673 | "@types/unist": "*"
674 | }
675 | },
676 | "node_modules/@types/ms": {
677 | "version": "0.7.31",
678 | "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz",
679 | "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA=="
680 | },
681 | "node_modules/@types/parse-json": {
682 | "version": "4.0.0",
683 | "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
684 | "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA=="
685 | },
686 | "node_modules/@types/prop-types": {
687 | "version": "15.7.5",
688 | "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
689 | "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
690 | },
691 | "node_modules/@types/react": {
692 | "version": "18.2.8",
693 | "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.8.tgz",
694 | "integrity": "sha512-lTyWUNrd8ntVkqycEEplasWy2OxNlShj3zqS0LuB1ENUGis5HodmhM7DtCoUGbxj3VW/WsGA0DUhpG6XrM7gPA==",
695 | "dependencies": {
696 | "@types/prop-types": "*",
697 | "@types/scheduler": "*",
698 | "csstype": "^3.0.2"
699 | }
700 | },
701 | "node_modules/@types/react-is": {
702 | "version": "18.2.0",
703 | "resolved": "https://registry.npmjs.org/@types/react-is/-/react-is-18.2.0.tgz",
704 | "integrity": "sha512-1vz2yObaQkLL7YFe/pme2cpvDsCwI1WXIfL+5eLz0MI9gFG24Re16RzUsI8t9XZn9ZWvgLNDrJBmrqXJO7GNQQ==",
705 | "dependencies": {
706 | "@types/react": "*"
707 | }
708 | },
709 | "node_modules/@types/react-transition-group": {
710 | "version": "4.4.6",
711 | "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.6.tgz",
712 | "integrity": "sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew==",
713 | "dependencies": {
714 | "@types/react": "*"
715 | }
716 | },
717 | "node_modules/@types/scheduler": {
718 | "version": "0.16.3",
719 | "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz",
720 | "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ=="
721 | },
722 | "node_modules/@types/unist": {
723 | "version": "2.0.6",
724 | "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz",
725 | "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ=="
726 | },
727 | "node_modules/ansi-styles": {
728 | "version": "3.2.1",
729 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
730 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
731 | "dependencies": {
732 | "color-convert": "^1.9.0"
733 | },
734 | "engines": {
735 | "node": ">=4"
736 | }
737 | },
738 | "node_modules/asynckit": {
739 | "version": "0.4.0",
740 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
741 | "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
742 | },
743 | "node_modules/axios": {
744 | "version": "1.4.0",
745 | "resolved": "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz",
746 | "integrity": "sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==",
747 | "dependencies": {
748 | "follow-redirects": "^1.15.0",
749 | "form-data": "^4.0.0",
750 | "proxy-from-env": "^1.1.0"
751 | }
752 | },
753 | "node_modules/babel-plugin-macros": {
754 | "version": "3.1.0",
755 | "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz",
756 | "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==",
757 | "dependencies": {
758 | "@babel/runtime": "^7.12.5",
759 | "cosmiconfig": "^7.0.0",
760 | "resolve": "^1.19.0"
761 | },
762 | "engines": {
763 | "node": ">=10",
764 | "npm": ">=6"
765 | }
766 | },
767 | "node_modules/bail": {
768 | "version": "2.0.2",
769 | "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz",
770 | "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==",
771 | "funding": {
772 | "type": "github",
773 | "url": "https://github.com/sponsors/wooorm"
774 | }
775 | },
776 | "node_modules/buffer-from": {
777 | "version": "0.1.2",
778 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-0.1.2.tgz",
779 | "integrity": "sha512-RiWIenusJsmI2KcvqQABB83tLxCByE3upSP8QU3rJDMVFGPWLvPQJt/O1Su9moRWeH7d+Q2HYb68f6+v+tw2vg=="
780 | },
781 | "node_modules/busboy": {
782 | "version": "1.6.0",
783 | "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
784 | "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
785 | "dependencies": {
786 | "streamsearch": "^1.1.0"
787 | },
788 | "engines": {
789 | "node": ">=10.16.0"
790 | }
791 | },
792 | "node_modules/callsites": {
793 | "version": "3.1.0",
794 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
795 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
796 | "engines": {
797 | "node": ">=6"
798 | }
799 | },
800 | "node_modules/caniuse-lite": {
801 | "version": "1.0.30001492",
802 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001492.tgz",
803 | "integrity": "sha512-2efF8SAZwgAX1FJr87KWhvuJxnGJKOnctQa8xLOskAXNXq8oiuqgl6u1kk3fFpsp3GgvzlRjiK1sl63hNtFADw==",
804 | "funding": [
805 | {
806 | "type": "opencollective",
807 | "url": "https://opencollective.com/browserslist"
808 | },
809 | {
810 | "type": "tidelift",
811 | "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
812 | },
813 | {
814 | "type": "github",
815 | "url": "https://github.com/sponsors/ai"
816 | }
817 | ]
818 | },
819 | "node_modules/chalk": {
820 | "version": "2.4.2",
821 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
822 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
823 | "dependencies": {
824 | "ansi-styles": "^3.2.1",
825 | "escape-string-regexp": "^1.0.5",
826 | "supports-color": "^5.3.0"
827 | },
828 | "engines": {
829 | "node": ">=4"
830 | }
831 | },
832 | "node_modules/chalk/node_modules/escape-string-regexp": {
833 | "version": "1.0.5",
834 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
835 | "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
836 | "engines": {
837 | "node": ">=0.8.0"
838 | }
839 | },
840 | "node_modules/character-entities": {
841 | "version": "2.0.2",
842 | "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz",
843 | "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==",
844 | "funding": {
845 | "type": "github",
846 | "url": "https://github.com/sponsors/wooorm"
847 | }
848 | },
849 | "node_modules/client-only": {
850 | "version": "0.0.1",
851 | "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
852 | "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
853 | },
854 | "node_modules/clsx": {
855 | "version": "1.2.1",
856 | "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz",
857 | "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==",
858 | "engines": {
859 | "node": ">=6"
860 | }
861 | },
862 | "node_modules/color-convert": {
863 | "version": "1.9.3",
864 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
865 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
866 | "dependencies": {
867 | "color-name": "1.1.3"
868 | }
869 | },
870 | "node_modules/color-name": {
871 | "version": "1.1.3",
872 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
873 | "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
874 | },
875 | "node_modules/combined-stream": {
876 | "version": "1.0.8",
877 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
878 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
879 | "dependencies": {
880 | "delayed-stream": "~1.0.0"
881 | },
882 | "engines": {
883 | "node": ">= 0.8"
884 | }
885 | },
886 | "node_modules/comma-separated-tokens": {
887 | "version": "2.0.3",
888 | "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz",
889 | "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==",
890 | "funding": {
891 | "type": "github",
892 | "url": "https://github.com/sponsors/wooorm"
893 | }
894 | },
895 | "node_modules/convert-source-map": {
896 | "version": "1.9.0",
897 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz",
898 | "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A=="
899 | },
900 | "node_modules/core-util-is": {
901 | "version": "1.0.3",
902 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
903 | "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="
904 | },
905 | "node_modules/cosmiconfig": {
906 | "version": "7.1.0",
907 | "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
908 | "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
909 | "dependencies": {
910 | "@types/parse-json": "^4.0.0",
911 | "import-fresh": "^3.2.1",
912 | "parse-json": "^5.0.0",
913 | "path-type": "^4.0.0",
914 | "yaml": "^1.10.0"
915 | },
916 | "engines": {
917 | "node": ">=10"
918 | }
919 | },
920 | "node_modules/csstype": {
921 | "version": "3.1.2",
922 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
923 | "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
924 | },
925 | "node_modules/debug": {
926 | "version": "4.3.4",
927 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
928 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
929 | "dependencies": {
930 | "ms": "2.1.2"
931 | },
932 | "engines": {
933 | "node": ">=6.0"
934 | },
935 | "peerDependenciesMeta": {
936 | "supports-color": {
937 | "optional": true
938 | }
939 | }
940 | },
941 | "node_modules/decode-named-character-reference": {
942 | "version": "1.0.2",
943 | "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz",
944 | "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==",
945 | "dependencies": {
946 | "character-entities": "^2.0.0"
947 | },
948 | "funding": {
949 | "type": "github",
950 | "url": "https://github.com/sponsors/wooorm"
951 | }
952 | },
953 | "node_modules/delayed-stream": {
954 | "version": "1.0.0",
955 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
956 | "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
957 | "engines": {
958 | "node": ">=0.4.0"
959 | }
960 | },
961 | "node_modules/dequal": {
962 | "version": "2.0.3",
963 | "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
964 | "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
965 | "engines": {
966 | "node": ">=6"
967 | }
968 | },
969 | "node_modules/diff": {
970 | "version": "5.1.0",
971 | "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz",
972 | "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==",
973 | "engines": {
974 | "node": ">=0.3.1"
975 | }
976 | },
977 | "node_modules/dom-helpers": {
978 | "version": "5.2.1",
979 | "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz",
980 | "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==",
981 | "dependencies": {
982 | "@babel/runtime": "^7.8.7",
983 | "csstype": "^3.0.2"
984 | }
985 | },
986 | "node_modules/duplexer2": {
987 | "version": "0.1.4",
988 | "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
989 | "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==",
990 | "dependencies": {
991 | "readable-stream": "^2.0.2"
992 | }
993 | },
994 | "node_modules/duplexer2/node_modules/isarray": {
995 | "version": "1.0.0",
996 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
997 | "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ=="
998 | },
999 | "node_modules/duplexer2/node_modules/readable-stream": {
1000 | "version": "2.3.8",
1001 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
1002 | "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
1003 | "dependencies": {
1004 | "core-util-is": "~1.0.0",
1005 | "inherits": "~2.0.3",
1006 | "isarray": "~1.0.0",
1007 | "process-nextick-args": "~2.0.0",
1008 | "safe-buffer": "~5.1.1",
1009 | "string_decoder": "~1.1.1",
1010 | "util-deprecate": "~1.0.1"
1011 | }
1012 | },
1013 | "node_modules/duplexer2/node_modules/string_decoder": {
1014 | "version": "1.1.1",
1015 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
1016 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
1017 | "dependencies": {
1018 | "safe-buffer": "~5.1.0"
1019 | }
1020 | },
1021 | "node_modules/error-ex": {
1022 | "version": "1.3.2",
1023 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
1024 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
1025 | "dependencies": {
1026 | "is-arrayish": "^0.2.1"
1027 | }
1028 | },
1029 | "node_modules/escape-string-regexp": {
1030 | "version": "4.0.0",
1031 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
1032 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
1033 | "engines": {
1034 | "node": ">=10"
1035 | },
1036 | "funding": {
1037 | "url": "https://github.com/sponsors/sindresorhus"
1038 | }
1039 | },
1040 | "node_modules/extend": {
1041 | "version": "3.0.2",
1042 | "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
1043 | "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
1044 | },
1045 | "node_modules/find-root": {
1046 | "version": "1.1.0",
1047 | "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
1048 | "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng=="
1049 | },
1050 | "node_modules/follow-redirects": {
1051 | "version": "1.15.2",
1052 | "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz",
1053 | "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==",
1054 | "funding": [
1055 | {
1056 | "type": "individual",
1057 | "url": "https://github.com/sponsors/RubenVerborgh"
1058 | }
1059 | ],
1060 | "engines": {
1061 | "node": ">=4.0"
1062 | },
1063 | "peerDependenciesMeta": {
1064 | "debug": {
1065 | "optional": true
1066 | }
1067 | }
1068 | },
1069 | "node_modules/form-data": {
1070 | "version": "4.0.0",
1071 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
1072 | "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
1073 | "dependencies": {
1074 | "asynckit": "^0.4.0",
1075 | "combined-stream": "^1.0.8",
1076 | "mime-types": "^2.1.12"
1077 | },
1078 | "engines": {
1079 | "node": ">= 6"
1080 | }
1081 | },
1082 | "node_modules/function-bind": {
1083 | "version": "1.1.1",
1084 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
1085 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
1086 | },
1087 | "node_modules/has": {
1088 | "version": "1.0.3",
1089 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
1090 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
1091 | "dependencies": {
1092 | "function-bind": "^1.1.1"
1093 | },
1094 | "engines": {
1095 | "node": ">= 0.4.0"
1096 | }
1097 | },
1098 | "node_modules/has-flag": {
1099 | "version": "3.0.0",
1100 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
1101 | "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
1102 | "engines": {
1103 | "node": ">=4"
1104 | }
1105 | },
1106 | "node_modules/hast-util-whitespace": {
1107 | "version": "2.0.1",
1108 | "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz",
1109 | "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==",
1110 | "funding": {
1111 | "type": "opencollective",
1112 | "url": "https://opencollective.com/unified"
1113 | }
1114 | },
1115 | "node_modules/hoist-non-react-statics": {
1116 | "version": "3.3.2",
1117 | "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
1118 | "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
1119 | "dependencies": {
1120 | "react-is": "^16.7.0"
1121 | }
1122 | },
1123 | "node_modules/hoist-non-react-statics/node_modules/react-is": {
1124 | "version": "16.13.1",
1125 | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
1126 | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
1127 | },
1128 | "node_modules/html-tokenize": {
1129 | "version": "2.0.1",
1130 | "resolved": "https://registry.npmjs.org/html-tokenize/-/html-tokenize-2.0.1.tgz",
1131 | "integrity": "sha512-QY6S+hZ0f5m1WT8WffYN+Hg+xm/w5I8XeUcAq/ZYP5wVC8xbKi4Whhru3FtrAebD5EhBW8rmFzkDI6eCAuFe2w==",
1132 | "dependencies": {
1133 | "buffer-from": "~0.1.1",
1134 | "inherits": "~2.0.1",
1135 | "minimist": "~1.2.5",
1136 | "readable-stream": "~1.0.27-1",
1137 | "through2": "~0.4.1"
1138 | },
1139 | "bin": {
1140 | "html-tokenize": "bin/cmd.js"
1141 | }
1142 | },
1143 | "node_modules/import-fresh": {
1144 | "version": "3.3.0",
1145 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
1146 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
1147 | "dependencies": {
1148 | "parent-module": "^1.0.0",
1149 | "resolve-from": "^4.0.0"
1150 | },
1151 | "engines": {
1152 | "node": ">=6"
1153 | },
1154 | "funding": {
1155 | "url": "https://github.com/sponsors/sindresorhus"
1156 | }
1157 | },
1158 | "node_modules/inherits": {
1159 | "version": "2.0.4",
1160 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
1161 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
1162 | },
1163 | "node_modules/inline-style-parser": {
1164 | "version": "0.1.1",
1165 | "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz",
1166 | "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q=="
1167 | },
1168 | "node_modules/is-arrayish": {
1169 | "version": "0.2.1",
1170 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
1171 | "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="
1172 | },
1173 | "node_modules/is-buffer": {
1174 | "version": "2.0.5",
1175 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz",
1176 | "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==",
1177 | "funding": [
1178 | {
1179 | "type": "github",
1180 | "url": "https://github.com/sponsors/feross"
1181 | },
1182 | {
1183 | "type": "patreon",
1184 | "url": "https://www.patreon.com/feross"
1185 | },
1186 | {
1187 | "type": "consulting",
1188 | "url": "https://feross.org/support"
1189 | }
1190 | ],
1191 | "engines": {
1192 | "node": ">=4"
1193 | }
1194 | },
1195 | "node_modules/is-core-module": {
1196 | "version": "2.12.1",
1197 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz",
1198 | "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==",
1199 | "dependencies": {
1200 | "has": "^1.0.3"
1201 | },
1202 | "funding": {
1203 | "url": "https://github.com/sponsors/ljharb"
1204 | }
1205 | },
1206 | "node_modules/is-plain-obj": {
1207 | "version": "4.1.0",
1208 | "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz",
1209 | "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==",
1210 | "engines": {
1211 | "node": ">=12"
1212 | },
1213 | "funding": {
1214 | "url": "https://github.com/sponsors/sindresorhus"
1215 | }
1216 | },
1217 | "node_modules/isarray": {
1218 | "version": "0.0.1",
1219 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
1220 | "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ=="
1221 | },
1222 | "node_modules/js-tokens": {
1223 | "version": "4.0.0",
1224 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
1225 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
1226 | },
1227 | "node_modules/json-parse-even-better-errors": {
1228 | "version": "2.3.1",
1229 | "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
1230 | "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
1231 | },
1232 | "node_modules/kleur": {
1233 | "version": "4.1.5",
1234 | "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz",
1235 | "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==",
1236 | "engines": {
1237 | "node": ">=6"
1238 | }
1239 | },
1240 | "node_modules/lines-and-columns": {
1241 | "version": "1.2.4",
1242 | "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
1243 | "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
1244 | },
1245 | "node_modules/loose-envify": {
1246 | "version": "1.4.0",
1247 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
1248 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
1249 | "dependencies": {
1250 | "js-tokens": "^3.0.0 || ^4.0.0"
1251 | },
1252 | "bin": {
1253 | "loose-envify": "cli.js"
1254 | }
1255 | },
1256 | "node_modules/mdast-util-definitions": {
1257 | "version": "5.1.2",
1258 | "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz",
1259 | "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==",
1260 | "dependencies": {
1261 | "@types/mdast": "^3.0.0",
1262 | "@types/unist": "^2.0.0",
1263 | "unist-util-visit": "^4.0.0"
1264 | },
1265 | "funding": {
1266 | "type": "opencollective",
1267 | "url": "https://opencollective.com/unified"
1268 | }
1269 | },
1270 | "node_modules/mdast-util-from-markdown": {
1271 | "version": "1.3.1",
1272 | "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz",
1273 | "integrity": "sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==",
1274 | "dependencies": {
1275 | "@types/mdast": "^3.0.0",
1276 | "@types/unist": "^2.0.0",
1277 | "decode-named-character-reference": "^1.0.0",
1278 | "mdast-util-to-string": "^3.1.0",
1279 | "micromark": "^3.0.0",
1280 | "micromark-util-decode-numeric-character-reference": "^1.0.0",
1281 | "micromark-util-decode-string": "^1.0.0",
1282 | "micromark-util-normalize-identifier": "^1.0.0",
1283 | "micromark-util-symbol": "^1.0.0",
1284 | "micromark-util-types": "^1.0.0",
1285 | "unist-util-stringify-position": "^3.0.0",
1286 | "uvu": "^0.5.0"
1287 | },
1288 | "funding": {
1289 | "type": "opencollective",
1290 | "url": "https://opencollective.com/unified"
1291 | }
1292 | },
1293 | "node_modules/mdast-util-to-hast": {
1294 | "version": "12.3.0",
1295 | "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz",
1296 | "integrity": "sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==",
1297 | "dependencies": {
1298 | "@types/hast": "^2.0.0",
1299 | "@types/mdast": "^3.0.0",
1300 | "mdast-util-definitions": "^5.0.0",
1301 | "micromark-util-sanitize-uri": "^1.1.0",
1302 | "trim-lines": "^3.0.0",
1303 | "unist-util-generated": "^2.0.0",
1304 | "unist-util-position": "^4.0.0",
1305 | "unist-util-visit": "^4.0.0"
1306 | },
1307 | "funding": {
1308 | "type": "opencollective",
1309 | "url": "https://opencollective.com/unified"
1310 | }
1311 | },
1312 | "node_modules/mdast-util-to-string": {
1313 | "version": "3.2.0",
1314 | "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz",
1315 | "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==",
1316 | "dependencies": {
1317 | "@types/mdast": "^3.0.0"
1318 | },
1319 | "funding": {
1320 | "type": "opencollective",
1321 | "url": "https://opencollective.com/unified"
1322 | }
1323 | },
1324 | "node_modules/micromark": {
1325 | "version": "3.2.0",
1326 | "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.2.0.tgz",
1327 | "integrity": "sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==",
1328 | "funding": [
1329 | {
1330 | "type": "GitHub Sponsors",
1331 | "url": "https://github.com/sponsors/unifiedjs"
1332 | },
1333 | {
1334 | "type": "OpenCollective",
1335 | "url": "https://opencollective.com/unified"
1336 | }
1337 | ],
1338 | "dependencies": {
1339 | "@types/debug": "^4.0.0",
1340 | "debug": "^4.0.0",
1341 | "decode-named-character-reference": "^1.0.0",
1342 | "micromark-core-commonmark": "^1.0.1",
1343 | "micromark-factory-space": "^1.0.0",
1344 | "micromark-util-character": "^1.0.0",
1345 | "micromark-util-chunked": "^1.0.0",
1346 | "micromark-util-combine-extensions": "^1.0.0",
1347 | "micromark-util-decode-numeric-character-reference": "^1.0.0",
1348 | "micromark-util-encode": "^1.0.0",
1349 | "micromark-util-normalize-identifier": "^1.0.0",
1350 | "micromark-util-resolve-all": "^1.0.0",
1351 | "micromark-util-sanitize-uri": "^1.0.0",
1352 | "micromark-util-subtokenize": "^1.0.0",
1353 | "micromark-util-symbol": "^1.0.0",
1354 | "micromark-util-types": "^1.0.1",
1355 | "uvu": "^0.5.0"
1356 | }
1357 | },
1358 | "node_modules/micromark-core-commonmark": {
1359 | "version": "1.1.0",
1360 | "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz",
1361 | "integrity": "sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==",
1362 | "funding": [
1363 | {
1364 | "type": "GitHub Sponsors",
1365 | "url": "https://github.com/sponsors/unifiedjs"
1366 | },
1367 | {
1368 | "type": "OpenCollective",
1369 | "url": "https://opencollective.com/unified"
1370 | }
1371 | ],
1372 | "dependencies": {
1373 | "decode-named-character-reference": "^1.0.0",
1374 | "micromark-factory-destination": "^1.0.0",
1375 | "micromark-factory-label": "^1.0.0",
1376 | "micromark-factory-space": "^1.0.0",
1377 | "micromark-factory-title": "^1.0.0",
1378 | "micromark-factory-whitespace": "^1.0.0",
1379 | "micromark-util-character": "^1.0.0",
1380 | "micromark-util-chunked": "^1.0.0",
1381 | "micromark-util-classify-character": "^1.0.0",
1382 | "micromark-util-html-tag-name": "^1.0.0",
1383 | "micromark-util-normalize-identifier": "^1.0.0",
1384 | "micromark-util-resolve-all": "^1.0.0",
1385 | "micromark-util-subtokenize": "^1.0.0",
1386 | "micromark-util-symbol": "^1.0.0",
1387 | "micromark-util-types": "^1.0.1",
1388 | "uvu": "^0.5.0"
1389 | }
1390 | },
1391 | "node_modules/micromark-factory-destination": {
1392 | "version": "1.1.0",
1393 | "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz",
1394 | "integrity": "sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==",
1395 | "funding": [
1396 | {
1397 | "type": "GitHub Sponsors",
1398 | "url": "https://github.com/sponsors/unifiedjs"
1399 | },
1400 | {
1401 | "type": "OpenCollective",
1402 | "url": "https://opencollective.com/unified"
1403 | }
1404 | ],
1405 | "dependencies": {
1406 | "micromark-util-character": "^1.0.0",
1407 | "micromark-util-symbol": "^1.0.0",
1408 | "micromark-util-types": "^1.0.0"
1409 | }
1410 | },
1411 | "node_modules/micromark-factory-label": {
1412 | "version": "1.1.0",
1413 | "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz",
1414 | "integrity": "sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==",
1415 | "funding": [
1416 | {
1417 | "type": "GitHub Sponsors",
1418 | "url": "https://github.com/sponsors/unifiedjs"
1419 | },
1420 | {
1421 | "type": "OpenCollective",
1422 | "url": "https://opencollective.com/unified"
1423 | }
1424 | ],
1425 | "dependencies": {
1426 | "micromark-util-character": "^1.0.0",
1427 | "micromark-util-symbol": "^1.0.0",
1428 | "micromark-util-types": "^1.0.0",
1429 | "uvu": "^0.5.0"
1430 | }
1431 | },
1432 | "node_modules/micromark-factory-space": {
1433 | "version": "1.1.0",
1434 | "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz",
1435 | "integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==",
1436 | "funding": [
1437 | {
1438 | "type": "GitHub Sponsors",
1439 | "url": "https://github.com/sponsors/unifiedjs"
1440 | },
1441 | {
1442 | "type": "OpenCollective",
1443 | "url": "https://opencollective.com/unified"
1444 | }
1445 | ],
1446 | "dependencies": {
1447 | "micromark-util-character": "^1.0.0",
1448 | "micromark-util-types": "^1.0.0"
1449 | }
1450 | },
1451 | "node_modules/micromark-factory-title": {
1452 | "version": "1.1.0",
1453 | "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz",
1454 | "integrity": "sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==",
1455 | "funding": [
1456 | {
1457 | "type": "GitHub Sponsors",
1458 | "url": "https://github.com/sponsors/unifiedjs"
1459 | },
1460 | {
1461 | "type": "OpenCollective",
1462 | "url": "https://opencollective.com/unified"
1463 | }
1464 | ],
1465 | "dependencies": {
1466 | "micromark-factory-space": "^1.0.0",
1467 | "micromark-util-character": "^1.0.0",
1468 | "micromark-util-symbol": "^1.0.0",
1469 | "micromark-util-types": "^1.0.0"
1470 | }
1471 | },
1472 | "node_modules/micromark-factory-whitespace": {
1473 | "version": "1.1.0",
1474 | "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz",
1475 | "integrity": "sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==",
1476 | "funding": [
1477 | {
1478 | "type": "GitHub Sponsors",
1479 | "url": "https://github.com/sponsors/unifiedjs"
1480 | },
1481 | {
1482 | "type": "OpenCollective",
1483 | "url": "https://opencollective.com/unified"
1484 | }
1485 | ],
1486 | "dependencies": {
1487 | "micromark-factory-space": "^1.0.0",
1488 | "micromark-util-character": "^1.0.0",
1489 | "micromark-util-symbol": "^1.0.0",
1490 | "micromark-util-types": "^1.0.0"
1491 | }
1492 | },
1493 | "node_modules/micromark-util-character": {
1494 | "version": "1.2.0",
1495 | "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz",
1496 | "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==",
1497 | "funding": [
1498 | {
1499 | "type": "GitHub Sponsors",
1500 | "url": "https://github.com/sponsors/unifiedjs"
1501 | },
1502 | {
1503 | "type": "OpenCollective",
1504 | "url": "https://opencollective.com/unified"
1505 | }
1506 | ],
1507 | "dependencies": {
1508 | "micromark-util-symbol": "^1.0.0",
1509 | "micromark-util-types": "^1.0.0"
1510 | }
1511 | },
1512 | "node_modules/micromark-util-chunked": {
1513 | "version": "1.1.0",
1514 | "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz",
1515 | "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==",
1516 | "funding": [
1517 | {
1518 | "type": "GitHub Sponsors",
1519 | "url": "https://github.com/sponsors/unifiedjs"
1520 | },
1521 | {
1522 | "type": "OpenCollective",
1523 | "url": "https://opencollective.com/unified"
1524 | }
1525 | ],
1526 | "dependencies": {
1527 | "micromark-util-symbol": "^1.0.0"
1528 | }
1529 | },
1530 | "node_modules/micromark-util-classify-character": {
1531 | "version": "1.1.0",
1532 | "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz",
1533 | "integrity": "sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==",
1534 | "funding": [
1535 | {
1536 | "type": "GitHub Sponsors",
1537 | "url": "https://github.com/sponsors/unifiedjs"
1538 | },
1539 | {
1540 | "type": "OpenCollective",
1541 | "url": "https://opencollective.com/unified"
1542 | }
1543 | ],
1544 | "dependencies": {
1545 | "micromark-util-character": "^1.0.0",
1546 | "micromark-util-symbol": "^1.0.0",
1547 | "micromark-util-types": "^1.0.0"
1548 | }
1549 | },
1550 | "node_modules/micromark-util-combine-extensions": {
1551 | "version": "1.1.0",
1552 | "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz",
1553 | "integrity": "sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==",
1554 | "funding": [
1555 | {
1556 | "type": "GitHub Sponsors",
1557 | "url": "https://github.com/sponsors/unifiedjs"
1558 | },
1559 | {
1560 | "type": "OpenCollective",
1561 | "url": "https://opencollective.com/unified"
1562 | }
1563 | ],
1564 | "dependencies": {
1565 | "micromark-util-chunked": "^1.0.0",
1566 | "micromark-util-types": "^1.0.0"
1567 | }
1568 | },
1569 | "node_modules/micromark-util-decode-numeric-character-reference": {
1570 | "version": "1.1.0",
1571 | "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz",
1572 | "integrity": "sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==",
1573 | "funding": [
1574 | {
1575 | "type": "GitHub Sponsors",
1576 | "url": "https://github.com/sponsors/unifiedjs"
1577 | },
1578 | {
1579 | "type": "OpenCollective",
1580 | "url": "https://opencollective.com/unified"
1581 | }
1582 | ],
1583 | "dependencies": {
1584 | "micromark-util-symbol": "^1.0.0"
1585 | }
1586 | },
1587 | "node_modules/micromark-util-decode-string": {
1588 | "version": "1.1.0",
1589 | "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz",
1590 | "integrity": "sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==",
1591 | "funding": [
1592 | {
1593 | "type": "GitHub Sponsors",
1594 | "url": "https://github.com/sponsors/unifiedjs"
1595 | },
1596 | {
1597 | "type": "OpenCollective",
1598 | "url": "https://opencollective.com/unified"
1599 | }
1600 | ],
1601 | "dependencies": {
1602 | "decode-named-character-reference": "^1.0.0",
1603 | "micromark-util-character": "^1.0.0",
1604 | "micromark-util-decode-numeric-character-reference": "^1.0.0",
1605 | "micromark-util-symbol": "^1.0.0"
1606 | }
1607 | },
1608 | "node_modules/micromark-util-encode": {
1609 | "version": "1.1.0",
1610 | "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz",
1611 | "integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==",
1612 | "funding": [
1613 | {
1614 | "type": "GitHub Sponsors",
1615 | "url": "https://github.com/sponsors/unifiedjs"
1616 | },
1617 | {
1618 | "type": "OpenCollective",
1619 | "url": "https://opencollective.com/unified"
1620 | }
1621 | ]
1622 | },
1623 | "node_modules/micromark-util-html-tag-name": {
1624 | "version": "1.2.0",
1625 | "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz",
1626 | "integrity": "sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==",
1627 | "funding": [
1628 | {
1629 | "type": "GitHub Sponsors",
1630 | "url": "https://github.com/sponsors/unifiedjs"
1631 | },
1632 | {
1633 | "type": "OpenCollective",
1634 | "url": "https://opencollective.com/unified"
1635 | }
1636 | ]
1637 | },
1638 | "node_modules/micromark-util-normalize-identifier": {
1639 | "version": "1.1.0",
1640 | "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz",
1641 | "integrity": "sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==",
1642 | "funding": [
1643 | {
1644 | "type": "GitHub Sponsors",
1645 | "url": "https://github.com/sponsors/unifiedjs"
1646 | },
1647 | {
1648 | "type": "OpenCollective",
1649 | "url": "https://opencollective.com/unified"
1650 | }
1651 | ],
1652 | "dependencies": {
1653 | "micromark-util-symbol": "^1.0.0"
1654 | }
1655 | },
1656 | "node_modules/micromark-util-resolve-all": {
1657 | "version": "1.1.0",
1658 | "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz",
1659 | "integrity": "sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==",
1660 | "funding": [
1661 | {
1662 | "type": "GitHub Sponsors",
1663 | "url": "https://github.com/sponsors/unifiedjs"
1664 | },
1665 | {
1666 | "type": "OpenCollective",
1667 | "url": "https://opencollective.com/unified"
1668 | }
1669 | ],
1670 | "dependencies": {
1671 | "micromark-util-types": "^1.0.0"
1672 | }
1673 | },
1674 | "node_modules/micromark-util-sanitize-uri": {
1675 | "version": "1.2.0",
1676 | "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz",
1677 | "integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==",
1678 | "funding": [
1679 | {
1680 | "type": "GitHub Sponsors",
1681 | "url": "https://github.com/sponsors/unifiedjs"
1682 | },
1683 | {
1684 | "type": "OpenCollective",
1685 | "url": "https://opencollective.com/unified"
1686 | }
1687 | ],
1688 | "dependencies": {
1689 | "micromark-util-character": "^1.0.0",
1690 | "micromark-util-encode": "^1.0.0",
1691 | "micromark-util-symbol": "^1.0.0"
1692 | }
1693 | },
1694 | "node_modules/micromark-util-subtokenize": {
1695 | "version": "1.1.0",
1696 | "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz",
1697 | "integrity": "sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==",
1698 | "funding": [
1699 | {
1700 | "type": "GitHub Sponsors",
1701 | "url": "https://github.com/sponsors/unifiedjs"
1702 | },
1703 | {
1704 | "type": "OpenCollective",
1705 | "url": "https://opencollective.com/unified"
1706 | }
1707 | ],
1708 | "dependencies": {
1709 | "micromark-util-chunked": "^1.0.0",
1710 | "micromark-util-symbol": "^1.0.0",
1711 | "micromark-util-types": "^1.0.0",
1712 | "uvu": "^0.5.0"
1713 | }
1714 | },
1715 | "node_modules/micromark-util-symbol": {
1716 | "version": "1.1.0",
1717 | "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz",
1718 | "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==",
1719 | "funding": [
1720 | {
1721 | "type": "GitHub Sponsors",
1722 | "url": "https://github.com/sponsors/unifiedjs"
1723 | },
1724 | {
1725 | "type": "OpenCollective",
1726 | "url": "https://opencollective.com/unified"
1727 | }
1728 | ]
1729 | },
1730 | "node_modules/micromark-util-types": {
1731 | "version": "1.1.0",
1732 | "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz",
1733 | "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==",
1734 | "funding": [
1735 | {
1736 | "type": "GitHub Sponsors",
1737 | "url": "https://github.com/sponsors/unifiedjs"
1738 | },
1739 | {
1740 | "type": "OpenCollective",
1741 | "url": "https://opencollective.com/unified"
1742 | }
1743 | ]
1744 | },
1745 | "node_modules/mime-db": {
1746 | "version": "1.52.0",
1747 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
1748 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
1749 | "engines": {
1750 | "node": ">= 0.6"
1751 | }
1752 | },
1753 | "node_modules/mime-types": {
1754 | "version": "2.1.35",
1755 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
1756 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
1757 | "dependencies": {
1758 | "mime-db": "1.52.0"
1759 | },
1760 | "engines": {
1761 | "node": ">= 0.6"
1762 | }
1763 | },
1764 | "node_modules/minimist": {
1765 | "version": "1.2.8",
1766 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
1767 | "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
1768 | "funding": {
1769 | "url": "https://github.com/sponsors/ljharb"
1770 | }
1771 | },
1772 | "node_modules/mri": {
1773 | "version": "1.2.0",
1774 | "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
1775 | "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
1776 | "engines": {
1777 | "node": ">=4"
1778 | }
1779 | },
1780 | "node_modules/ms": {
1781 | "version": "2.1.2",
1782 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
1783 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
1784 | },
1785 | "node_modules/multipipe": {
1786 | "version": "1.0.2",
1787 | "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-1.0.2.tgz",
1788 | "integrity": "sha512-6uiC9OvY71vzSGX8lZvSqscE7ft9nPupJ8fMjrCNRAUy2LREUW42UL+V/NTrogr6rFgRydUrCX4ZitfpSNkSCQ==",
1789 | "dependencies": {
1790 | "duplexer2": "^0.1.2",
1791 | "object-assign": "^4.1.0"
1792 | }
1793 | },
1794 | "node_modules/nanoid": {
1795 | "version": "3.3.6",
1796 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
1797 | "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
1798 | "funding": [
1799 | {
1800 | "type": "github",
1801 | "url": "https://github.com/sponsors/ai"
1802 | }
1803 | ],
1804 | "bin": {
1805 | "nanoid": "bin/nanoid.cjs"
1806 | },
1807 | "engines": {
1808 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
1809 | }
1810 | },
1811 | "node_modules/next": {
1812 | "version": "13.4.4",
1813 | "resolved": "https://registry.npmjs.org/next/-/next-13.4.4.tgz",
1814 | "integrity": "sha512-C5S0ysM0Ily9McL4Jb48nOQHT1BukOWI59uC3X/xCMlYIh9rJZCv7nzG92J6e1cOBqQbKovlpgvHWFmz4eKKEA==",
1815 | "dependencies": {
1816 | "@next/env": "13.4.4",
1817 | "@swc/helpers": "0.5.1",
1818 | "busboy": "1.6.0",
1819 | "caniuse-lite": "^1.0.30001406",
1820 | "postcss": "8.4.14",
1821 | "styled-jsx": "5.1.1",
1822 | "zod": "3.21.4"
1823 | },
1824 | "bin": {
1825 | "next": "dist/bin/next"
1826 | },
1827 | "engines": {
1828 | "node": ">=16.8.0"
1829 | },
1830 | "optionalDependencies": {
1831 | "@next/swc-darwin-arm64": "13.4.4",
1832 | "@next/swc-darwin-x64": "13.4.4",
1833 | "@next/swc-linux-arm64-gnu": "13.4.4",
1834 | "@next/swc-linux-arm64-musl": "13.4.4",
1835 | "@next/swc-linux-x64-gnu": "13.4.4",
1836 | "@next/swc-linux-x64-musl": "13.4.4",
1837 | "@next/swc-win32-arm64-msvc": "13.4.4",
1838 | "@next/swc-win32-ia32-msvc": "13.4.4",
1839 | "@next/swc-win32-x64-msvc": "13.4.4"
1840 | },
1841 | "peerDependencies": {
1842 | "@opentelemetry/api": "^1.1.0",
1843 | "fibers": ">= 3.1.0",
1844 | "react": "^18.2.0",
1845 | "react-dom": "^18.2.0",
1846 | "sass": "^1.3.0"
1847 | },
1848 | "peerDependenciesMeta": {
1849 | "@opentelemetry/api": {
1850 | "optional": true
1851 | },
1852 | "fibers": {
1853 | "optional": true
1854 | },
1855 | "sass": {
1856 | "optional": true
1857 | }
1858 | }
1859 | },
1860 | "node_modules/object-assign": {
1861 | "version": "4.1.1",
1862 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
1863 | "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
1864 | "engines": {
1865 | "node": ">=0.10.0"
1866 | }
1867 | },
1868 | "node_modules/object-keys": {
1869 | "version": "0.4.0",
1870 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz",
1871 | "integrity": "sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw=="
1872 | },
1873 | "node_modules/papaparse": {
1874 | "version": "5.4.1",
1875 | "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.1.tgz",
1876 | "integrity": "sha512-HipMsgJkZu8br23pW15uvo6sib6wne/4woLZPlFf3rpDyMe9ywEXUsuD7+6K9PRkJlVT51j/sCOYDKGGS3ZJrw=="
1877 | },
1878 | "node_modules/parent-module": {
1879 | "version": "1.0.1",
1880 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
1881 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
1882 | "dependencies": {
1883 | "callsites": "^3.0.0"
1884 | },
1885 | "engines": {
1886 | "node": ">=6"
1887 | }
1888 | },
1889 | "node_modules/parse-json": {
1890 | "version": "5.2.0",
1891 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
1892 | "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
1893 | "dependencies": {
1894 | "@babel/code-frame": "^7.0.0",
1895 | "error-ex": "^1.3.1",
1896 | "json-parse-even-better-errors": "^2.3.0",
1897 | "lines-and-columns": "^1.1.6"
1898 | },
1899 | "engines": {
1900 | "node": ">=8"
1901 | },
1902 | "funding": {
1903 | "url": "https://github.com/sponsors/sindresorhus"
1904 | }
1905 | },
1906 | "node_modules/path-parse": {
1907 | "version": "1.0.7",
1908 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
1909 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
1910 | },
1911 | "node_modules/path-type": {
1912 | "version": "4.0.0",
1913 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
1914 | "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
1915 | "engines": {
1916 | "node": ">=8"
1917 | }
1918 | },
1919 | "node_modules/picocolors": {
1920 | "version": "1.0.0",
1921 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
1922 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
1923 | },
1924 | "node_modules/postcss": {
1925 | "version": "8.4.14",
1926 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
1927 | "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
1928 | "funding": [
1929 | {
1930 | "type": "opencollective",
1931 | "url": "https://opencollective.com/postcss/"
1932 | },
1933 | {
1934 | "type": "tidelift",
1935 | "url": "https://tidelift.com/funding/github/npm/postcss"
1936 | }
1937 | ],
1938 | "dependencies": {
1939 | "nanoid": "^3.3.4",
1940 | "picocolors": "^1.0.0",
1941 | "source-map-js": "^1.0.2"
1942 | },
1943 | "engines": {
1944 | "node": "^10 || ^12 || >=14"
1945 | }
1946 | },
1947 | "node_modules/process-nextick-args": {
1948 | "version": "2.0.1",
1949 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
1950 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
1951 | },
1952 | "node_modules/prop-types": {
1953 | "version": "15.8.1",
1954 | "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
1955 | "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
1956 | "dependencies": {
1957 | "loose-envify": "^1.4.0",
1958 | "object-assign": "^4.1.1",
1959 | "react-is": "^16.13.1"
1960 | }
1961 | },
1962 | "node_modules/prop-types/node_modules/react-is": {
1963 | "version": "16.13.1",
1964 | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
1965 | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
1966 | },
1967 | "node_modules/property-information": {
1968 | "version": "6.2.0",
1969 | "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz",
1970 | "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==",
1971 | "funding": {
1972 | "type": "github",
1973 | "url": "https://github.com/sponsors/wooorm"
1974 | }
1975 | },
1976 | "node_modules/proxy-from-env": {
1977 | "version": "1.1.0",
1978 | "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
1979 | "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
1980 | },
1981 | "node_modules/react": {
1982 | "version": "18.2.0",
1983 | "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz",
1984 | "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==",
1985 | "dependencies": {
1986 | "loose-envify": "^1.1.0"
1987 | },
1988 | "engines": {
1989 | "node": ">=0.10.0"
1990 | }
1991 | },
1992 | "node_modules/react-dom": {
1993 | "version": "18.2.0",
1994 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz",
1995 | "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==",
1996 | "dependencies": {
1997 | "loose-envify": "^1.1.0",
1998 | "scheduler": "^0.23.0"
1999 | },
2000 | "peerDependencies": {
2001 | "react": "^18.2.0"
2002 | }
2003 | },
2004 | "node_modules/react-is": {
2005 | "version": "18.2.0",
2006 | "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz",
2007 | "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w=="
2008 | },
2009 | "node_modules/react-markdown": {
2010 | "version": "8.0.7",
2011 | "resolved": "https://registry.npmjs.org/react-markdown/-/react-markdown-8.0.7.tgz",
2012 | "integrity": "sha512-bvWbzG4MtOU62XqBx3Xx+zB2raaFFsq4mYiAzfjXJMEz2sixgeAfraA3tvzULF02ZdOMUOKTBFFaZJDDrq+BJQ==",
2013 | "dependencies": {
2014 | "@types/hast": "^2.0.0",
2015 | "@types/prop-types": "^15.0.0",
2016 | "@types/unist": "^2.0.0",
2017 | "comma-separated-tokens": "^2.0.0",
2018 | "hast-util-whitespace": "^2.0.0",
2019 | "prop-types": "^15.0.0",
2020 | "property-information": "^6.0.0",
2021 | "react-is": "^18.0.0",
2022 | "remark-parse": "^10.0.0",
2023 | "remark-rehype": "^10.0.0",
2024 | "space-separated-tokens": "^2.0.0",
2025 | "style-to-object": "^0.4.0",
2026 | "unified": "^10.0.0",
2027 | "unist-util-visit": "^4.0.0",
2028 | "vfile": "^5.0.0"
2029 | },
2030 | "funding": {
2031 | "type": "opencollective",
2032 | "url": "https://opencollective.com/unified"
2033 | },
2034 | "peerDependencies": {
2035 | "@types/react": ">=16",
2036 | "react": ">=16"
2037 | }
2038 | },
2039 | "node_modules/react-transition-group": {
2040 | "version": "4.4.5",
2041 | "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz",
2042 | "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==",
2043 | "dependencies": {
2044 | "@babel/runtime": "^7.5.5",
2045 | "dom-helpers": "^5.0.1",
2046 | "loose-envify": "^1.4.0",
2047 | "prop-types": "^15.6.2"
2048 | },
2049 | "peerDependencies": {
2050 | "react": ">=16.6.0",
2051 | "react-dom": ">=16.6.0"
2052 | }
2053 | },
2054 | "node_modules/readable-stream": {
2055 | "version": "1.0.34",
2056 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
2057 | "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==",
2058 | "dependencies": {
2059 | "core-util-is": "~1.0.0",
2060 | "inherits": "~2.0.1",
2061 | "isarray": "0.0.1",
2062 | "string_decoder": "~0.10.x"
2063 | }
2064 | },
2065 | "node_modules/regenerator-runtime": {
2066 | "version": "0.13.11",
2067 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
2068 | "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg=="
2069 | },
2070 | "node_modules/remark-parse": {
2071 | "version": "10.0.2",
2072 | "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.2.tgz",
2073 | "integrity": "sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==",
2074 | "dependencies": {
2075 | "@types/mdast": "^3.0.0",
2076 | "mdast-util-from-markdown": "^1.0.0",
2077 | "unified": "^10.0.0"
2078 | },
2079 | "funding": {
2080 | "type": "opencollective",
2081 | "url": "https://opencollective.com/unified"
2082 | }
2083 | },
2084 | "node_modules/remark-rehype": {
2085 | "version": "10.1.0",
2086 | "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz",
2087 | "integrity": "sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==",
2088 | "dependencies": {
2089 | "@types/hast": "^2.0.0",
2090 | "@types/mdast": "^3.0.0",
2091 | "mdast-util-to-hast": "^12.1.0",
2092 | "unified": "^10.0.0"
2093 | },
2094 | "funding": {
2095 | "type": "opencollective",
2096 | "url": "https://opencollective.com/unified"
2097 | }
2098 | },
2099 | "node_modules/resolve": {
2100 | "version": "1.22.2",
2101 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz",
2102 | "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==",
2103 | "dependencies": {
2104 | "is-core-module": "^2.11.0",
2105 | "path-parse": "^1.0.7",
2106 | "supports-preserve-symlinks-flag": "^1.0.0"
2107 | },
2108 | "bin": {
2109 | "resolve": "bin/resolve"
2110 | },
2111 | "funding": {
2112 | "url": "https://github.com/sponsors/ljharb"
2113 | }
2114 | },
2115 | "node_modules/resolve-from": {
2116 | "version": "4.0.0",
2117 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
2118 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
2119 | "engines": {
2120 | "node": ">=4"
2121 | }
2122 | },
2123 | "node_modules/sade": {
2124 | "version": "1.8.1",
2125 | "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz",
2126 | "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==",
2127 | "dependencies": {
2128 | "mri": "^1.1.0"
2129 | },
2130 | "engines": {
2131 | "node": ">=6"
2132 | }
2133 | },
2134 | "node_modules/safe-buffer": {
2135 | "version": "5.1.2",
2136 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
2137 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
2138 | },
2139 | "node_modules/scheduler": {
2140 | "version": "0.23.0",
2141 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz",
2142 | "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==",
2143 | "dependencies": {
2144 | "loose-envify": "^1.1.0"
2145 | }
2146 | },
2147 | "node_modules/source-map": {
2148 | "version": "0.5.7",
2149 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
2150 | "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
2151 | "engines": {
2152 | "node": ">=0.10.0"
2153 | }
2154 | },
2155 | "node_modules/source-map-js": {
2156 | "version": "1.0.2",
2157 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
2158 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
2159 | "engines": {
2160 | "node": ">=0.10.0"
2161 | }
2162 | },
2163 | "node_modules/space-separated-tokens": {
2164 | "version": "2.0.2",
2165 | "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz",
2166 | "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==",
2167 | "funding": {
2168 | "type": "github",
2169 | "url": "https://github.com/sponsors/wooorm"
2170 | }
2171 | },
2172 | "node_modules/streamsearch": {
2173 | "version": "1.1.0",
2174 | "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
2175 | "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==",
2176 | "engines": {
2177 | "node": ">=10.0.0"
2178 | }
2179 | },
2180 | "node_modules/string_decoder": {
2181 | "version": "0.10.31",
2182 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
2183 | "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ=="
2184 | },
2185 | "node_modules/style-to-object": {
2186 | "version": "0.4.1",
2187 | "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz",
2188 | "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==",
2189 | "dependencies": {
2190 | "inline-style-parser": "0.1.1"
2191 | }
2192 | },
2193 | "node_modules/styled-jsx": {
2194 | "version": "5.1.1",
2195 | "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz",
2196 | "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==",
2197 | "dependencies": {
2198 | "client-only": "0.0.1"
2199 | },
2200 | "engines": {
2201 | "node": ">= 12.0.0"
2202 | },
2203 | "peerDependencies": {
2204 | "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0"
2205 | },
2206 | "peerDependenciesMeta": {
2207 | "@babel/core": {
2208 | "optional": true
2209 | },
2210 | "babel-plugin-macros": {
2211 | "optional": true
2212 | }
2213 | }
2214 | },
2215 | "node_modules/stylis": {
2216 | "version": "4.2.0",
2217 | "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz",
2218 | "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw=="
2219 | },
2220 | "node_modules/supports-color": {
2221 | "version": "5.5.0",
2222 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
2223 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
2224 | "dependencies": {
2225 | "has-flag": "^3.0.0"
2226 | },
2227 | "engines": {
2228 | "node": ">=4"
2229 | }
2230 | },
2231 | "node_modules/supports-preserve-symlinks-flag": {
2232 | "version": "1.0.0",
2233 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
2234 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
2235 | "engines": {
2236 | "node": ">= 0.4"
2237 | },
2238 | "funding": {
2239 | "url": "https://github.com/sponsors/ljharb"
2240 | }
2241 | },
2242 | "node_modules/through": {
2243 | "version": "2.3.8",
2244 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
2245 | "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg=="
2246 | },
2247 | "node_modules/through2": {
2248 | "version": "0.4.2",
2249 | "resolved": "https://registry.npmjs.org/through2/-/through2-0.4.2.tgz",
2250 | "integrity": "sha512-45Llu+EwHKtAZYTPPVn3XZHBgakWMN3rokhEv5hu596XP+cNgplMg+Gj+1nmAvj+L0K7+N49zBKx5rah5u0QIQ==",
2251 | "dependencies": {
2252 | "readable-stream": "~1.0.17",
2253 | "xtend": "~2.1.1"
2254 | }
2255 | },
2256 | "node_modules/to-fast-properties": {
2257 | "version": "2.0.0",
2258 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
2259 | "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
2260 | "engines": {
2261 | "node": ">=4"
2262 | }
2263 | },
2264 | "node_modules/trim-lines": {
2265 | "version": "3.0.1",
2266 | "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz",
2267 | "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==",
2268 | "funding": {
2269 | "type": "github",
2270 | "url": "https://github.com/sponsors/wooorm"
2271 | }
2272 | },
2273 | "node_modules/trough": {
2274 | "version": "2.1.0",
2275 | "resolved": "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz",
2276 | "integrity": "sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==",
2277 | "funding": {
2278 | "type": "github",
2279 | "url": "https://github.com/sponsors/wooorm"
2280 | }
2281 | },
2282 | "node_modules/tslib": {
2283 | "version": "2.5.2",
2284 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.2.tgz",
2285 | "integrity": "sha512-5svOrSA2w3iGFDs1HibEVBGbDrAY82bFQ3HZ3ixB+88nsbsWQoKqDRb5UBYAUPEzbBn6dAp5gRNXglySbx1MlA=="
2286 | },
2287 | "node_modules/unified": {
2288 | "version": "10.1.2",
2289 | "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz",
2290 | "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==",
2291 | "dependencies": {
2292 | "@types/unist": "^2.0.0",
2293 | "bail": "^2.0.0",
2294 | "extend": "^3.0.0",
2295 | "is-buffer": "^2.0.0",
2296 | "is-plain-obj": "^4.0.0",
2297 | "trough": "^2.0.0",
2298 | "vfile": "^5.0.0"
2299 | },
2300 | "funding": {
2301 | "type": "opencollective",
2302 | "url": "https://opencollective.com/unified"
2303 | }
2304 | },
2305 | "node_modules/unist-util-generated": {
2306 | "version": "2.0.1",
2307 | "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz",
2308 | "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==",
2309 | "funding": {
2310 | "type": "opencollective",
2311 | "url": "https://opencollective.com/unified"
2312 | }
2313 | },
2314 | "node_modules/unist-util-is": {
2315 | "version": "5.2.1",
2316 | "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz",
2317 | "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==",
2318 | "dependencies": {
2319 | "@types/unist": "^2.0.0"
2320 | },
2321 | "funding": {
2322 | "type": "opencollective",
2323 | "url": "https://opencollective.com/unified"
2324 | }
2325 | },
2326 | "node_modules/unist-util-position": {
2327 | "version": "4.0.4",
2328 | "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz",
2329 | "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==",
2330 | "dependencies": {
2331 | "@types/unist": "^2.0.0"
2332 | },
2333 | "funding": {
2334 | "type": "opencollective",
2335 | "url": "https://opencollective.com/unified"
2336 | }
2337 | },
2338 | "node_modules/unist-util-stringify-position": {
2339 | "version": "3.0.3",
2340 | "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz",
2341 | "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==",
2342 | "dependencies": {
2343 | "@types/unist": "^2.0.0"
2344 | },
2345 | "funding": {
2346 | "type": "opencollective",
2347 | "url": "https://opencollective.com/unified"
2348 | }
2349 | },
2350 | "node_modules/unist-util-visit": {
2351 | "version": "4.1.2",
2352 | "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz",
2353 | "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==",
2354 | "dependencies": {
2355 | "@types/unist": "^2.0.0",
2356 | "unist-util-is": "^5.0.0",
2357 | "unist-util-visit-parents": "^5.1.1"
2358 | },
2359 | "funding": {
2360 | "type": "opencollective",
2361 | "url": "https://opencollective.com/unified"
2362 | }
2363 | },
2364 | "node_modules/unist-util-visit-parents": {
2365 | "version": "5.1.3",
2366 | "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz",
2367 | "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==",
2368 | "dependencies": {
2369 | "@types/unist": "^2.0.0",
2370 | "unist-util-is": "^5.0.0"
2371 | },
2372 | "funding": {
2373 | "type": "opencollective",
2374 | "url": "https://opencollective.com/unified"
2375 | }
2376 | },
2377 | "node_modules/util-deprecate": {
2378 | "version": "1.0.2",
2379 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
2380 | "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
2381 | },
2382 | "node_modules/uvu": {
2383 | "version": "0.5.6",
2384 | "resolved": "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz",
2385 | "integrity": "sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==",
2386 | "dependencies": {
2387 | "dequal": "^2.0.0",
2388 | "diff": "^5.0.0",
2389 | "kleur": "^4.0.3",
2390 | "sade": "^1.7.3"
2391 | },
2392 | "bin": {
2393 | "uvu": "bin.js"
2394 | },
2395 | "engines": {
2396 | "node": ">=8"
2397 | }
2398 | },
2399 | "node_modules/vfile": {
2400 | "version": "5.3.7",
2401 | "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz",
2402 | "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==",
2403 | "dependencies": {
2404 | "@types/unist": "^2.0.0",
2405 | "is-buffer": "^2.0.0",
2406 | "unist-util-stringify-position": "^3.0.0",
2407 | "vfile-message": "^3.0.0"
2408 | },
2409 | "funding": {
2410 | "type": "opencollective",
2411 | "url": "https://opencollective.com/unified"
2412 | }
2413 | },
2414 | "node_modules/vfile-message": {
2415 | "version": "3.1.4",
2416 | "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz",
2417 | "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==",
2418 | "dependencies": {
2419 | "@types/unist": "^2.0.0",
2420 | "unist-util-stringify-position": "^3.0.0"
2421 | },
2422 | "funding": {
2423 | "type": "opencollective",
2424 | "url": "https://opencollective.com/unified"
2425 | }
2426 | },
2427 | "node_modules/xtend": {
2428 | "version": "2.1.2",
2429 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz",
2430 | "integrity": "sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ==",
2431 | "dependencies": {
2432 | "object-keys": "~0.4.0"
2433 | },
2434 | "engines": {
2435 | "node": ">=0.4"
2436 | }
2437 | },
2438 | "node_modules/yaml": {
2439 | "version": "1.10.2",
2440 | "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
2441 | "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
2442 | "engines": {
2443 | "node": ">= 6"
2444 | }
2445 | },
2446 | "node_modules/zod": {
2447 | "version": "3.21.4",
2448 | "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz",
2449 | "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==",
2450 | "funding": {
2451 | "url": "https://github.com/sponsors/colinhacks"
2452 | }
2453 | }
2454 | },
2455 | "dependencies": {
2456 | "@babel/code-frame": {
2457 | "version": "7.21.4",
2458 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz",
2459 | "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==",
2460 | "requires": {
2461 | "@babel/highlight": "^7.18.6"
2462 | }
2463 | },
2464 | "@babel/helper-module-imports": {
2465 | "version": "7.21.4",
2466 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz",
2467 | "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==",
2468 | "requires": {
2469 | "@babel/types": "^7.21.4"
2470 | }
2471 | },
2472 | "@babel/helper-string-parser": {
2473 | "version": "7.21.5",
2474 | "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz",
2475 | "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w=="
2476 | },
2477 | "@babel/helper-validator-identifier": {
2478 | "version": "7.19.1",
2479 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz",
2480 | "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w=="
2481 | },
2482 | "@babel/highlight": {
2483 | "version": "7.18.6",
2484 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
2485 | "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
2486 | "requires": {
2487 | "@babel/helper-validator-identifier": "^7.18.6",
2488 | "chalk": "^2.0.0",
2489 | "js-tokens": "^4.0.0"
2490 | }
2491 | },
2492 | "@babel/runtime": {
2493 | "version": "7.22.3",
2494 | "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.3.tgz",
2495 | "integrity": "sha512-XsDuspWKLUsxwCp6r7EhsExHtYfbe5oAGQ19kqngTdCPUoPQzOPdUbD/pB9PJiwb2ptYKQDjSJT3R6dC+EPqfQ==",
2496 | "requires": {
2497 | "regenerator-runtime": "^0.13.11"
2498 | }
2499 | },
2500 | "@babel/types": {
2501 | "version": "7.22.4",
2502 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.4.tgz",
2503 | "integrity": "sha512-Tx9x3UBHTTsMSW85WB2kphxYQVvrZ/t1FxD88IpSgIjiUJlCm9z+xWIDwyo1vffTwSqteqyznB8ZE9vYYk16zA==",
2504 | "requires": {
2505 | "@babel/helper-string-parser": "^7.21.5",
2506 | "@babel/helper-validator-identifier": "^7.19.1",
2507 | "to-fast-properties": "^2.0.0"
2508 | }
2509 | },
2510 | "@emotion/babel-plugin": {
2511 | "version": "11.11.0",
2512 | "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz",
2513 | "integrity": "sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==",
2514 | "requires": {
2515 | "@babel/helper-module-imports": "^7.16.7",
2516 | "@babel/runtime": "^7.18.3",
2517 | "@emotion/hash": "^0.9.1",
2518 | "@emotion/memoize": "^0.8.1",
2519 | "@emotion/serialize": "^1.1.2",
2520 | "babel-plugin-macros": "^3.1.0",
2521 | "convert-source-map": "^1.5.0",
2522 | "escape-string-regexp": "^4.0.0",
2523 | "find-root": "^1.1.0",
2524 | "source-map": "^0.5.7",
2525 | "stylis": "4.2.0"
2526 | }
2527 | },
2528 | "@emotion/cache": {
2529 | "version": "11.11.0",
2530 | "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz",
2531 | "integrity": "sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==",
2532 | "requires": {
2533 | "@emotion/memoize": "^0.8.1",
2534 | "@emotion/sheet": "^1.2.2",
2535 | "@emotion/utils": "^1.2.1",
2536 | "@emotion/weak-memoize": "^0.3.1",
2537 | "stylis": "4.2.0"
2538 | }
2539 | },
2540 | "@emotion/hash": {
2541 | "version": "0.9.1",
2542 | "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz",
2543 | "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ=="
2544 | },
2545 | "@emotion/is-prop-valid": {
2546 | "version": "1.2.1",
2547 | "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz",
2548 | "integrity": "sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==",
2549 | "requires": {
2550 | "@emotion/memoize": "^0.8.1"
2551 | }
2552 | },
2553 | "@emotion/memoize": {
2554 | "version": "0.8.1",
2555 | "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz",
2556 | "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA=="
2557 | },
2558 | "@emotion/react": {
2559 | "version": "11.11.0",
2560 | "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.0.tgz",
2561 | "integrity": "sha512-ZSK3ZJsNkwfjT3JpDAWJZlrGD81Z3ytNDsxw1LKq1o+xkmO5pnWfr6gmCC8gHEFf3nSSX/09YrG67jybNPxSUw==",
2562 | "requires": {
2563 | "@babel/runtime": "^7.18.3",
2564 | "@emotion/babel-plugin": "^11.11.0",
2565 | "@emotion/cache": "^11.11.0",
2566 | "@emotion/serialize": "^1.1.2",
2567 | "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1",
2568 | "@emotion/utils": "^1.2.1",
2569 | "@emotion/weak-memoize": "^0.3.1",
2570 | "hoist-non-react-statics": "^3.3.1"
2571 | }
2572 | },
2573 | "@emotion/serialize": {
2574 | "version": "1.1.2",
2575 | "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.2.tgz",
2576 | "integrity": "sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA==",
2577 | "requires": {
2578 | "@emotion/hash": "^0.9.1",
2579 | "@emotion/memoize": "^0.8.1",
2580 | "@emotion/unitless": "^0.8.1",
2581 | "@emotion/utils": "^1.2.1",
2582 | "csstype": "^3.0.2"
2583 | }
2584 | },
2585 | "@emotion/server": {
2586 | "version": "11.11.0",
2587 | "resolved": "https://registry.npmjs.org/@emotion/server/-/server-11.11.0.tgz",
2588 | "integrity": "sha512-6q89fj2z8VBTx9w93kJ5n51hsmtYuFPtZgnc1L8VzRx9ti4EU6EyvF6Nn1H1x3vcCQCF7u2dB2lY4AYJwUW4PA==",
2589 | "requires": {
2590 | "@emotion/utils": "^1.2.1",
2591 | "html-tokenize": "^2.0.0",
2592 | "multipipe": "^1.0.2",
2593 | "through": "^2.3.8"
2594 | }
2595 | },
2596 | "@emotion/sheet": {
2597 | "version": "1.2.2",
2598 | "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz",
2599 | "integrity": "sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA=="
2600 | },
2601 | "@emotion/styled": {
2602 | "version": "11.11.0",
2603 | "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz",
2604 | "integrity": "sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==",
2605 | "requires": {
2606 | "@babel/runtime": "^7.18.3",
2607 | "@emotion/babel-plugin": "^11.11.0",
2608 | "@emotion/is-prop-valid": "^1.2.1",
2609 | "@emotion/serialize": "^1.1.2",
2610 | "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1",
2611 | "@emotion/utils": "^1.2.1"
2612 | }
2613 | },
2614 | "@emotion/unitless": {
2615 | "version": "0.8.1",
2616 | "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz",
2617 | "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ=="
2618 | },
2619 | "@emotion/use-insertion-effect-with-fallbacks": {
2620 | "version": "1.0.1",
2621 | "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz",
2622 | "integrity": "sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==",
2623 | "requires": {}
2624 | },
2625 | "@emotion/utils": {
2626 | "version": "1.2.1",
2627 | "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz",
2628 | "integrity": "sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg=="
2629 | },
2630 | "@emotion/weak-memoize": {
2631 | "version": "0.3.1",
2632 | "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz",
2633 | "integrity": "sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww=="
2634 | },
2635 | "@fontsource/roboto": {
2636 | "version": "5.0.2",
2637 | "resolved": "https://registry.npmjs.org/@fontsource/roboto/-/roboto-5.0.2.tgz",
2638 | "integrity": "sha512-SLw0o3kWwJ53/Ogyk8GGwSaULNX6Hogs+GsVempDdqpX8wm5hKBLYgUkdUPk+NogiViPp1x++OnkuLA+fAd9Kg=="
2639 | },
2640 | "@mui/base": {
2641 | "version": "5.0.0-beta.3",
2642 | "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.3.tgz",
2643 | "integrity": "sha512-ErOMoGNpgf6BF5W+jgXDiRlXJnpSeg8XSRonuY5UCCMHIlOWtKDtt/LS3qDAbFFGb7tV/y6EBddbcMeexx+zHw==",
2644 | "requires": {
2645 | "@babel/runtime": "^7.21.0",
2646 | "@emotion/is-prop-valid": "^1.2.1",
2647 | "@mui/types": "^7.2.4",
2648 | "@mui/utils": "^5.13.1",
2649 | "@popperjs/core": "^2.11.7",
2650 | "clsx": "^1.2.1",
2651 | "prop-types": "^15.8.1",
2652 | "react-is": "^18.2.0"
2653 | }
2654 | },
2655 | "@mui/core-downloads-tracker": {
2656 | "version": "5.13.3",
2657 | "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.13.3.tgz",
2658 | "integrity": "sha512-w4//nRIi9fiMow/MmhkForOezd8nc229EpSZZ5DzwpJNOmAXwypFTapOUVAGTUQiTJyeZXUNbQqYuUIrIs2nbg=="
2659 | },
2660 | "@mui/icons-material": {
2661 | "version": "5.11.16",
2662 | "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.11.16.tgz",
2663 | "integrity": "sha512-oKkx9z9Kwg40NtcIajF9uOXhxiyTZrrm9nmIJ4UjkU2IdHpd4QVLbCc/5hZN/y0C6qzi2Zlxyr9TGddQx2vx2A==",
2664 | "requires": {
2665 | "@babel/runtime": "^7.21.0"
2666 | }
2667 | },
2668 | "@mui/material": {
2669 | "version": "5.13.3",
2670 | "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.13.3.tgz",
2671 | "integrity": "sha512-10pek+Bz+PZ4rjUf3KTKfXWjPMUqU1nSnRPf4DAXABhsjzelGGfGW/EICgrLRrttYplTJZhoponWALezAge8ug==",
2672 | "requires": {
2673 | "@babel/runtime": "^7.21.0",
2674 | "@mui/base": "5.0.0-beta.3",
2675 | "@mui/core-downloads-tracker": "^5.13.3",
2676 | "@mui/system": "^5.13.2",
2677 | "@mui/types": "^7.2.4",
2678 | "@mui/utils": "^5.13.1",
2679 | "@types/react-transition-group": "^4.4.6",
2680 | "clsx": "^1.2.1",
2681 | "csstype": "^3.1.2",
2682 | "prop-types": "^15.8.1",
2683 | "react-is": "^18.2.0",
2684 | "react-transition-group": "^4.4.5"
2685 | }
2686 | },
2687 | "@mui/private-theming": {
2688 | "version": "5.13.1",
2689 | "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.13.1.tgz",
2690 | "integrity": "sha512-HW4npLUD9BAkVppOUZHeO1FOKUJWAwbpy0VQoGe3McUYTlck1HezGHQCfBQ5S/Nszi7EViqiimECVl9xi+/WjQ==",
2691 | "requires": {
2692 | "@babel/runtime": "^7.21.0",
2693 | "@mui/utils": "^5.13.1",
2694 | "prop-types": "^15.8.1"
2695 | }
2696 | },
2697 | "@mui/styled-engine": {
2698 | "version": "5.13.2",
2699 | "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.13.2.tgz",
2700 | "integrity": "sha512-VCYCU6xVtXOrIN8lcbuPmoG+u7FYuOERG++fpY74hPpEWkyFQG97F+/XfTQVYzlR2m7nPjnwVUgATcTCMEaMvw==",
2701 | "requires": {
2702 | "@babel/runtime": "^7.21.0",
2703 | "@emotion/cache": "^11.11.0",
2704 | "csstype": "^3.1.2",
2705 | "prop-types": "^15.8.1"
2706 | }
2707 | },
2708 | "@mui/system": {
2709 | "version": "5.13.2",
2710 | "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.13.2.tgz",
2711 | "integrity": "sha512-TPyWmRJPt0JPVxacZISI4o070xEJ7ftxpVtu6LWuYVOUOINlhoGOclam4iV8PDT3EMQEHuUrwU49po34UdWLlw==",
2712 | "requires": {
2713 | "@babel/runtime": "^7.21.0",
2714 | "@mui/private-theming": "^5.13.1",
2715 | "@mui/styled-engine": "^5.13.2",
2716 | "@mui/types": "^7.2.4",
2717 | "@mui/utils": "^5.13.1",
2718 | "clsx": "^1.2.1",
2719 | "csstype": "^3.1.2",
2720 | "prop-types": "^15.8.1"
2721 | }
2722 | },
2723 | "@mui/types": {
2724 | "version": "7.2.4",
2725 | "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.4.tgz",
2726 | "integrity": "sha512-LBcwa8rN84bKF+f5sDyku42w1NTxaPgPyYKODsh01U1fVstTClbUoSA96oyRBnSNyEiAVjKm6Gwx9vjR+xyqHA==",
2727 | "requires": {}
2728 | },
2729 | "@mui/utils": {
2730 | "version": "5.13.1",
2731 | "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.13.1.tgz",
2732 | "integrity": "sha512-6lXdWwmlUbEU2jUI8blw38Kt+3ly7xkmV9ljzY4Q20WhsJMWiNry9CX8M+TaP/HbtuyR8XKsdMgQW7h7MM3n3A==",
2733 | "requires": {
2734 | "@babel/runtime": "^7.21.0",
2735 | "@types/prop-types": "^15.7.5",
2736 | "@types/react-is": "^18.2.0",
2737 | "prop-types": "^15.8.1",
2738 | "react-is": "^18.2.0"
2739 | }
2740 | },
2741 | "@next/env": {
2742 | "version": "13.4.4",
2743 | "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.4.tgz",
2744 | "integrity": "sha512-q/y7VZj/9YpgzDe64Zi6rY1xPizx80JjlU2BTevlajtaE3w1LqweH1gGgxou2N7hdFosXHjGrI4OUvtFXXhGLg=="
2745 | },
2746 | "@next/swc-darwin-arm64": {
2747 | "version": "13.4.4",
2748 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.4.tgz",
2749 | "integrity": "sha512-xfjgXvp4KalNUKZMHmsFxr1Ug+aGmmO6NWP0uoh4G3WFqP/mJ1xxfww0gMOeMeSq/Jyr5k7DvoZ2Pv+XOITTtw==",
2750 | "optional": true
2751 | },
2752 | "@next/swc-darwin-x64": {
2753 | "version": "13.4.4",
2754 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.4.tgz",
2755 | "integrity": "sha512-ZY9Ti1hkIwJsxGus3nlubIkvYyB0gNOYxKrfsOrLEqD0I2iCX8D7w8v6QQZ2H+dDl6UT29oeEUdDUNGk4UEpfg==",
2756 | "optional": true
2757 | },
2758 | "@next/swc-linux-arm64-gnu": {
2759 | "version": "13.4.4",
2760 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.4.tgz",
2761 | "integrity": "sha512-+KZnDeMShYkpkqAvGCEDeqYTRADJXc6SY1jWXz+Uo6qWQO/Jd9CoyhTJwRSxvQA16MoYzvILkGaDqirkRNctyA==",
2762 | "optional": true
2763 | },
2764 | "@next/swc-linux-arm64-musl": {
2765 | "version": "13.4.4",
2766 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.4.tgz",
2767 | "integrity": "sha512-evC1twrny2XDT4uOftoubZvW3EG0zs0ZxMwEtu/dDGVRO5n5pT48S8qqEIBGBUZYu/Xx4zzpOkIxx1vpWdE+9A==",
2768 | "optional": true
2769 | },
2770 | "@next/swc-linux-x64-gnu": {
2771 | "version": "13.4.4",
2772 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.4.tgz",
2773 | "integrity": "sha512-PX706XcCHr2FfkyhP2lpf+pX/tUvq6/ke7JYnnr0ykNdEMo+sb7cC/o91gnURh4sPYSiZJhsF2gbIqg9rciOHQ==",
2774 | "optional": true
2775 | },
2776 | "@next/swc-linux-x64-musl": {
2777 | "version": "13.4.4",
2778 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.4.tgz",
2779 | "integrity": "sha512-TKUUx3Ftd95JlHV6XagEnqpT204Y+IsEa3awaYIjayn0MOGjgKZMZibqarK3B1FsMSPaieJf2FEAcu9z0yT5aA==",
2780 | "optional": true
2781 | },
2782 | "@next/swc-win32-arm64-msvc": {
2783 | "version": "13.4.4",
2784 | "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.4.tgz",
2785 | "integrity": "sha512-FP8AadgSq4+HPtim7WBkCMGbhr5vh9FePXiWx9+YOdjwdQocwoCK5ZVC3OW8oh3TWth6iJ0AXJ/yQ1q1cwSZ3A==",
2786 | "optional": true
2787 | },
2788 | "@next/swc-win32-ia32-msvc": {
2789 | "version": "13.4.4",
2790 | "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.4.tgz",
2791 | "integrity": "sha512-3WekVmtuA2MCdcAOrgrI+PuFiFURtSyyrN1I3UPtS0ckR2HtLqyqmS334Eulf15g1/bdwMteePdK363X/Y9JMg==",
2792 | "optional": true
2793 | },
2794 | "@next/swc-win32-x64-msvc": {
2795 | "version": "13.4.4",
2796 | "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.4.tgz",
2797 | "integrity": "sha512-AHRITu/CrlQ+qzoqQtEMfaTu7GHaQ6bziQln/pVWpOYC1wU+Mq6VQQFlsDtMCnDztPZtppAXdvvbNS7pcfRzlw==",
2798 | "optional": true
2799 | },
2800 | "@popperjs/core": {
2801 | "version": "2.11.8",
2802 | "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
2803 | "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A=="
2804 | },
2805 | "@swc/helpers": {
2806 | "version": "0.5.1",
2807 | "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz",
2808 | "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==",
2809 | "requires": {
2810 | "tslib": "^2.4.0"
2811 | }
2812 | },
2813 | "@types/debug": {
2814 | "version": "4.1.8",
2815 | "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.8.tgz",
2816 | "integrity": "sha512-/vPO1EPOs306Cvhwv7KfVfYvOJqA/S/AXjaHQiJboCZzcNDb+TIJFN9/2C9DZ//ijSKWioNyUxD792QmDJ+HKQ==",
2817 | "requires": {
2818 | "@types/ms": "*"
2819 | }
2820 | },
2821 | "@types/hast": {
2822 | "version": "2.3.4",
2823 | "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz",
2824 | "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==",
2825 | "requires": {
2826 | "@types/unist": "*"
2827 | }
2828 | },
2829 | "@types/mdast": {
2830 | "version": "3.0.11",
2831 | "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.11.tgz",
2832 | "integrity": "sha512-Y/uImid8aAwrEA24/1tcRZwpxX3pIFTSilcNDKSPn+Y2iDywSEachzRuvgAYYLR3wpGXAsMbv5lvKLDZLeYPAw==",
2833 | "requires": {
2834 | "@types/unist": "*"
2835 | }
2836 | },
2837 | "@types/ms": {
2838 | "version": "0.7.31",
2839 | "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz",
2840 | "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA=="
2841 | },
2842 | "@types/parse-json": {
2843 | "version": "4.0.0",
2844 | "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
2845 | "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA=="
2846 | },
2847 | "@types/prop-types": {
2848 | "version": "15.7.5",
2849 | "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
2850 | "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
2851 | },
2852 | "@types/react": {
2853 | "version": "18.2.8",
2854 | "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.8.tgz",
2855 | "integrity": "sha512-lTyWUNrd8ntVkqycEEplasWy2OxNlShj3zqS0LuB1ENUGis5HodmhM7DtCoUGbxj3VW/WsGA0DUhpG6XrM7gPA==",
2856 | "requires": {
2857 | "@types/prop-types": "*",
2858 | "@types/scheduler": "*",
2859 | "csstype": "^3.0.2"
2860 | }
2861 | },
2862 | "@types/react-is": {
2863 | "version": "18.2.0",
2864 | "resolved": "https://registry.npmjs.org/@types/react-is/-/react-is-18.2.0.tgz",
2865 | "integrity": "sha512-1vz2yObaQkLL7YFe/pme2cpvDsCwI1WXIfL+5eLz0MI9gFG24Re16RzUsI8t9XZn9ZWvgLNDrJBmrqXJO7GNQQ==",
2866 | "requires": {
2867 | "@types/react": "*"
2868 | }
2869 | },
2870 | "@types/react-transition-group": {
2871 | "version": "4.4.6",
2872 | "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.6.tgz",
2873 | "integrity": "sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew==",
2874 | "requires": {
2875 | "@types/react": "*"
2876 | }
2877 | },
2878 | "@types/scheduler": {
2879 | "version": "0.16.3",
2880 | "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz",
2881 | "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ=="
2882 | },
2883 | "@types/unist": {
2884 | "version": "2.0.6",
2885 | "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz",
2886 | "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ=="
2887 | },
2888 | "ansi-styles": {
2889 | "version": "3.2.1",
2890 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
2891 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
2892 | "requires": {
2893 | "color-convert": "^1.9.0"
2894 | }
2895 | },
2896 | "asynckit": {
2897 | "version": "0.4.0",
2898 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
2899 | "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
2900 | },
2901 | "axios": {
2902 | "version": "1.4.0",
2903 | "resolved": "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz",
2904 | "integrity": "sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==",
2905 | "requires": {
2906 | "follow-redirects": "^1.15.0",
2907 | "form-data": "^4.0.0",
2908 | "proxy-from-env": "^1.1.0"
2909 | }
2910 | },
2911 | "babel-plugin-macros": {
2912 | "version": "3.1.0",
2913 | "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz",
2914 | "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==",
2915 | "requires": {
2916 | "@babel/runtime": "^7.12.5",
2917 | "cosmiconfig": "^7.0.0",
2918 | "resolve": "^1.19.0"
2919 | }
2920 | },
2921 | "bail": {
2922 | "version": "2.0.2",
2923 | "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz",
2924 | "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw=="
2925 | },
2926 | "buffer-from": {
2927 | "version": "0.1.2",
2928 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-0.1.2.tgz",
2929 | "integrity": "sha512-RiWIenusJsmI2KcvqQABB83tLxCByE3upSP8QU3rJDMVFGPWLvPQJt/O1Su9moRWeH7d+Q2HYb68f6+v+tw2vg=="
2930 | },
2931 | "busboy": {
2932 | "version": "1.6.0",
2933 | "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
2934 | "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
2935 | "requires": {
2936 | "streamsearch": "^1.1.0"
2937 | }
2938 | },
2939 | "callsites": {
2940 | "version": "3.1.0",
2941 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
2942 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="
2943 | },
2944 | "caniuse-lite": {
2945 | "version": "1.0.30001492",
2946 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001492.tgz",
2947 | "integrity": "sha512-2efF8SAZwgAX1FJr87KWhvuJxnGJKOnctQa8xLOskAXNXq8oiuqgl6u1kk3fFpsp3GgvzlRjiK1sl63hNtFADw=="
2948 | },
2949 | "chalk": {
2950 | "version": "2.4.2",
2951 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
2952 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
2953 | "requires": {
2954 | "ansi-styles": "^3.2.1",
2955 | "escape-string-regexp": "^1.0.5",
2956 | "supports-color": "^5.3.0"
2957 | },
2958 | "dependencies": {
2959 | "escape-string-regexp": {
2960 | "version": "1.0.5",
2961 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
2962 | "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg=="
2963 | }
2964 | }
2965 | },
2966 | "character-entities": {
2967 | "version": "2.0.2",
2968 | "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz",
2969 | "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ=="
2970 | },
2971 | "client-only": {
2972 | "version": "0.0.1",
2973 | "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
2974 | "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
2975 | },
2976 | "clsx": {
2977 | "version": "1.2.1",
2978 | "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz",
2979 | "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg=="
2980 | },
2981 | "color-convert": {
2982 | "version": "1.9.3",
2983 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
2984 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
2985 | "requires": {
2986 | "color-name": "1.1.3"
2987 | }
2988 | },
2989 | "color-name": {
2990 | "version": "1.1.3",
2991 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
2992 | "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
2993 | },
2994 | "combined-stream": {
2995 | "version": "1.0.8",
2996 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
2997 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
2998 | "requires": {
2999 | "delayed-stream": "~1.0.0"
3000 | }
3001 | },
3002 | "comma-separated-tokens": {
3003 | "version": "2.0.3",
3004 | "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz",
3005 | "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg=="
3006 | },
3007 | "convert-source-map": {
3008 | "version": "1.9.0",
3009 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz",
3010 | "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A=="
3011 | },
3012 | "core-util-is": {
3013 | "version": "1.0.3",
3014 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
3015 | "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="
3016 | },
3017 | "cosmiconfig": {
3018 | "version": "7.1.0",
3019 | "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
3020 | "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
3021 | "requires": {
3022 | "@types/parse-json": "^4.0.0",
3023 | "import-fresh": "^3.2.1",
3024 | "parse-json": "^5.0.0",
3025 | "path-type": "^4.0.0",
3026 | "yaml": "^1.10.0"
3027 | }
3028 | },
3029 | "csstype": {
3030 | "version": "3.1.2",
3031 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
3032 | "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
3033 | },
3034 | "debug": {
3035 | "version": "4.3.4",
3036 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
3037 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
3038 | "requires": {
3039 | "ms": "2.1.2"
3040 | }
3041 | },
3042 | "decode-named-character-reference": {
3043 | "version": "1.0.2",
3044 | "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz",
3045 | "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==",
3046 | "requires": {
3047 | "character-entities": "^2.0.0"
3048 | }
3049 | },
3050 | "delayed-stream": {
3051 | "version": "1.0.0",
3052 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
3053 | "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
3054 | },
3055 | "dequal": {
3056 | "version": "2.0.3",
3057 | "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
3058 | "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA=="
3059 | },
3060 | "diff": {
3061 | "version": "5.1.0",
3062 | "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz",
3063 | "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw=="
3064 | },
3065 | "dom-helpers": {
3066 | "version": "5.2.1",
3067 | "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz",
3068 | "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==",
3069 | "requires": {
3070 | "@babel/runtime": "^7.8.7",
3071 | "csstype": "^3.0.2"
3072 | }
3073 | },
3074 | "duplexer2": {
3075 | "version": "0.1.4",
3076 | "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
3077 | "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==",
3078 | "requires": {
3079 | "readable-stream": "^2.0.2"
3080 | },
3081 | "dependencies": {
3082 | "isarray": {
3083 | "version": "1.0.0",
3084 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
3085 | "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ=="
3086 | },
3087 | "readable-stream": {
3088 | "version": "2.3.8",
3089 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
3090 | "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
3091 | "requires": {
3092 | "core-util-is": "~1.0.0",
3093 | "inherits": "~2.0.3",
3094 | "isarray": "~1.0.0",
3095 | "process-nextick-args": "~2.0.0",
3096 | "safe-buffer": "~5.1.1",
3097 | "string_decoder": "~1.1.1",
3098 | "util-deprecate": "~1.0.1"
3099 | }
3100 | },
3101 | "string_decoder": {
3102 | "version": "1.1.1",
3103 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
3104 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
3105 | "requires": {
3106 | "safe-buffer": "~5.1.0"
3107 | }
3108 | }
3109 | }
3110 | },
3111 | "error-ex": {
3112 | "version": "1.3.2",
3113 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
3114 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
3115 | "requires": {
3116 | "is-arrayish": "^0.2.1"
3117 | }
3118 | },
3119 | "escape-string-regexp": {
3120 | "version": "4.0.0",
3121 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
3122 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="
3123 | },
3124 | "extend": {
3125 | "version": "3.0.2",
3126 | "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
3127 | "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
3128 | },
3129 | "find-root": {
3130 | "version": "1.1.0",
3131 | "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
3132 | "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng=="
3133 | },
3134 | "follow-redirects": {
3135 | "version": "1.15.2",
3136 | "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz",
3137 | "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA=="
3138 | },
3139 | "form-data": {
3140 | "version": "4.0.0",
3141 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
3142 | "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
3143 | "requires": {
3144 | "asynckit": "^0.4.0",
3145 | "combined-stream": "^1.0.8",
3146 | "mime-types": "^2.1.12"
3147 | }
3148 | },
3149 | "function-bind": {
3150 | "version": "1.1.1",
3151 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
3152 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
3153 | },
3154 | "has": {
3155 | "version": "1.0.3",
3156 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
3157 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
3158 | "requires": {
3159 | "function-bind": "^1.1.1"
3160 | }
3161 | },
3162 | "has-flag": {
3163 | "version": "3.0.0",
3164 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
3165 | "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw=="
3166 | },
3167 | "hast-util-whitespace": {
3168 | "version": "2.0.1",
3169 | "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz",
3170 | "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng=="
3171 | },
3172 | "hoist-non-react-statics": {
3173 | "version": "3.3.2",
3174 | "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
3175 | "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
3176 | "requires": {
3177 | "react-is": "^16.7.0"
3178 | },
3179 | "dependencies": {
3180 | "react-is": {
3181 | "version": "16.13.1",
3182 | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
3183 | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
3184 | }
3185 | }
3186 | },
3187 | "html-tokenize": {
3188 | "version": "2.0.1",
3189 | "resolved": "https://registry.npmjs.org/html-tokenize/-/html-tokenize-2.0.1.tgz",
3190 | "integrity": "sha512-QY6S+hZ0f5m1WT8WffYN+Hg+xm/w5I8XeUcAq/ZYP5wVC8xbKi4Whhru3FtrAebD5EhBW8rmFzkDI6eCAuFe2w==",
3191 | "requires": {
3192 | "buffer-from": "~0.1.1",
3193 | "inherits": "~2.0.1",
3194 | "minimist": "~1.2.5",
3195 | "readable-stream": "~1.0.27-1",
3196 | "through2": "~0.4.1"
3197 | }
3198 | },
3199 | "import-fresh": {
3200 | "version": "3.3.0",
3201 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
3202 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
3203 | "requires": {
3204 | "parent-module": "^1.0.0",
3205 | "resolve-from": "^4.0.0"
3206 | }
3207 | },
3208 | "inherits": {
3209 | "version": "2.0.4",
3210 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
3211 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
3212 | },
3213 | "inline-style-parser": {
3214 | "version": "0.1.1",
3215 | "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz",
3216 | "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q=="
3217 | },
3218 | "is-arrayish": {
3219 | "version": "0.2.1",
3220 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
3221 | "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="
3222 | },
3223 | "is-buffer": {
3224 | "version": "2.0.5",
3225 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz",
3226 | "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ=="
3227 | },
3228 | "is-core-module": {
3229 | "version": "2.12.1",
3230 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz",
3231 | "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==",
3232 | "requires": {
3233 | "has": "^1.0.3"
3234 | }
3235 | },
3236 | "is-plain-obj": {
3237 | "version": "4.1.0",
3238 | "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz",
3239 | "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg=="
3240 | },
3241 | "isarray": {
3242 | "version": "0.0.1",
3243 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
3244 | "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ=="
3245 | },
3246 | "js-tokens": {
3247 | "version": "4.0.0",
3248 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
3249 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
3250 | },
3251 | "json-parse-even-better-errors": {
3252 | "version": "2.3.1",
3253 | "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
3254 | "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
3255 | },
3256 | "kleur": {
3257 | "version": "4.1.5",
3258 | "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz",
3259 | "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ=="
3260 | },
3261 | "lines-and-columns": {
3262 | "version": "1.2.4",
3263 | "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
3264 | "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
3265 | },
3266 | "loose-envify": {
3267 | "version": "1.4.0",
3268 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
3269 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
3270 | "requires": {
3271 | "js-tokens": "^3.0.0 || ^4.0.0"
3272 | }
3273 | },
3274 | "mdast-util-definitions": {
3275 | "version": "5.1.2",
3276 | "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz",
3277 | "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==",
3278 | "requires": {
3279 | "@types/mdast": "^3.0.0",
3280 | "@types/unist": "^2.0.0",
3281 | "unist-util-visit": "^4.0.0"
3282 | }
3283 | },
3284 | "mdast-util-from-markdown": {
3285 | "version": "1.3.1",
3286 | "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz",
3287 | "integrity": "sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==",
3288 | "requires": {
3289 | "@types/mdast": "^3.0.0",
3290 | "@types/unist": "^2.0.0",
3291 | "decode-named-character-reference": "^1.0.0",
3292 | "mdast-util-to-string": "^3.1.0",
3293 | "micromark": "^3.0.0",
3294 | "micromark-util-decode-numeric-character-reference": "^1.0.0",
3295 | "micromark-util-decode-string": "^1.0.0",
3296 | "micromark-util-normalize-identifier": "^1.0.0",
3297 | "micromark-util-symbol": "^1.0.0",
3298 | "micromark-util-types": "^1.0.0",
3299 | "unist-util-stringify-position": "^3.0.0",
3300 | "uvu": "^0.5.0"
3301 | }
3302 | },
3303 | "mdast-util-to-hast": {
3304 | "version": "12.3.0",
3305 | "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz",
3306 | "integrity": "sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==",
3307 | "requires": {
3308 | "@types/hast": "^2.0.0",
3309 | "@types/mdast": "^3.0.0",
3310 | "mdast-util-definitions": "^5.0.0",
3311 | "micromark-util-sanitize-uri": "^1.1.0",
3312 | "trim-lines": "^3.0.0",
3313 | "unist-util-generated": "^2.0.0",
3314 | "unist-util-position": "^4.0.0",
3315 | "unist-util-visit": "^4.0.0"
3316 | }
3317 | },
3318 | "mdast-util-to-string": {
3319 | "version": "3.2.0",
3320 | "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz",
3321 | "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==",
3322 | "requires": {
3323 | "@types/mdast": "^3.0.0"
3324 | }
3325 | },
3326 | "micromark": {
3327 | "version": "3.2.0",
3328 | "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.2.0.tgz",
3329 | "integrity": "sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==",
3330 | "requires": {
3331 | "@types/debug": "^4.0.0",
3332 | "debug": "^4.0.0",
3333 | "decode-named-character-reference": "^1.0.0",
3334 | "micromark-core-commonmark": "^1.0.1",
3335 | "micromark-factory-space": "^1.0.0",
3336 | "micromark-util-character": "^1.0.0",
3337 | "micromark-util-chunked": "^1.0.0",
3338 | "micromark-util-combine-extensions": "^1.0.0",
3339 | "micromark-util-decode-numeric-character-reference": "^1.0.0",
3340 | "micromark-util-encode": "^1.0.0",
3341 | "micromark-util-normalize-identifier": "^1.0.0",
3342 | "micromark-util-resolve-all": "^1.0.0",
3343 | "micromark-util-sanitize-uri": "^1.0.0",
3344 | "micromark-util-subtokenize": "^1.0.0",
3345 | "micromark-util-symbol": "^1.0.0",
3346 | "micromark-util-types": "^1.0.1",
3347 | "uvu": "^0.5.0"
3348 | }
3349 | },
3350 | "micromark-core-commonmark": {
3351 | "version": "1.1.0",
3352 | "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz",
3353 | "integrity": "sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==",
3354 | "requires": {
3355 | "decode-named-character-reference": "^1.0.0",
3356 | "micromark-factory-destination": "^1.0.0",
3357 | "micromark-factory-label": "^1.0.0",
3358 | "micromark-factory-space": "^1.0.0",
3359 | "micromark-factory-title": "^1.0.0",
3360 | "micromark-factory-whitespace": "^1.0.0",
3361 | "micromark-util-character": "^1.0.0",
3362 | "micromark-util-chunked": "^1.0.0",
3363 | "micromark-util-classify-character": "^1.0.0",
3364 | "micromark-util-html-tag-name": "^1.0.0",
3365 | "micromark-util-normalize-identifier": "^1.0.0",
3366 | "micromark-util-resolve-all": "^1.0.0",
3367 | "micromark-util-subtokenize": "^1.0.0",
3368 | "micromark-util-symbol": "^1.0.0",
3369 | "micromark-util-types": "^1.0.1",
3370 | "uvu": "^0.5.0"
3371 | }
3372 | },
3373 | "micromark-factory-destination": {
3374 | "version": "1.1.0",
3375 | "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz",
3376 | "integrity": "sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==",
3377 | "requires": {
3378 | "micromark-util-character": "^1.0.0",
3379 | "micromark-util-symbol": "^1.0.0",
3380 | "micromark-util-types": "^1.0.0"
3381 | }
3382 | },
3383 | "micromark-factory-label": {
3384 | "version": "1.1.0",
3385 | "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz",
3386 | "integrity": "sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==",
3387 | "requires": {
3388 | "micromark-util-character": "^1.0.0",
3389 | "micromark-util-symbol": "^1.0.0",
3390 | "micromark-util-types": "^1.0.0",
3391 | "uvu": "^0.5.0"
3392 | }
3393 | },
3394 | "micromark-factory-space": {
3395 | "version": "1.1.0",
3396 | "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz",
3397 | "integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==",
3398 | "requires": {
3399 | "micromark-util-character": "^1.0.0",
3400 | "micromark-util-types": "^1.0.0"
3401 | }
3402 | },
3403 | "micromark-factory-title": {
3404 | "version": "1.1.0",
3405 | "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz",
3406 | "integrity": "sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==",
3407 | "requires": {
3408 | "micromark-factory-space": "^1.0.0",
3409 | "micromark-util-character": "^1.0.0",
3410 | "micromark-util-symbol": "^1.0.0",
3411 | "micromark-util-types": "^1.0.0"
3412 | }
3413 | },
3414 | "micromark-factory-whitespace": {
3415 | "version": "1.1.0",
3416 | "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz",
3417 | "integrity": "sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==",
3418 | "requires": {
3419 | "micromark-factory-space": "^1.0.0",
3420 | "micromark-util-character": "^1.0.0",
3421 | "micromark-util-symbol": "^1.0.0",
3422 | "micromark-util-types": "^1.0.0"
3423 | }
3424 | },
3425 | "micromark-util-character": {
3426 | "version": "1.2.0",
3427 | "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz",
3428 | "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==",
3429 | "requires": {
3430 | "micromark-util-symbol": "^1.0.0",
3431 | "micromark-util-types": "^1.0.0"
3432 | }
3433 | },
3434 | "micromark-util-chunked": {
3435 | "version": "1.1.0",
3436 | "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz",
3437 | "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==",
3438 | "requires": {
3439 | "micromark-util-symbol": "^1.0.0"
3440 | }
3441 | },
3442 | "micromark-util-classify-character": {
3443 | "version": "1.1.0",
3444 | "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz",
3445 | "integrity": "sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==",
3446 | "requires": {
3447 | "micromark-util-character": "^1.0.0",
3448 | "micromark-util-symbol": "^1.0.0",
3449 | "micromark-util-types": "^1.0.0"
3450 | }
3451 | },
3452 | "micromark-util-combine-extensions": {
3453 | "version": "1.1.0",
3454 | "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz",
3455 | "integrity": "sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==",
3456 | "requires": {
3457 | "micromark-util-chunked": "^1.0.0",
3458 | "micromark-util-types": "^1.0.0"
3459 | }
3460 | },
3461 | "micromark-util-decode-numeric-character-reference": {
3462 | "version": "1.1.0",
3463 | "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz",
3464 | "integrity": "sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==",
3465 | "requires": {
3466 | "micromark-util-symbol": "^1.0.0"
3467 | }
3468 | },
3469 | "micromark-util-decode-string": {
3470 | "version": "1.1.0",
3471 | "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz",
3472 | "integrity": "sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==",
3473 | "requires": {
3474 | "decode-named-character-reference": "^1.0.0",
3475 | "micromark-util-character": "^1.0.0",
3476 | "micromark-util-decode-numeric-character-reference": "^1.0.0",
3477 | "micromark-util-symbol": "^1.0.0"
3478 | }
3479 | },
3480 | "micromark-util-encode": {
3481 | "version": "1.1.0",
3482 | "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz",
3483 | "integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw=="
3484 | },
3485 | "micromark-util-html-tag-name": {
3486 | "version": "1.2.0",
3487 | "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz",
3488 | "integrity": "sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q=="
3489 | },
3490 | "micromark-util-normalize-identifier": {
3491 | "version": "1.1.0",
3492 | "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz",
3493 | "integrity": "sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==",
3494 | "requires": {
3495 | "micromark-util-symbol": "^1.0.0"
3496 | }
3497 | },
3498 | "micromark-util-resolve-all": {
3499 | "version": "1.1.0",
3500 | "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz",
3501 | "integrity": "sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==",
3502 | "requires": {
3503 | "micromark-util-types": "^1.0.0"
3504 | }
3505 | },
3506 | "micromark-util-sanitize-uri": {
3507 | "version": "1.2.0",
3508 | "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz",
3509 | "integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==",
3510 | "requires": {
3511 | "micromark-util-character": "^1.0.0",
3512 | "micromark-util-encode": "^1.0.0",
3513 | "micromark-util-symbol": "^1.0.0"
3514 | }
3515 | },
3516 | "micromark-util-subtokenize": {
3517 | "version": "1.1.0",
3518 | "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz",
3519 | "integrity": "sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==",
3520 | "requires": {
3521 | "micromark-util-chunked": "^1.0.0",
3522 | "micromark-util-symbol": "^1.0.0",
3523 | "micromark-util-types": "^1.0.0",
3524 | "uvu": "^0.5.0"
3525 | }
3526 | },
3527 | "micromark-util-symbol": {
3528 | "version": "1.1.0",
3529 | "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz",
3530 | "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag=="
3531 | },
3532 | "micromark-util-types": {
3533 | "version": "1.1.0",
3534 | "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz",
3535 | "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg=="
3536 | },
3537 | "mime-db": {
3538 | "version": "1.52.0",
3539 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
3540 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
3541 | },
3542 | "mime-types": {
3543 | "version": "2.1.35",
3544 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
3545 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
3546 | "requires": {
3547 | "mime-db": "1.52.0"
3548 | }
3549 | },
3550 | "minimist": {
3551 | "version": "1.2.8",
3552 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
3553 | "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="
3554 | },
3555 | "mri": {
3556 | "version": "1.2.0",
3557 | "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
3558 | "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA=="
3559 | },
3560 | "ms": {
3561 | "version": "2.1.2",
3562 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
3563 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
3564 | },
3565 | "multipipe": {
3566 | "version": "1.0.2",
3567 | "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-1.0.2.tgz",
3568 | "integrity": "sha512-6uiC9OvY71vzSGX8lZvSqscE7ft9nPupJ8fMjrCNRAUy2LREUW42UL+V/NTrogr6rFgRydUrCX4ZitfpSNkSCQ==",
3569 | "requires": {
3570 | "duplexer2": "^0.1.2",
3571 | "object-assign": "^4.1.0"
3572 | }
3573 | },
3574 | "nanoid": {
3575 | "version": "3.3.6",
3576 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
3577 | "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA=="
3578 | },
3579 | "next": {
3580 | "version": "13.4.4",
3581 | "resolved": "https://registry.npmjs.org/next/-/next-13.4.4.tgz",
3582 | "integrity": "sha512-C5S0ysM0Ily9McL4Jb48nOQHT1BukOWI59uC3X/xCMlYIh9rJZCv7nzG92J6e1cOBqQbKovlpgvHWFmz4eKKEA==",
3583 | "requires": {
3584 | "@next/env": "13.4.4",
3585 | "@next/swc-darwin-arm64": "13.4.4",
3586 | "@next/swc-darwin-x64": "13.4.4",
3587 | "@next/swc-linux-arm64-gnu": "13.4.4",
3588 | "@next/swc-linux-arm64-musl": "13.4.4",
3589 | "@next/swc-linux-x64-gnu": "13.4.4",
3590 | "@next/swc-linux-x64-musl": "13.4.4",
3591 | "@next/swc-win32-arm64-msvc": "13.4.4",
3592 | "@next/swc-win32-ia32-msvc": "13.4.4",
3593 | "@next/swc-win32-x64-msvc": "13.4.4",
3594 | "@swc/helpers": "0.5.1",
3595 | "busboy": "1.6.0",
3596 | "caniuse-lite": "^1.0.30001406",
3597 | "postcss": "8.4.14",
3598 | "styled-jsx": "5.1.1",
3599 | "zod": "3.21.4"
3600 | }
3601 | },
3602 | "object-assign": {
3603 | "version": "4.1.1",
3604 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
3605 | "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="
3606 | },
3607 | "object-keys": {
3608 | "version": "0.4.0",
3609 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz",
3610 | "integrity": "sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw=="
3611 | },
3612 | "papaparse": {
3613 | "version": "5.4.1",
3614 | "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.1.tgz",
3615 | "integrity": "sha512-HipMsgJkZu8br23pW15uvo6sib6wne/4woLZPlFf3rpDyMe9ywEXUsuD7+6K9PRkJlVT51j/sCOYDKGGS3ZJrw=="
3616 | },
3617 | "parent-module": {
3618 | "version": "1.0.1",
3619 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
3620 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
3621 | "requires": {
3622 | "callsites": "^3.0.0"
3623 | }
3624 | },
3625 | "parse-json": {
3626 | "version": "5.2.0",
3627 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
3628 | "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
3629 | "requires": {
3630 | "@babel/code-frame": "^7.0.0",
3631 | "error-ex": "^1.3.1",
3632 | "json-parse-even-better-errors": "^2.3.0",
3633 | "lines-and-columns": "^1.1.6"
3634 | }
3635 | },
3636 | "path-parse": {
3637 | "version": "1.0.7",
3638 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
3639 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
3640 | },
3641 | "path-type": {
3642 | "version": "4.0.0",
3643 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
3644 | "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
3645 | },
3646 | "picocolors": {
3647 | "version": "1.0.0",
3648 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
3649 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
3650 | },
3651 | "postcss": {
3652 | "version": "8.4.14",
3653 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
3654 | "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
3655 | "requires": {
3656 | "nanoid": "^3.3.4",
3657 | "picocolors": "^1.0.0",
3658 | "source-map-js": "^1.0.2"
3659 | }
3660 | },
3661 | "process-nextick-args": {
3662 | "version": "2.0.1",
3663 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
3664 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
3665 | },
3666 | "prop-types": {
3667 | "version": "15.8.1",
3668 | "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
3669 | "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
3670 | "requires": {
3671 | "loose-envify": "^1.4.0",
3672 | "object-assign": "^4.1.1",
3673 | "react-is": "^16.13.1"
3674 | },
3675 | "dependencies": {
3676 | "react-is": {
3677 | "version": "16.13.1",
3678 | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
3679 | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
3680 | }
3681 | }
3682 | },
3683 | "property-information": {
3684 | "version": "6.2.0",
3685 | "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz",
3686 | "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg=="
3687 | },
3688 | "proxy-from-env": {
3689 | "version": "1.1.0",
3690 | "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
3691 | "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
3692 | },
3693 | "react": {
3694 | "version": "18.2.0",
3695 | "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz",
3696 | "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==",
3697 | "requires": {
3698 | "loose-envify": "^1.1.0"
3699 | }
3700 | },
3701 | "react-dom": {
3702 | "version": "18.2.0",
3703 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz",
3704 | "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==",
3705 | "requires": {
3706 | "loose-envify": "^1.1.0",
3707 | "scheduler": "^0.23.0"
3708 | }
3709 | },
3710 | "react-is": {
3711 | "version": "18.2.0",
3712 | "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz",
3713 | "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w=="
3714 | },
3715 | "react-markdown": {
3716 | "version": "8.0.7",
3717 | "resolved": "https://registry.npmjs.org/react-markdown/-/react-markdown-8.0.7.tgz",
3718 | "integrity": "sha512-bvWbzG4MtOU62XqBx3Xx+zB2raaFFsq4mYiAzfjXJMEz2sixgeAfraA3tvzULF02ZdOMUOKTBFFaZJDDrq+BJQ==",
3719 | "requires": {
3720 | "@types/hast": "^2.0.0",
3721 | "@types/prop-types": "^15.0.0",
3722 | "@types/unist": "^2.0.0",
3723 | "comma-separated-tokens": "^2.0.0",
3724 | "hast-util-whitespace": "^2.0.0",
3725 | "prop-types": "^15.0.0",
3726 | "property-information": "^6.0.0",
3727 | "react-is": "^18.0.0",
3728 | "remark-parse": "^10.0.0",
3729 | "remark-rehype": "^10.0.0",
3730 | "space-separated-tokens": "^2.0.0",
3731 | "style-to-object": "^0.4.0",
3732 | "unified": "^10.0.0",
3733 | "unist-util-visit": "^4.0.0",
3734 | "vfile": "^5.0.0"
3735 | }
3736 | },
3737 | "react-transition-group": {
3738 | "version": "4.4.5",
3739 | "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz",
3740 | "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==",
3741 | "requires": {
3742 | "@babel/runtime": "^7.5.5",
3743 | "dom-helpers": "^5.0.1",
3744 | "loose-envify": "^1.4.0",
3745 | "prop-types": "^15.6.2"
3746 | }
3747 | },
3748 | "readable-stream": {
3749 | "version": "1.0.34",
3750 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
3751 | "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==",
3752 | "requires": {
3753 | "core-util-is": "~1.0.0",
3754 | "inherits": "~2.0.1",
3755 | "isarray": "0.0.1",
3756 | "string_decoder": "~0.10.x"
3757 | }
3758 | },
3759 | "regenerator-runtime": {
3760 | "version": "0.13.11",
3761 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
3762 | "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg=="
3763 | },
3764 | "remark-parse": {
3765 | "version": "10.0.2",
3766 | "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.2.tgz",
3767 | "integrity": "sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==",
3768 | "requires": {
3769 | "@types/mdast": "^3.0.0",
3770 | "mdast-util-from-markdown": "^1.0.0",
3771 | "unified": "^10.0.0"
3772 | }
3773 | },
3774 | "remark-rehype": {
3775 | "version": "10.1.0",
3776 | "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz",
3777 | "integrity": "sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==",
3778 | "requires": {
3779 | "@types/hast": "^2.0.0",
3780 | "@types/mdast": "^3.0.0",
3781 | "mdast-util-to-hast": "^12.1.0",
3782 | "unified": "^10.0.0"
3783 | }
3784 | },
3785 | "resolve": {
3786 | "version": "1.22.2",
3787 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz",
3788 | "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==",
3789 | "requires": {
3790 | "is-core-module": "^2.11.0",
3791 | "path-parse": "^1.0.7",
3792 | "supports-preserve-symlinks-flag": "^1.0.0"
3793 | }
3794 | },
3795 | "resolve-from": {
3796 | "version": "4.0.0",
3797 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
3798 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g=="
3799 | },
3800 | "sade": {
3801 | "version": "1.8.1",
3802 | "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz",
3803 | "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==",
3804 | "requires": {
3805 | "mri": "^1.1.0"
3806 | }
3807 | },
3808 | "safe-buffer": {
3809 | "version": "5.1.2",
3810 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
3811 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
3812 | },
3813 | "scheduler": {
3814 | "version": "0.23.0",
3815 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz",
3816 | "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==",
3817 | "requires": {
3818 | "loose-envify": "^1.1.0"
3819 | }
3820 | },
3821 | "source-map": {
3822 | "version": "0.5.7",
3823 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
3824 | "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ=="
3825 | },
3826 | "source-map-js": {
3827 | "version": "1.0.2",
3828 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
3829 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
3830 | },
3831 | "space-separated-tokens": {
3832 | "version": "2.0.2",
3833 | "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz",
3834 | "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q=="
3835 | },
3836 | "streamsearch": {
3837 | "version": "1.1.0",
3838 | "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
3839 | "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg=="
3840 | },
3841 | "string_decoder": {
3842 | "version": "0.10.31",
3843 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
3844 | "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ=="
3845 | },
3846 | "style-to-object": {
3847 | "version": "0.4.1",
3848 | "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz",
3849 | "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==",
3850 | "requires": {
3851 | "inline-style-parser": "0.1.1"
3852 | }
3853 | },
3854 | "styled-jsx": {
3855 | "version": "5.1.1",
3856 | "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz",
3857 | "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==",
3858 | "requires": {
3859 | "client-only": "0.0.1"
3860 | }
3861 | },
3862 | "stylis": {
3863 | "version": "4.2.0",
3864 | "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz",
3865 | "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw=="
3866 | },
3867 | "supports-color": {
3868 | "version": "5.5.0",
3869 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
3870 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
3871 | "requires": {
3872 | "has-flag": "^3.0.0"
3873 | }
3874 | },
3875 | "supports-preserve-symlinks-flag": {
3876 | "version": "1.0.0",
3877 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
3878 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
3879 | },
3880 | "through": {
3881 | "version": "2.3.8",
3882 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
3883 | "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg=="
3884 | },
3885 | "through2": {
3886 | "version": "0.4.2",
3887 | "resolved": "https://registry.npmjs.org/through2/-/through2-0.4.2.tgz",
3888 | "integrity": "sha512-45Llu+EwHKtAZYTPPVn3XZHBgakWMN3rokhEv5hu596XP+cNgplMg+Gj+1nmAvj+L0K7+N49zBKx5rah5u0QIQ==",
3889 | "requires": {
3890 | "readable-stream": "~1.0.17",
3891 | "xtend": "~2.1.1"
3892 | }
3893 | },
3894 | "to-fast-properties": {
3895 | "version": "2.0.0",
3896 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
3897 | "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog=="
3898 | },
3899 | "trim-lines": {
3900 | "version": "3.0.1",
3901 | "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz",
3902 | "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg=="
3903 | },
3904 | "trough": {
3905 | "version": "2.1.0",
3906 | "resolved": "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz",
3907 | "integrity": "sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g=="
3908 | },
3909 | "tslib": {
3910 | "version": "2.5.2",
3911 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.2.tgz",
3912 | "integrity": "sha512-5svOrSA2w3iGFDs1HibEVBGbDrAY82bFQ3HZ3ixB+88nsbsWQoKqDRb5UBYAUPEzbBn6dAp5gRNXglySbx1MlA=="
3913 | },
3914 | "unified": {
3915 | "version": "10.1.2",
3916 | "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz",
3917 | "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==",
3918 | "requires": {
3919 | "@types/unist": "^2.0.0",
3920 | "bail": "^2.0.0",
3921 | "extend": "^3.0.0",
3922 | "is-buffer": "^2.0.0",
3923 | "is-plain-obj": "^4.0.0",
3924 | "trough": "^2.0.0",
3925 | "vfile": "^5.0.0"
3926 | }
3927 | },
3928 | "unist-util-generated": {
3929 | "version": "2.0.1",
3930 | "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz",
3931 | "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A=="
3932 | },
3933 | "unist-util-is": {
3934 | "version": "5.2.1",
3935 | "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz",
3936 | "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==",
3937 | "requires": {
3938 | "@types/unist": "^2.0.0"
3939 | }
3940 | },
3941 | "unist-util-position": {
3942 | "version": "4.0.4",
3943 | "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz",
3944 | "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==",
3945 | "requires": {
3946 | "@types/unist": "^2.0.0"
3947 | }
3948 | },
3949 | "unist-util-stringify-position": {
3950 | "version": "3.0.3",
3951 | "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz",
3952 | "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==",
3953 | "requires": {
3954 | "@types/unist": "^2.0.0"
3955 | }
3956 | },
3957 | "unist-util-visit": {
3958 | "version": "4.1.2",
3959 | "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz",
3960 | "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==",
3961 | "requires": {
3962 | "@types/unist": "^2.0.0",
3963 | "unist-util-is": "^5.0.0",
3964 | "unist-util-visit-parents": "^5.1.1"
3965 | }
3966 | },
3967 | "unist-util-visit-parents": {
3968 | "version": "5.1.3",
3969 | "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz",
3970 | "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==",
3971 | "requires": {
3972 | "@types/unist": "^2.0.0",
3973 | "unist-util-is": "^5.0.0"
3974 | }
3975 | },
3976 | "util-deprecate": {
3977 | "version": "1.0.2",
3978 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
3979 | "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
3980 | },
3981 | "uvu": {
3982 | "version": "0.5.6",
3983 | "resolved": "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz",
3984 | "integrity": "sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==",
3985 | "requires": {
3986 | "dequal": "^2.0.0",
3987 | "diff": "^5.0.0",
3988 | "kleur": "^4.0.3",
3989 | "sade": "^1.7.3"
3990 | }
3991 | },
3992 | "vfile": {
3993 | "version": "5.3.7",
3994 | "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz",
3995 | "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==",
3996 | "requires": {
3997 | "@types/unist": "^2.0.0",
3998 | "is-buffer": "^2.0.0",
3999 | "unist-util-stringify-position": "^3.0.0",
4000 | "vfile-message": "^3.0.0"
4001 | }
4002 | },
4003 | "vfile-message": {
4004 | "version": "3.1.4",
4005 | "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz",
4006 | "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==",
4007 | "requires": {
4008 | "@types/unist": "^2.0.0",
4009 | "unist-util-stringify-position": "^3.0.0"
4010 | }
4011 | },
4012 | "xtend": {
4013 | "version": "2.1.2",
4014 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz",
4015 | "integrity": "sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ==",
4016 | "requires": {
4017 | "object-keys": "~0.4.0"
4018 | }
4019 | },
4020 | "yaml": {
4021 | "version": "1.10.2",
4022 | "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
4023 | "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg=="
4024 | },
4025 | "zod": {
4026 | "version": "3.21.4",
4027 | "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz",
4028 | "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw=="
4029 | }
4030 | }
4031 | }
4032 |
--------------------------------------------------------------------------------