Changeset ebf5e04


Ignore:
Timestamp:
06/12/22 18:31:03 (3 years ago)
Author:
anastasovv <simon@…>
Branches:
main
Children:
285c3cc
Parents:
fe03f69
Message:

Code cleanings

Files:
3 added
10 edited

Legend:

Unmodified
Added
Removed
  • .gitignore

    rfe03f69 rebf5e04  
    3232.env.development
    3333.env.production
     34.env.productions
    3435
    3536# vercel
  • components/blackjack/BlackjackHeader.jsx

    rfe03f69 rebf5e04  
    259259            <nav>
    260260                <ul>
    261                     <li>Hi{playerState?.player?.displayName ? `, ${playerState.player.displayName}` : ``}</li>
     261                    <li>Hi, {playerState?.player?.displayName}</li>
    262262                    <li>Balance: ${playerState?.player?.credits}</li>
    263263                </ul>
  • package-lock.json

    rfe03f69 rebf5e04  
    22  "name": "caessino2",
    33  "version": "0.1.0",
    4   "lockfileVersion": 1,
     4  "lockfileVersion": 2,
    55  "requires": true,
    6   "dependencies": {
    7     "@arctext/react": {
     6  "packages": {
     7    "": {
     8      "name": "caessino2",
     9      "version": "0.1.0",
     10      "dependencies": {
     11        "@arctext/react": "^1.0.0",
     12        "@reduxjs/toolkit": "^1.8.1",
     13        "axios": "^0.27.2",
     14        "crypto": "^1.0.1",
     15        "dotenv": "^16.0.0",
     16        "next": "12.1.6",
     17        "pg": "^8.7.3",
     18        "react": "18.1.0",
     19        "react-dom": "18.1.0",
     20        "react-icons": "^4.3.1",
     21        "react-redux": "^8.0.1",
     22        "uuid": "^8.3.2"
     23      },
     24      "devDependencies": {
     25        "eslint": "8.15.0",
     26        "eslint-config-next": "12.1.6"
     27      }
     28    },
     29    "node_modules/@arctext/react": {
    830      "version": "1.0.0",
    931      "resolved": "https://registry.npmjs.org/@arctext/react/-/react-1.0.0.tgz",
    10       "integrity": "sha512-K+dKaSOjjHs/6dw2gS0dWFOzGI28sqa3o1KOLMB48t8KRdulnh5QtPb33+C/ryWDV1eteIQM0Zi4ZDyEu7ES0g=="
    11     },
    12     "@babel/runtime": {
     32      "integrity": "sha512-K+dKaSOjjHs/6dw2gS0dWFOzGI28sqa3o1KOLMB48t8KRdulnh5QtPb33+C/ryWDV1eteIQM0Zi4ZDyEu7ES0g==",
     33      "peerDependencies": {
     34        "react": "^17.0.2"
     35      }
     36    },
     37    "node_modules/@babel/runtime": {
    1338      "version": "7.17.9",
    1439      "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.9.tgz",
    1540      "integrity": "sha512-lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg==",
    16       "requires": {
     41      "dependencies": {
    1742        "regenerator-runtime": "^0.13.4"
    18       }
    19     },
    20     "@babel/runtime-corejs3": {
     43      },
     44      "engines": {
     45        "node": ">=6.9.0"
     46      }
     47    },
     48    "node_modules/@babel/runtime-corejs3": {
    2149      "version": "7.17.9",
    2250      "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.17.9.tgz",
    2351      "integrity": "sha512-WxYHHUWF2uZ7Hp1K+D1xQgbgkGUfA+5UPOegEXGt2Y5SMog/rYCVaifLZDbw8UkNXozEqqrZTy6bglL7xTaCOw==",
    2452      "dev": true,
    25       "requires": {
     53      "dependencies": {
    2654        "core-js-pure": "^3.20.2",
    2755        "regenerator-runtime": "^0.13.4"
    28       }
    29     },
    30     "@eslint/eslintrc": {
     56      },
     57      "engines": {
     58        "node": ">=6.9.0"
     59      }
     60    },
     61    "node_modules/@eslint/eslintrc": {
    3162      "version": "1.2.3",
    3263      "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.3.tgz",
    3364      "integrity": "sha512-uGo44hIwoLGNyduRpjdEpovcbMdd+Nv7amtmJxnKmI8xj6yd5LncmSwDa5NgX/41lIFJtkjD6YdVfgEzPfJ5UA==",
    3465      "dev": true,
    35       "requires": {
     66      "dependencies": {
    3667        "ajv": "^6.12.4",
    3768        "debug": "^4.3.2",
     
    4374        "minimatch": "^3.1.2",
    4475        "strip-json-comments": "^3.1.1"
    45       }
    46     },
    47     "@humanwhocodes/config-array": {
     76      },
     77      "engines": {
     78        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
     79      }
     80    },
     81    "node_modules/@humanwhocodes/config-array": {
    4882      "version": "0.9.5",
    4983      "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz",
    5084      "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==",
    5185      "dev": true,
    52       "requires": {
     86      "dependencies": {
    5387        "@humanwhocodes/object-schema": "^1.2.1",
    5488        "debug": "^4.1.1",
    5589        "minimatch": "^3.0.4"
    56       }
    57     },
    58     "@humanwhocodes/object-schema": {
     90      },
     91      "engines": {
     92        "node": ">=10.10.0"
     93      }
     94    },
     95    "node_modules/@humanwhocodes/object-schema": {
    5996      "version": "1.2.1",
    6097      "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
     
    6299      "dev": true
    63100    },
    64     "@next/env": {
     101    "node_modules/@next/env": {
    65102      "version": "12.1.6",
    66103      "resolved": "https://registry.npmjs.org/@next/env/-/env-12.1.6.tgz",
    67104      "integrity": "sha512-Te/OBDXFSodPU6jlXYPAXpmZr/AkG6DCATAxttQxqOWaq6eDFX25Db3dK0120GZrSZmv4QCe9KsZmJKDbWs4OA=="
    68105    },
    69     "@next/eslint-plugin-next": {
     106    "node_modules/@next/eslint-plugin-next": {
    70107      "version": "12.1.6",
    71108      "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-12.1.6.tgz",
    72109      "integrity": "sha512-yNUtJ90NEiYFT6TJnNyofKMPYqirKDwpahcbxBgSIuABwYOdkGwzos1ZkYD51Qf0diYwpQZBeVqElTk7Q2WNqw==",
    73110      "dev": true,
    74       "requires": {
     111      "dependencies": {
    75112        "glob": "7.1.7"
    76       },
    77       "dependencies": {
    78         "glob": {
    79           "version": "7.1.7",
    80           "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
    81           "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
    82           "dev": true,
    83           "requires": {
    84             "fs.realpath": "^1.0.0",
    85             "inflight": "^1.0.4",
    86             "inherits": "2",
    87             "minimatch": "^3.0.4",
    88             "once": "^1.3.0",
    89             "path-is-absolute": "^1.0.0"
    90           }
    91         }
    92       }
    93     },
    94     "@next/swc-android-arm-eabi": {
     113      }
     114    },
     115    "node_modules/@next/eslint-plugin-next/node_modules/glob": {
     116      "version": "7.1.7",
     117      "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
     118      "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
     119      "dev": true,
     120      "dependencies": {
     121        "fs.realpath": "^1.0.0",
     122        "inflight": "^1.0.4",
     123        "inherits": "2",
     124        "minimatch": "^3.0.4",
     125        "once": "^1.3.0",
     126        "path-is-absolute": "^1.0.0"
     127      },
     128      "engines": {
     129        "node": "*"
     130      },
     131      "funding": {
     132        "url": "https://github.com/sponsors/isaacs"
     133      }
     134    },
     135    "node_modules/@next/swc-android-arm-eabi": {
    95136      "version": "12.1.6",
    96137      "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.1.6.tgz",
    97138      "integrity": "sha512-BxBr3QAAAXWgk/K7EedvzxJr2dE014mghBSA9iOEAv0bMgF+MRq4PoASjuHi15M2zfowpcRG8XQhMFtxftCleQ==",
    98       "optional": true
    99     },
    100     "@next/swc-android-arm64": {
     139      "cpu": [
     140        "arm"
     141      ],
     142      "optional": true,
     143      "os": [
     144        "android"
     145      ],
     146      "engines": {
     147        "node": ">= 10"
     148      }
     149    },
     150    "node_modules/@next/swc-android-arm64": {
    101151      "version": "12.1.6",
    102152      "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-12.1.6.tgz",
    103153      "integrity": "sha512-EboEk3ROYY7U6WA2RrMt/cXXMokUTXXfnxe2+CU+DOahvbrO8QSWhlBl9I9ZbFzJx28AGB9Yo3oQHCvph/4Lew==",
    104       "optional": true
    105     },
    106     "@next/swc-darwin-arm64": {
     154      "cpu": [
     155        "arm64"
     156      ],
     157      "optional": true,
     158      "os": [
     159        "android"
     160      ],
     161      "engines": {
     162        "node": ">= 10"
     163      }
     164    },
     165    "node_modules/@next/swc-darwin-arm64": {
    107166      "version": "12.1.6",
    108167      "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.1.6.tgz",
    109168      "integrity": "sha512-P0EXU12BMSdNj1F7vdkP/VrYDuCNwBExtRPDYawgSUakzi6qP0iKJpya2BuLvNzXx+XPU49GFuDC5X+SvY0mOw==",
    110       "optional": true
    111     },
    112     "@next/swc-darwin-x64": {
     169      "cpu": [
     170        "arm64"
     171      ],
     172      "optional": true,
     173      "os": [
     174        "darwin"
     175      ],
     176      "engines": {
     177        "node": ">= 10"
     178      }
     179    },
     180    "node_modules/@next/swc-darwin-x64": {
    113181      "version": "12.1.6",
    114182      "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-12.1.6.tgz",
    115183      "integrity": "sha512-9FptMnbgHJK3dRDzfTpexs9S2hGpzOQxSQbe8omz6Pcl7rnEp9x4uSEKY51ho85JCjL4d0tDLBcXEJZKKLzxNg==",
    116       "optional": true
    117     },
    118     "@next/swc-linux-arm-gnueabihf": {
     184      "cpu": [
     185        "x64"
     186      ],
     187      "optional": true,
     188      "os": [
     189        "darwin"
     190      ],
     191      "engines": {
     192        "node": ">= 10"
     193      }
     194    },
     195    "node_modules/@next/swc-linux-arm-gnueabihf": {
    119196      "version": "12.1.6",
    120197      "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.1.6.tgz",
    121198      "integrity": "sha512-PvfEa1RR55dsik/IDkCKSFkk6ODNGJqPY3ysVUZqmnWMDSuqFtf7BPWHFa/53znpvVB5XaJ5Z1/6aR5CTIqxPw==",
    122       "optional": true
    123     },
    124     "@next/swc-linux-arm64-gnu": {
     199      "cpu": [
     200        "arm"
     201      ],
     202      "optional": true,
     203      "os": [
     204        "linux"
     205      ],
     206      "engines": {
     207        "node": ">= 10"
     208      }
     209    },
     210    "node_modules/@next/swc-linux-arm64-gnu": {
    125211      "version": "12.1.6",
    126212      "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.1.6.tgz",
    127213      "integrity": "sha512-53QOvX1jBbC2ctnmWHyRhMajGq7QZfl974WYlwclXarVV418X7ed7o/EzGY+YVAEKzIVaAB9JFFWGXn8WWo0gQ==",
    128       "optional": true
    129     },
    130     "@next/swc-linux-arm64-musl": {
     214      "cpu": [
     215        "arm64"
     216      ],
     217      "optional": true,
     218      "os": [
     219        "linux"
     220      ],
     221      "engines": {
     222        "node": ">= 10"
     223      }
     224    },
     225    "node_modules/@next/swc-linux-arm64-musl": {
    131226      "version": "12.1.6",
    132227      "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.1.6.tgz",
    133228      "integrity": "sha512-CMWAkYqfGdQCS+uuMA1A2UhOfcUYeoqnTW7msLr2RyYAys15pD960hlDfq7QAi8BCAKk0sQ2rjsl0iqMyziohQ==",
    134       "optional": true
    135     },
    136     "@next/swc-linux-x64-gnu": {
     229      "cpu": [
     230        "arm64"
     231      ],
     232      "optional": true,
     233      "os": [
     234        "linux"
     235      ],
     236      "engines": {
     237        "node": ">= 10"
     238      }
     239    },
     240    "node_modules/@next/swc-linux-x64-gnu": {
    137241      "version": "12.1.6",
    138242      "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.1.6.tgz",
    139243      "integrity": "sha512-AC7jE4Fxpn0s3ujngClIDTiEM/CQiB2N2vkcyWWn6734AmGT03Duq6RYtPMymFobDdAtZGFZd5nR95WjPzbZAQ==",
    140       "optional": true
    141     },
    142     "@next/swc-linux-x64-musl": {
     244      "cpu": [
     245        "x64"
     246      ],
     247      "optional": true,
     248      "os": [
     249        "linux"
     250      ],
     251      "engines": {
     252        "node": ">= 10"
     253      }
     254    },
     255    "node_modules/@next/swc-linux-x64-musl": {
    143256      "version": "12.1.6",
    144257      "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.1.6.tgz",
    145258      "integrity": "sha512-c9Vjmi0EVk0Kou2qbrynskVarnFwfYIi+wKufR9Ad7/IKKuP6aEhOdZiIIdKsYWRtK2IWRF3h3YmdnEa2WLUag==",
    146       "optional": true
    147     },
    148     "@next/swc-win32-arm64-msvc": {
     259      "cpu": [
     260        "x64"
     261      ],
     262      "optional": true,
     263      "os": [
     264        "linux"
     265      ],
     266      "engines": {
     267        "node": ">= 10"
     268      }
     269    },
     270    "node_modules/@next/swc-win32-arm64-msvc": {
    149271      "version": "12.1.6",
    150272      "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.1.6.tgz",
    151273      "integrity": "sha512-3UTOL/5XZSKFelM7qN0it35o3Cegm6LsyuERR3/OoqEExyj3aCk7F025b54/707HTMAnjlvQK3DzLhPu/xxO4g==",
    152       "optional": true
    153     },
    154     "@next/swc-win32-ia32-msvc": {
     274      "cpu": [
     275        "arm64"
     276      ],
     277      "optional": true,
     278      "os": [
     279        "win32"
     280      ],
     281      "engines": {
     282        "node": ">= 10"
     283      }
     284    },
     285    "node_modules/@next/swc-win32-ia32-msvc": {
    155286      "version": "12.1.6",
    156287      "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.1.6.tgz",
    157288      "integrity": "sha512-8ZWoj6nCq6fI1yCzKq6oK0jE6Mxlz4MrEsRyu0TwDztWQWe7rh4XXGLAa2YVPatYcHhMcUL+fQQbqd1MsgaSDA==",
    158       "optional": true
    159     },
    160     "@next/swc-win32-x64-msvc": {
     289      "cpu": [
     290        "ia32"
     291      ],
     292      "optional": true,
     293      "os": [
     294        "win32"
     295      ],
     296      "engines": {
     297        "node": ">= 10"
     298      }
     299    },
     300    "node_modules/@next/swc-win32-x64-msvc": {
    161301      "version": "12.1.6",
    162302      "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.1.6.tgz",
    163303      "integrity": "sha512-4ZEwiRuZEicXhXqmhw3+de8Z4EpOLQj/gp+D9fFWo6ii6W1kBkNNvvEx4A90ugppu+74pT1lIJnOuz3A9oQeJA==",
    164       "optional": true
    165     },
    166     "@nodelib/fs.scandir": {
     304      "cpu": [
     305        "x64"
     306      ],
     307      "optional": true,
     308      "os": [
     309        "win32"
     310      ],
     311      "engines": {
     312        "node": ">= 10"
     313      }
     314    },
     315    "node_modules/@nodelib/fs.scandir": {
    167316      "version": "2.1.5",
    168317      "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
    169318      "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
    170319      "dev": true,
    171       "requires": {
     320      "dependencies": {
    172321        "@nodelib/fs.stat": "2.0.5",
    173322        "run-parallel": "^1.1.9"
    174       }
    175     },
    176     "@nodelib/fs.stat": {
     323      },
     324      "engines": {
     325        "node": ">= 8"
     326      }
     327    },
     328    "node_modules/@nodelib/fs.stat": {
    177329      "version": "2.0.5",
    178330      "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
    179331      "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
    180       "dev": true
    181     },
    182     "@nodelib/fs.walk": {
     332      "dev": true,
     333      "engines": {
     334        "node": ">= 8"
     335      }
     336    },
     337    "node_modules/@nodelib/fs.walk": {
    183338      "version": "1.2.8",
    184339      "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
    185340      "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
    186341      "dev": true,
    187       "requires": {
     342      "dependencies": {
    188343        "@nodelib/fs.scandir": "2.1.5",
    189344        "fastq": "^1.6.0"
    190       }
    191     },
    192     "@reduxjs/toolkit": {
     345      },
     346      "engines": {
     347        "node": ">= 8"
     348      }
     349    },
     350    "node_modules/@reduxjs/toolkit": {
    193351      "version": "1.8.1",
    194352      "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-1.8.1.tgz",
    195353      "integrity": "sha512-Q6mzbTpO9nOYRnkwpDlFOAbQnd3g7zj7CtHAZWz5SzE5lcV97Tf8f3SzOO8BoPOMYBFgfZaqTUZqgGu+a0+Fng==",
    196       "requires": {
     354      "dependencies": {
    197355        "immer": "^9.0.7",
    198356        "redux": "^4.1.2",
    199357        "redux-thunk": "^2.4.1",
    200358        "reselect": "^4.1.5"
    201       }
    202     },
    203     "@rushstack/eslint-patch": {
     359      },
     360      "peerDependencies": {
     361        "react": "^16.9.0 || ^17.0.0 || ^18",
     362        "react-redux": "^7.2.1 || ^8.0.0-beta"
     363      },
     364      "peerDependenciesMeta": {
     365        "react": {
     366          "optional": true
     367        },
     368        "react-redux": {
     369          "optional": true
     370        }
     371      }
     372    },
     373    "node_modules/@rushstack/eslint-patch": {
    204374      "version": "1.1.3",
    205375      "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.1.3.tgz",
     
    207377      "dev": true
    208378    },
    209     "@types/hoist-non-react-statics": {
     379    "node_modules/@types/hoist-non-react-statics": {
    210380      "version": "3.3.1",
    211381      "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz",
    212382      "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==",
    213       "requires": {
     383      "dependencies": {
    214384        "@types/react": "*",
    215385        "hoist-non-react-statics": "^3.3.0"
    216386      }
    217387    },
    218     "@types/json5": {
     388    "node_modules/@types/json5": {
    219389      "version": "0.0.29",
    220390      "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
     
    222392      "dev": true
    223393    },
    224     "@types/prop-types": {
     394    "node_modules/@types/prop-types": {
    225395      "version": "15.7.5",
    226396      "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
    227397      "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
    228398    },
    229     "@types/react": {
     399    "node_modules/@types/react": {
    230400      "version": "18.0.9",
    231401      "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.9.tgz",
    232402      "integrity": "sha512-9bjbg1hJHUm4De19L1cHiW0Jvx3geel6Qczhjd0qY5VKVE2X5+x77YxAepuCwVh4vrgZJdgEJw48zrhRIeF4Nw==",
    233       "requires": {
     403      "dependencies": {
    234404        "@types/prop-types": "*",
    235405        "@types/scheduler": "*",
     
    237407      }
    238408    },
    239     "@types/scheduler": {
     409    "node_modules/@types/scheduler": {
    240410      "version": "0.16.2",
    241411      "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
    242412      "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew=="
    243413    },
    244     "@types/use-sync-external-store": {
     414    "node_modules/@types/use-sync-external-store": {
    245415      "version": "0.0.3",
    246416      "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz",
    247417      "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA=="
    248418    },
    249     "@typescript-eslint/parser": {
     419    "node_modules/@typescript-eslint/parser": {
    250420      "version": "5.22.0",
    251421      "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.22.0.tgz",
    252422      "integrity": "sha512-piwC4krUpRDqPaPbFaycN70KCP87+PC5WZmrWs+DlVOxxmF+zI6b6hETv7Quy4s9wbkV16ikMeZgXsvzwI3icQ==",
    253423      "dev": true,
    254       "requires": {
     424      "dependencies": {
    255425        "@typescript-eslint/scope-manager": "5.22.0",
    256426        "@typescript-eslint/types": "5.22.0",
    257427        "@typescript-eslint/typescript-estree": "5.22.0",
    258428        "debug": "^4.3.2"
    259       }
    260     },
    261     "@typescript-eslint/scope-manager": {
     429      },
     430      "engines": {
     431        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
     432      },
     433      "funding": {
     434        "type": "opencollective",
     435        "url": "https://opencollective.com/typescript-eslint"
     436      },
     437      "peerDependencies": {
     438        "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
     439      },
     440      "peerDependenciesMeta": {
     441        "typescript": {
     442          "optional": true
     443        }
     444      }
     445    },
     446    "node_modules/@typescript-eslint/scope-manager": {
    262447      "version": "5.22.0",
    263448      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.22.0.tgz",
    264449      "integrity": "sha512-yA9G5NJgV5esANJCO0oF15MkBO20mIskbZ8ijfmlKIvQKg0ynVKfHZ15/nhAJN5m8Jn3X5qkwriQCiUntC9AbA==",
    265450      "dev": true,
    266       "requires": {
     451      "dependencies": {
    267452        "@typescript-eslint/types": "5.22.0",
    268453        "@typescript-eslint/visitor-keys": "5.22.0"
    269       }
    270     },
    271     "@typescript-eslint/types": {
     454      },
     455      "engines": {
     456        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
     457      },
     458      "funding": {
     459        "type": "opencollective",
     460        "url": "https://opencollective.com/typescript-eslint"
     461      }
     462    },
     463    "node_modules/@typescript-eslint/types": {
    272464      "version": "5.22.0",
    273465      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.22.0.tgz",
    274466      "integrity": "sha512-T7owcXW4l0v7NTijmjGWwWf/1JqdlWiBzPqzAWhobxft0SiEvMJB56QXmeCQjrPuM8zEfGUKyPQr/L8+cFUBLw==",
    275       "dev": true
    276     },
    277     "@typescript-eslint/typescript-estree": {
     467      "dev": true,
     468      "engines": {
     469        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
     470      },
     471      "funding": {
     472        "type": "opencollective",
     473        "url": "https://opencollective.com/typescript-eslint"
     474      }
     475    },
     476    "node_modules/@typescript-eslint/typescript-estree": {
    278477      "version": "5.22.0",
    279478      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.22.0.tgz",
    280479      "integrity": "sha512-EyBEQxvNjg80yinGE2xdhpDYm41so/1kOItl0qrjIiJ1kX/L/L8WWGmJg8ni6eG3DwqmOzDqOhe6763bF92nOw==",
    281480      "dev": true,
    282       "requires": {
     481      "dependencies": {
    283482        "@typescript-eslint/types": "5.22.0",
    284483        "@typescript-eslint/visitor-keys": "5.22.0",
     
    289488        "tsutils": "^3.21.0"
    290489      },
    291       "dependencies": {
    292         "semver": {
    293           "version": "7.3.7",
    294           "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
    295           "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
    296           "dev": true,
    297           "requires": {
    298             "lru-cache": "^6.0.0"
    299           }
     490      "engines": {
     491        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
     492      },
     493      "funding": {
     494        "type": "opencollective",
     495        "url": "https://opencollective.com/typescript-eslint"
     496      },
     497      "peerDependenciesMeta": {
     498        "typescript": {
     499          "optional": true
    300500        }
    301501      }
    302502    },
    303     "@typescript-eslint/visitor-keys": {
     503    "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": {
     504      "version": "7.3.7",
     505      "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
     506      "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
     507      "dev": true,
     508      "dependencies": {
     509        "lru-cache": "^6.0.0"
     510      },
     511      "bin": {
     512        "semver": "bin/semver.js"
     513      },
     514      "engines": {
     515        "node": ">=10"
     516      }
     517    },
     518    "node_modules/@typescript-eslint/visitor-keys": {
    304519      "version": "5.22.0",
    305520      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.22.0.tgz",
    306521      "integrity": "sha512-DbgTqn2Dv5RFWluG88tn0pP6Ex0ROF+dpDO1TNNZdRtLjUr6bdznjA6f/qNqJLjd2PgguAES2Zgxh/JzwzETDg==",
    307522      "dev": true,
    308       "requires": {
     523      "dependencies": {
    309524        "@typescript-eslint/types": "5.22.0",
    310525        "eslint-visitor-keys": "^3.0.0"
    311       }
    312     },
    313     "acorn": {
     526      },
     527      "engines": {
     528        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
     529      },
     530      "funding": {
     531        "type": "opencollective",
     532        "url": "https://opencollective.com/typescript-eslint"
     533      }
     534    },
     535    "node_modules/acorn": {
    314536      "version": "8.7.1",
    315537      "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz",
    316538      "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==",
    317       "dev": true
    318     },
    319     "acorn-jsx": {
     539      "dev": true,
     540      "bin": {
     541        "acorn": "bin/acorn"
     542      },
     543      "engines": {
     544        "node": ">=0.4.0"
     545      }
     546    },
     547    "node_modules/acorn-jsx": {
    320548      "version": "5.3.2",
    321549      "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
    322550      "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
    323       "dev": true
    324     },
    325     "ajv": {
     551      "dev": true,
     552      "peerDependencies": {
     553        "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
     554      }
     555    },
     556    "node_modules/ajv": {
    326557      "version": "6.12.6",
    327558      "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
    328559      "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
    329560      "dev": true,
    330       "requires": {
     561      "dependencies": {
    331562        "fast-deep-equal": "^3.1.1",
    332563        "fast-json-stable-stringify": "^2.0.0",
    333564        "json-schema-traverse": "^0.4.1",
    334565        "uri-js": "^4.2.2"
    335       }
    336     },
    337     "ansi-regex": {
     566      },
     567      "funding": {
     568        "type": "github",
     569        "url": "https://github.com/sponsors/epoberezkin"
     570      }
     571    },
     572    "node_modules/ansi-regex": {
    338573      "version": "5.0.1",
    339574      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
    340575      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
    341       "dev": true
    342     },
    343     "ansi-styles": {
     576      "dev": true,
     577      "engines": {
     578        "node": ">=8"
     579      }
     580    },
     581    "node_modules/ansi-styles": {
    344582      "version": "4.3.0",
    345583      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
    346584      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
    347585      "dev": true,
    348       "requires": {
     586      "dependencies": {
    349587        "color-convert": "^2.0.1"
    350       }
    351     },
    352     "argparse": {
     588      },
     589      "engines": {
     590        "node": ">=8"
     591      },
     592      "funding": {
     593        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
     594      }
     595    },
     596    "node_modules/argparse": {
    353597      "version": "2.0.1",
    354598      "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
     
    356600      "dev": true
    357601    },
    358     "aria-query": {
     602    "node_modules/aria-query": {
    359603      "version": "4.2.2",
    360604      "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz",
    361605      "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==",
    362606      "dev": true,
    363       "requires": {
     607      "dependencies": {
    364608        "@babel/runtime": "^7.10.2",
    365609        "@babel/runtime-corejs3": "^7.10.2"
    366       }
    367     },
    368     "array-includes": {
     610      },
     611      "engines": {
     612        "node": ">=6.0"
     613      }
     614    },
     615    "node_modules/array-includes": {
    369616      "version": "3.1.5",
    370617      "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz",
    371618      "integrity": "sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==",
    372619      "dev": true,
    373       "requires": {
     620      "dependencies": {
    374621        "call-bind": "^1.0.2",
    375622        "define-properties": "^1.1.4",
     
    377624        "get-intrinsic": "^1.1.1",
    378625        "is-string": "^1.0.7"
    379       }
    380     },
    381     "array-union": {
     626      },
     627      "engines": {
     628        "node": ">= 0.4"
     629      },
     630      "funding": {
     631        "url": "https://github.com/sponsors/ljharb"
     632      }
     633    },
     634    "node_modules/array-union": {
    382635      "version": "2.1.0",
    383636      "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
    384637      "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
    385       "dev": true
    386     },
    387     "array.prototype.flat": {
     638      "dev": true,
     639      "engines": {
     640        "node": ">=8"
     641      }
     642    },
     643    "node_modules/array.prototype.flat": {
    388644      "version": "1.3.0",
    389645      "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz",
    390646      "integrity": "sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==",
    391647      "dev": true,
    392       "requires": {
     648      "dependencies": {
    393649        "call-bind": "^1.0.2",
    394650        "define-properties": "^1.1.3",
    395651        "es-abstract": "^1.19.2",
    396652        "es-shim-unscopables": "^1.0.0"
    397       }
    398     },
    399     "array.prototype.flatmap": {
     653      },
     654      "engines": {
     655        "node": ">= 0.4"
     656      },
     657      "funding": {
     658        "url": "https://github.com/sponsors/ljharb"
     659      }
     660    },
     661    "node_modules/array.prototype.flatmap": {
    400662      "version": "1.3.0",
    401663      "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz",
    402664      "integrity": "sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg==",
    403665      "dev": true,
    404       "requires": {
     666      "dependencies": {
    405667        "call-bind": "^1.0.2",
    406668        "define-properties": "^1.1.3",
    407669        "es-abstract": "^1.19.2",
    408670        "es-shim-unscopables": "^1.0.0"
    409       }
    410     },
    411     "ast-types-flow": {
     671      },
     672      "engines": {
     673        "node": ">= 0.4"
     674      },
     675      "funding": {
     676        "url": "https://github.com/sponsors/ljharb"
     677      }
     678    },
     679    "node_modules/ast-types-flow": {
    412680      "version": "0.0.7",
    413681      "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz",
     
    415683      "dev": true
    416684    },
    417     "asynckit": {
     685    "node_modules/asynckit": {
    418686      "version": "0.4.0",
    419687      "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
    420688      "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
    421689    },
    422     "axe-core": {
     690    "node_modules/axe-core": {
    423691      "version": "4.4.1",
    424692      "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.4.1.tgz",
    425693      "integrity": "sha512-gd1kmb21kwNuWr6BQz8fv6GNECPBnUasepcoLbekws23NVBLODdsClRZ+bQ8+9Uomf3Sm3+Vwn0oYG9NvwnJCw==",
    426       "dev": true
    427     },
    428     "axios": {
     694      "dev": true,
     695      "engines": {
     696        "node": ">=4"
     697      }
     698    },
     699    "node_modules/axios": {
    429700      "version": "0.27.2",
    430701      "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz",
    431702      "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==",
    432       "requires": {
     703      "dependencies": {
    433704        "follow-redirects": "^1.14.9",
    434705        "form-data": "^4.0.0"
    435706      }
    436707    },
    437     "axobject-query": {
     708    "node_modules/axobject-query": {
    438709      "version": "2.2.0",
    439710      "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz",
     
    441712      "dev": true
    442713    },
    443     "balanced-match": {
     714    "node_modules/balanced-match": {
    444715      "version": "1.0.2",
    445716      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
     
    447718      "dev": true
    448719    },
    449     "brace-expansion": {
     720    "node_modules/brace-expansion": {
    450721      "version": "1.1.11",
    451722      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
    452723      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
    453724      "dev": true,
    454       "requires": {
     725      "dependencies": {
    455726        "balanced-match": "^1.0.0",
    456727        "concat-map": "0.0.1"
    457728      }
    458729    },
    459     "braces": {
     730    "node_modules/braces": {
    460731      "version": "3.0.2",
    461732      "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
    462733      "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
    463734      "dev": true,
    464       "requires": {
     735      "dependencies": {
    465736        "fill-range": "^7.0.1"
    466       }
    467     },
    468     "buffer-writer": {
     737      },
     738      "engines": {
     739        "node": ">=8"
     740      }
     741    },
     742    "node_modules/buffer-writer": {
    469743      "version": "2.0.0",
    470744      "resolved": "https://registry.npmjs.org/buffer-writer/-/buffer-writer-2.0.0.tgz",
    471       "integrity": "sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw=="
    472     },
    473     "call-bind": {
     745      "integrity": "sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==",
     746      "engines": {
     747        "node": ">=4"
     748      }
     749    },
     750    "node_modules/call-bind": {
    474751      "version": "1.0.2",
    475752      "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
    476753      "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
    477754      "dev": true,
    478       "requires": {
     755      "dependencies": {
    479756        "function-bind": "^1.1.1",
    480757        "get-intrinsic": "^1.0.2"
    481       }
    482     },
    483     "callsites": {
     758      },
     759      "funding": {
     760        "url": "https://github.com/sponsors/ljharb"
     761      }
     762    },
     763    "node_modules/callsites": {
    484764      "version": "3.1.0",
    485765      "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
    486766      "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
    487       "dev": true
    488     },
    489     "caniuse-lite": {
     767      "dev": true,
     768      "engines": {
     769        "node": ">=6"
     770      }
     771    },
     772    "node_modules/caniuse-lite": {
    490773      "version": "1.0.30001338",
    491774      "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001338.tgz",
    492       "integrity": "sha512-1gLHWyfVoRDsHieO+CaeYe7jSo/MT7D7lhaXUiwwbuR5BwQxORs0f1tAwUSQr3YbxRXJvxHM/PA5FfPQRnsPeQ=="
    493     },
    494     "chalk": {
     775      "integrity": "sha512-1gLHWyfVoRDsHieO+CaeYe7jSo/MT7D7lhaXUiwwbuR5BwQxORs0f1tAwUSQr3YbxRXJvxHM/PA5FfPQRnsPeQ==",
     776      "funding": [
     777        {
     778          "type": "opencollective",
     779          "url": "https://opencollective.com/browserslist"
     780        },
     781        {
     782          "type": "tidelift",
     783          "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
     784        }
     785      ]
     786    },
     787    "node_modules/chalk": {
    495788      "version": "4.1.2",
    496789      "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
    497790      "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
    498791      "dev": true,
    499       "requires": {
     792      "dependencies": {
    500793        "ansi-styles": "^4.1.0",
    501794        "supports-color": "^7.1.0"
    502       }
    503     },
    504     "color-convert": {
     795      },
     796      "engines": {
     797        "node": ">=10"
     798      },
     799      "funding": {
     800        "url": "https://github.com/chalk/chalk?sponsor=1"
     801      }
     802    },
     803    "node_modules/color-convert": {
    505804      "version": "2.0.1",
    506805      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
    507806      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
    508807      "dev": true,
    509       "requires": {
     808      "dependencies": {
    510809        "color-name": "~1.1.4"
    511       }
    512     },
    513     "color-name": {
     810      },
     811      "engines": {
     812        "node": ">=7.0.0"
     813      }
     814    },
     815    "node_modules/color-name": {
    514816      "version": "1.1.4",
    515817      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
     
    517819      "dev": true
    518820    },
    519     "combined-stream": {
     821    "node_modules/combined-stream": {
    520822      "version": "1.0.8",
    521823      "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
    522824      "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
    523       "requires": {
     825      "dependencies": {
    524826        "delayed-stream": "~1.0.0"
    525       }
    526     },
    527     "concat-map": {
     827      },
     828      "engines": {
     829        "node": ">= 0.8"
     830      }
     831    },
     832    "node_modules/concat-map": {
    528833      "version": "0.0.1",
    529834      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
     
    531836      "dev": true
    532837    },
    533     "core-js-pure": {
     838    "node_modules/core-js-pure": {
    534839      "version": "3.22.4",
    535840      "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.22.4.tgz",
    536841      "integrity": "sha512-4iF+QZkpzIz0prAFuepmxwJ2h5t4agvE8WPYqs2mjLJMNNwJOnpch76w2Q7bUfCPEv/V7wpvOfog0w273M+ZSw==",
    537       "dev": true
    538     },
    539     "cross-spawn": {
     842      "dev": true,
     843      "hasInstallScript": true,
     844      "funding": {
     845        "type": "opencollective",
     846        "url": "https://opencollective.com/core-js"
     847      }
     848    },
     849    "node_modules/cross-spawn": {
    540850      "version": "7.0.3",
    541851      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
    542852      "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
    543853      "dev": true,
    544       "requires": {
     854      "dependencies": {
    545855        "path-key": "^3.1.0",
    546856        "shebang-command": "^2.0.0",
    547857        "which": "^2.0.1"
    548       }
    549     },
    550     "crypto": {
     858      },
     859      "engines": {
     860        "node": ">= 8"
     861      }
     862    },
     863    "node_modules/crypto": {
    551864      "version": "1.0.1",
    552865      "resolved": "https://registry.npmjs.org/crypto/-/crypto-1.0.1.tgz",
    553       "integrity": "sha512-VxBKmeNcqQdiUQUW2Tzq0t377b54N2bMtXO/qiLa+6eRRmmC4qT3D4OnTGoT/U6O9aklQ/jTwbOtRMTTY8G0Ig=="
    554     },
    555     "csstype": {
     866      "integrity": "sha512-VxBKmeNcqQdiUQUW2Tzq0t377b54N2bMtXO/qiLa+6eRRmmC4qT3D4OnTGoT/U6O9aklQ/jTwbOtRMTTY8G0Ig==",
     867      "deprecated": "This package is no longer supported. It's now a built-in Node module. If you've depended on crypto, you should switch to the one that's built-in."
     868    },
     869    "node_modules/csstype": {
    556870      "version": "3.0.11",
    557871      "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.11.tgz",
    558872      "integrity": "sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw=="
    559873    },
    560     "damerau-levenshtein": {
     874    "node_modules/damerau-levenshtein": {
    561875      "version": "1.0.8",
    562876      "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz",
     
    564878      "dev": true
    565879    },
    566     "debug": {
     880    "node_modules/debug": {
    567881      "version": "4.3.4",
    568882      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
    569883      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
    570884      "dev": true,
    571       "requires": {
     885      "dependencies": {
    572886        "ms": "2.1.2"
    573       }
    574     },
    575     "deep-is": {
     887      },
     888      "engines": {
     889        "node": ">=6.0"
     890      },
     891      "peerDependenciesMeta": {
     892        "supports-color": {
     893          "optional": true
     894        }
     895      }
     896    },
     897    "node_modules/deep-is": {
    576898      "version": "0.1.4",
    577899      "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
     
    579901      "dev": true
    580902    },
    581     "define-properties": {
     903    "node_modules/define-properties": {
    582904      "version": "1.1.4",
    583905      "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz",
    584906      "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==",
    585907      "dev": true,
    586       "requires": {
     908      "dependencies": {
    587909        "has-property-descriptors": "^1.0.0",
    588910        "object-keys": "^1.1.1"
    589       }
    590     },
    591     "delayed-stream": {
     911      },
     912      "engines": {
     913        "node": ">= 0.4"
     914      },
     915      "funding": {
     916        "url": "https://github.com/sponsors/ljharb"
     917      }
     918    },
     919    "node_modules/delayed-stream": {
    592920      "version": "1.0.0",
    593921      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
    594       "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
    595     },
    596     "dir-glob": {
     922      "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
     923      "engines": {
     924        "node": ">=0.4.0"
     925      }
     926    },
     927    "node_modules/dir-glob": {
    597928      "version": "3.0.1",
    598929      "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
    599930      "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
    600931      "dev": true,
    601       "requires": {
     932      "dependencies": {
    602933        "path-type": "^4.0.0"
    603       }
    604     },
    605     "doctrine": {
     934      },
     935      "engines": {
     936        "node": ">=8"
     937      }
     938    },
     939    "node_modules/doctrine": {
    606940      "version": "2.1.0",
    607941      "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
    608942      "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
    609943      "dev": true,
    610       "requires": {
     944      "dependencies": {
    611945        "esutils": "^2.0.2"
    612       }
    613     },
    614     "dotenv": {
     946      },
     947      "engines": {
     948        "node": ">=0.10.0"
     949      }
     950    },
     951    "node_modules/dotenv": {
    615952      "version": "16.0.0",
    616953      "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.0.tgz",
    617       "integrity": "sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q=="
    618     },
    619     "emoji-regex": {
     954      "integrity": "sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q==",
     955      "engines": {
     956        "node": ">=12"
     957      }
     958    },
     959    "node_modules/emoji-regex": {
    620960      "version": "9.2.2",
    621961      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
     
    623963      "dev": true
    624964    },
    625     "es-abstract": {
     965    "node_modules/es-abstract": {
    626966      "version": "1.20.0",
    627967      "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.0.tgz",
    628968      "integrity": "sha512-URbD8tgRthKD3YcC39vbvSDrX23upXnPcnGAjQfgxXF5ID75YcENawc9ZX/9iTP9ptUyfCLIxTTuMYoRfiOVKA==",
    629969      "dev": true,
    630       "requires": {
     970      "dependencies": {
    631971        "call-bind": "^1.0.2",
    632972        "es-to-primitive": "^1.2.1",
     
    652992        "string.prototype.trimstart": "^1.0.5",
    653993        "unbox-primitive": "^1.0.2"
    654       }
    655     },
    656     "es-shim-unscopables": {
     994      },
     995      "engines": {
     996        "node": ">= 0.4"
     997      },
     998      "funding": {
     999        "url": "https://github.com/sponsors/ljharb"
     1000      }
     1001    },
     1002    "node_modules/es-shim-unscopables": {
    6571003      "version": "1.0.0",
    6581004      "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz",
    6591005      "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==",
    6601006      "dev": true,
    661       "requires": {
     1007      "dependencies": {
    6621008        "has": "^1.0.3"
    6631009      }
    6641010    },
    665     "es-to-primitive": {
     1011    "node_modules/es-to-primitive": {
    6661012      "version": "1.2.1",
    6671013      "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
    6681014      "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
    6691015      "dev": true,
    670       "requires": {
     1016      "dependencies": {
    6711017        "is-callable": "^1.1.4",
    6721018        "is-date-object": "^1.0.1",
    6731019        "is-symbol": "^1.0.2"
    674       }
    675     },
    676     "escape-string-regexp": {
     1020      },
     1021      "engines": {
     1022        "node": ">= 0.4"
     1023      },
     1024      "funding": {
     1025        "url": "https://github.com/sponsors/ljharb"
     1026      }
     1027    },
     1028    "node_modules/escape-string-regexp": {
    6771029      "version": "4.0.0",
    6781030      "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
    6791031      "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
    680       "dev": true
    681     },
    682     "eslint": {
     1032      "dev": true,
     1033      "engines": {
     1034        "node": ">=10"
     1035      },
     1036      "funding": {
     1037        "url": "https://github.com/sponsors/sindresorhus"
     1038      }
     1039    },
     1040    "node_modules/eslint": {
    6831041      "version": "8.15.0",
    6841042      "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.15.0.tgz",
    6851043      "integrity": "sha512-GG5USZ1jhCu8HJkzGgeK8/+RGnHaNYZGrGDzUtigK3BsGESW/rs2az23XqE0WVwDxy1VRvvjSSGu5nB0Bu+6SA==",
    6861044      "dev": true,
    687       "requires": {
     1045      "dependencies": {
    6881046        "@eslint/eslintrc": "^1.2.3",
    6891047        "@humanwhocodes/config-array": "^0.9.2",
     
    7221080        "v8-compile-cache": "^2.0.3"
    7231081      },
     1082      "bin": {
     1083        "eslint": "bin/eslint.js"
     1084      },
     1085      "engines": {
     1086        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
     1087      },
     1088      "funding": {
     1089        "url": "https://opencollective.com/eslint"
     1090      }
     1091    },
     1092    "node_modules/eslint-config-next": {
     1093      "version": "12.1.6",
     1094      "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-12.1.6.tgz",
     1095      "integrity": "sha512-qoiS3g/EPzfCTkGkaPBSX9W0NGE/B1wNO3oWrd76QszVGrdpLggNqcO8+LR6MB0CNqtp9Q8NoeVrxNVbzM9hqA==",
     1096      "dev": true,
     1097      "dependencies": {
     1098        "@next/eslint-plugin-next": "12.1.6",
     1099        "@rushstack/eslint-patch": "^1.1.3",
     1100        "@typescript-eslint/parser": "^5.21.0",
     1101        "eslint-import-resolver-node": "^0.3.6",
     1102        "eslint-import-resolver-typescript": "^2.7.1",
     1103        "eslint-plugin-import": "^2.26.0",
     1104        "eslint-plugin-jsx-a11y": "^6.5.1",
     1105        "eslint-plugin-react": "^7.29.4",
     1106        "eslint-plugin-react-hooks": "^4.5.0"
     1107      },
     1108      "peerDependencies": {
     1109        "eslint": "^7.23.0 || ^8.0.0",
     1110        "next": ">=10.2.0",
     1111        "typescript": ">=3.3.1"
     1112      },
     1113      "peerDependenciesMeta": {
     1114        "typescript": {
     1115          "optional": true
     1116        }
     1117      }
     1118    },
     1119    "node_modules/eslint-import-resolver-node": {
     1120      "version": "0.3.6",
     1121      "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz",
     1122      "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==",
     1123      "dev": true,
     1124      "dependencies": {
     1125        "debug": "^3.2.7",
     1126        "resolve": "^1.20.0"
     1127      }
     1128    },
     1129    "node_modules/eslint-import-resolver-node/node_modules/debug": {
     1130      "version": "3.2.7",
     1131      "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
     1132      "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
     1133      "dev": true,
     1134      "dependencies": {
     1135        "ms": "^2.1.1"
     1136      }
     1137    },
     1138    "node_modules/eslint-import-resolver-node/node_modules/ms": {
     1139      "version": "2.1.3",
     1140      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
     1141      "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
     1142      "dev": true
     1143    },
     1144    "node_modules/eslint-import-resolver-typescript": {
     1145      "version": "2.7.1",
     1146      "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.7.1.tgz",
     1147      "integrity": "sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==",
     1148      "dev": true,
     1149      "dependencies": {
     1150        "debug": "^4.3.4",
     1151        "glob": "^7.2.0",
     1152        "is-glob": "^4.0.3",
     1153        "resolve": "^1.22.0",
     1154        "tsconfig-paths": "^3.14.1"
     1155      },
     1156      "engines": {
     1157        "node": ">=4"
     1158      },
     1159      "peerDependencies": {
     1160        "eslint": "*",
     1161        "eslint-plugin-import": "*"
     1162      }
     1163    },
     1164    "node_modules/eslint-module-utils": {
     1165      "version": "2.7.3",
     1166      "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz",
     1167      "integrity": "sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==",
     1168      "dev": true,
     1169      "dependencies": {
     1170        "debug": "^3.2.7",
     1171        "find-up": "^2.1.0"
     1172      },
     1173      "engines": {
     1174        "node": ">=4"
     1175      }
     1176    },
     1177    "node_modules/eslint-module-utils/node_modules/debug": {
     1178      "version": "3.2.7",
     1179      "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
     1180      "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
     1181      "dev": true,
     1182      "dependencies": {
     1183        "ms": "^2.1.1"
     1184      }
     1185    },
     1186    "node_modules/eslint-module-utils/node_modules/ms": {
     1187      "version": "2.1.3",
     1188      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
     1189      "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
     1190      "dev": true
     1191    },
     1192    "node_modules/eslint-plugin-import": {
     1193      "version": "2.26.0",
     1194      "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz",
     1195      "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==",
     1196      "dev": true,
     1197      "dependencies": {
     1198        "array-includes": "^3.1.4",
     1199        "array.prototype.flat": "^1.2.5",
     1200        "debug": "^2.6.9",
     1201        "doctrine": "^2.1.0",
     1202        "eslint-import-resolver-node": "^0.3.6",
     1203        "eslint-module-utils": "^2.7.3",
     1204        "has": "^1.0.3",
     1205        "is-core-module": "^2.8.1",
     1206        "is-glob": "^4.0.3",
     1207        "minimatch": "^3.1.2",
     1208        "object.values": "^1.1.5",
     1209        "resolve": "^1.22.0",
     1210        "tsconfig-paths": "^3.14.1"
     1211      },
     1212      "engines": {
     1213        "node": ">=4"
     1214      },
     1215      "peerDependencies": {
     1216        "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8"
     1217      }
     1218    },
     1219    "node_modules/eslint-plugin-import/node_modules/debug": {
     1220      "version": "2.6.9",
     1221      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
     1222      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
     1223      "dev": true,
     1224      "dependencies": {
     1225        "ms": "2.0.0"
     1226      }
     1227    },
     1228    "node_modules/eslint-plugin-import/node_modules/ms": {
     1229      "version": "2.0.0",
     1230      "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
     1231      "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
     1232      "dev": true
     1233    },
     1234    "node_modules/eslint-plugin-jsx-a11y": {
     1235      "version": "6.5.1",
     1236      "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.5.1.tgz",
     1237      "integrity": "sha512-sVCFKX9fllURnXT2JwLN5Qgo24Ug5NF6dxhkmxsMEUZhXRcGg+X3e1JbJ84YePQKBl5E0ZjAH5Q4rkdcGY99+g==",
     1238      "dev": true,
     1239      "dependencies": {
     1240        "@babel/runtime": "^7.16.3",
     1241        "aria-query": "^4.2.2",
     1242        "array-includes": "^3.1.4",
     1243        "ast-types-flow": "^0.0.7",
     1244        "axe-core": "^4.3.5",
     1245        "axobject-query": "^2.2.0",
     1246        "damerau-levenshtein": "^1.0.7",
     1247        "emoji-regex": "^9.2.2",
     1248        "has": "^1.0.3",
     1249        "jsx-ast-utils": "^3.2.1",
     1250        "language-tags": "^1.0.5",
     1251        "minimatch": "^3.0.4"
     1252      },
     1253      "engines": {
     1254        "node": ">=4.0"
     1255      },
     1256      "peerDependencies": {
     1257        "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8"
     1258      }
     1259    },
     1260    "node_modules/eslint-plugin-react": {
     1261      "version": "7.29.4",
     1262      "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.29.4.tgz",
     1263      "integrity": "sha512-CVCXajliVh509PcZYRFyu/BoUEz452+jtQJq2b3Bae4v3xBUWPLCmtmBM+ZinG4MzwmxJgJ2M5rMqhqLVn7MtQ==",
     1264      "dev": true,
     1265      "dependencies": {
     1266        "array-includes": "^3.1.4",
     1267        "array.prototype.flatmap": "^1.2.5",
     1268        "doctrine": "^2.1.0",
     1269        "estraverse": "^5.3.0",
     1270        "jsx-ast-utils": "^2.4.1 || ^3.0.0",
     1271        "minimatch": "^3.1.2",
     1272        "object.entries": "^1.1.5",
     1273        "object.fromentries": "^2.0.5",
     1274        "object.hasown": "^1.1.0",
     1275        "object.values": "^1.1.5",
     1276        "prop-types": "^15.8.1",
     1277        "resolve": "^2.0.0-next.3",
     1278        "semver": "^6.3.0",
     1279        "string.prototype.matchall": "^4.0.6"
     1280      },
     1281      "engines": {
     1282        "node": ">=4"
     1283      },
     1284      "peerDependencies": {
     1285        "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8"
     1286      }
     1287    },
     1288    "node_modules/eslint-plugin-react-hooks": {
     1289      "version": "4.5.0",
     1290      "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.5.0.tgz",
     1291      "integrity": "sha512-8k1gRt7D7h03kd+SAAlzXkQwWK22BnK6GKZG+FJA6BAGy22CFvl8kCIXKpVux0cCxMWDQUPqSok0LKaZ0aOcCw==",
     1292      "dev": true,
     1293      "engines": {
     1294        "node": ">=10"
     1295      },
     1296      "peerDependencies": {
     1297        "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0"
     1298      }
     1299    },
     1300    "node_modules/eslint-plugin-react/node_modules/resolve": {
     1301      "version": "2.0.0-next.3",
     1302      "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.3.tgz",
     1303      "integrity": "sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==",
     1304      "dev": true,
     1305      "dependencies": {
     1306        "is-core-module": "^2.2.0",
     1307        "path-parse": "^1.0.6"
     1308      },
     1309      "funding": {
     1310        "url": "https://github.com/sponsors/ljharb"
     1311      }
     1312    },
     1313    "node_modules/eslint-scope": {
     1314      "version": "7.1.1",
     1315      "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
     1316      "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
     1317      "dev": true,
     1318      "dependencies": {
     1319        "esrecurse": "^4.3.0",
     1320        "estraverse": "^5.2.0"
     1321      },
     1322      "engines": {
     1323        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
     1324      }
     1325    },
     1326    "node_modules/eslint-utils": {
     1327      "version": "3.0.0",
     1328      "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz",
     1329      "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==",
     1330      "dev": true,
     1331      "dependencies": {
     1332        "eslint-visitor-keys": "^2.0.0"
     1333      },
     1334      "engines": {
     1335        "node": "^10.0.0 || ^12.0.0 || >= 14.0.0"
     1336      },
     1337      "funding": {
     1338        "url": "https://github.com/sponsors/mysticatea"
     1339      },
     1340      "peerDependencies": {
     1341        "eslint": ">=5"
     1342      }
     1343    },
     1344    "node_modules/eslint-utils/node_modules/eslint-visitor-keys": {
     1345      "version": "2.1.0",
     1346      "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
     1347      "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
     1348      "dev": true,
     1349      "engines": {
     1350        "node": ">=10"
     1351      }
     1352    },
     1353    "node_modules/eslint-visitor-keys": {
     1354      "version": "3.3.0",
     1355      "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz",
     1356      "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==",
     1357      "dev": true,
     1358      "engines": {
     1359        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
     1360      }
     1361    },
     1362    "node_modules/eslint/node_modules/doctrine": {
     1363      "version": "3.0.0",
     1364      "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
     1365      "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
     1366      "dev": true,
     1367      "dependencies": {
     1368        "esutils": "^2.0.2"
     1369      },
     1370      "engines": {
     1371        "node": ">=6.0.0"
     1372      }
     1373    },
     1374    "node_modules/espree": {
     1375      "version": "9.3.2",
     1376      "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.2.tgz",
     1377      "integrity": "sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==",
     1378      "dev": true,
     1379      "dependencies": {
     1380        "acorn": "^8.7.1",
     1381        "acorn-jsx": "^5.3.2",
     1382        "eslint-visitor-keys": "^3.3.0"
     1383      },
     1384      "engines": {
     1385        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
     1386      }
     1387    },
     1388    "node_modules/esquery": {
     1389      "version": "1.4.0",
     1390      "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
     1391      "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
     1392      "dev": true,
     1393      "dependencies": {
     1394        "estraverse": "^5.1.0"
     1395      },
     1396      "engines": {
     1397        "node": ">=0.10"
     1398      }
     1399    },
     1400    "node_modules/esrecurse": {
     1401      "version": "4.3.0",
     1402      "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
     1403      "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
     1404      "dev": true,
     1405      "dependencies": {
     1406        "estraverse": "^5.2.0"
     1407      },
     1408      "engines": {
     1409        "node": ">=4.0"
     1410      }
     1411    },
     1412    "node_modules/estraverse": {
     1413      "version": "5.3.0",
     1414      "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
     1415      "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
     1416      "dev": true,
     1417      "engines": {
     1418        "node": ">=4.0"
     1419      }
     1420    },
     1421    "node_modules/esutils": {
     1422      "version": "2.0.3",
     1423      "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
     1424      "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
     1425      "dev": true,
     1426      "engines": {
     1427        "node": ">=0.10.0"
     1428      }
     1429    },
     1430    "node_modules/fast-deep-equal": {
     1431      "version": "3.1.3",
     1432      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
     1433      "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
     1434      "dev": true
     1435    },
     1436    "node_modules/fast-glob": {
     1437      "version": "3.2.11",
     1438      "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz",
     1439      "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==",
     1440      "dev": true,
     1441      "dependencies": {
     1442        "@nodelib/fs.stat": "^2.0.2",
     1443        "@nodelib/fs.walk": "^1.2.3",
     1444        "glob-parent": "^5.1.2",
     1445        "merge2": "^1.3.0",
     1446        "micromatch": "^4.0.4"
     1447      },
     1448      "engines": {
     1449        "node": ">=8.6.0"
     1450      }
     1451    },
     1452    "node_modules/fast-glob/node_modules/glob-parent": {
     1453      "version": "5.1.2",
     1454      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
     1455      "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
     1456      "dev": true,
     1457      "dependencies": {
     1458        "is-glob": "^4.0.1"
     1459      },
     1460      "engines": {
     1461        "node": ">= 6"
     1462      }
     1463    },
     1464    "node_modules/fast-json-stable-stringify": {
     1465      "version": "2.1.0",
     1466      "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
     1467      "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
     1468      "dev": true
     1469    },
     1470    "node_modules/fast-levenshtein": {
     1471      "version": "2.0.6",
     1472      "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
     1473      "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
     1474      "dev": true
     1475    },
     1476    "node_modules/fastq": {
     1477      "version": "1.13.0",
     1478      "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
     1479      "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==",
     1480      "dev": true,
     1481      "dependencies": {
     1482        "reusify": "^1.0.4"
     1483      }
     1484    },
     1485    "node_modules/file-entry-cache": {
     1486      "version": "6.0.1",
     1487      "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
     1488      "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
     1489      "dev": true,
     1490      "dependencies": {
     1491        "flat-cache": "^3.0.4"
     1492      },
     1493      "engines": {
     1494        "node": "^10.12.0 || >=12.0.0"
     1495      }
     1496    },
     1497    "node_modules/fill-range": {
     1498      "version": "7.0.1",
     1499      "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
     1500      "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
     1501      "dev": true,
     1502      "dependencies": {
     1503        "to-regex-range": "^5.0.1"
     1504      },
     1505      "engines": {
     1506        "node": ">=8"
     1507      }
     1508    },
     1509    "node_modules/find-up": {
     1510      "version": "2.1.0",
     1511      "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
     1512      "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
     1513      "dev": true,
     1514      "dependencies": {
     1515        "locate-path": "^2.0.0"
     1516      },
     1517      "engines": {
     1518        "node": ">=4"
     1519      }
     1520    },
     1521    "node_modules/flat-cache": {
     1522      "version": "3.0.4",
     1523      "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
     1524      "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
     1525      "dev": true,
     1526      "dependencies": {
     1527        "flatted": "^3.1.0",
     1528        "rimraf": "^3.0.2"
     1529      },
     1530      "engines": {
     1531        "node": "^10.12.0 || >=12.0.0"
     1532      }
     1533    },
     1534    "node_modules/flatted": {
     1535      "version": "3.2.5",
     1536      "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz",
     1537      "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==",
     1538      "dev": true
     1539    },
     1540    "node_modules/follow-redirects": {
     1541      "version": "1.15.0",
     1542      "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.0.tgz",
     1543      "integrity": "sha512-aExlJShTV4qOUOL7yF1U5tvLCB0xQuudbf6toyYA0E/acBNw71mvjFTnLaRp50aQaYocMR0a/RMMBIHeZnGyjQ==",
     1544      "funding": [
     1545        {
     1546          "type": "individual",
     1547          "url": "https://github.com/sponsors/RubenVerborgh"
     1548        }
     1549      ],
     1550      "engines": {
     1551        "node": ">=4.0"
     1552      },
     1553      "peerDependenciesMeta": {
     1554        "debug": {
     1555          "optional": true
     1556        }
     1557      }
     1558    },
     1559    "node_modules/form-data": {
     1560      "version": "4.0.0",
     1561      "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
     1562      "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
     1563      "dependencies": {
     1564        "asynckit": "^0.4.0",
     1565        "combined-stream": "^1.0.8",
     1566        "mime-types": "^2.1.12"
     1567      },
     1568      "engines": {
     1569        "node": ">= 6"
     1570      }
     1571    },
     1572    "node_modules/fs.realpath": {
     1573      "version": "1.0.0",
     1574      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
     1575      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
     1576      "dev": true
     1577    },
     1578    "node_modules/function-bind": {
     1579      "version": "1.1.1",
     1580      "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
     1581      "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
     1582      "dev": true
     1583    },
     1584    "node_modules/function.prototype.name": {
     1585      "version": "1.1.5",
     1586      "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz",
     1587      "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==",
     1588      "dev": true,
     1589      "dependencies": {
     1590        "call-bind": "^1.0.2",
     1591        "define-properties": "^1.1.3",
     1592        "es-abstract": "^1.19.0",
     1593        "functions-have-names": "^1.2.2"
     1594      },
     1595      "engines": {
     1596        "node": ">= 0.4"
     1597      },
     1598      "funding": {
     1599        "url": "https://github.com/sponsors/ljharb"
     1600      }
     1601    },
     1602    "node_modules/functional-red-black-tree": {
     1603      "version": "1.0.1",
     1604      "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
     1605      "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
     1606      "dev": true
     1607    },
     1608    "node_modules/functions-have-names": {
     1609      "version": "1.2.3",
     1610      "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
     1611      "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
     1612      "dev": true,
     1613      "funding": {
     1614        "url": "https://github.com/sponsors/ljharb"
     1615      }
     1616    },
     1617    "node_modules/get-intrinsic": {
     1618      "version": "1.1.1",
     1619      "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
     1620      "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
     1621      "dev": true,
     1622      "dependencies": {
     1623        "function-bind": "^1.1.1",
     1624        "has": "^1.0.3",
     1625        "has-symbols": "^1.0.1"
     1626      },
     1627      "funding": {
     1628        "url": "https://github.com/sponsors/ljharb"
     1629      }
     1630    },
     1631    "node_modules/get-symbol-description": {
     1632      "version": "1.0.0",
     1633      "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
     1634      "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
     1635      "dev": true,
     1636      "dependencies": {
     1637        "call-bind": "^1.0.2",
     1638        "get-intrinsic": "^1.1.1"
     1639      },
     1640      "engines": {
     1641        "node": ">= 0.4"
     1642      },
     1643      "funding": {
     1644        "url": "https://github.com/sponsors/ljharb"
     1645      }
     1646    },
     1647    "node_modules/glob": {
     1648      "version": "7.2.0",
     1649      "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
     1650      "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
     1651      "dev": true,
     1652      "dependencies": {
     1653        "fs.realpath": "^1.0.0",
     1654        "inflight": "^1.0.4",
     1655        "inherits": "2",
     1656        "minimatch": "^3.0.4",
     1657        "once": "^1.3.0",
     1658        "path-is-absolute": "^1.0.0"
     1659      },
     1660      "engines": {
     1661        "node": "*"
     1662      },
     1663      "funding": {
     1664        "url": "https://github.com/sponsors/isaacs"
     1665      }
     1666    },
     1667    "node_modules/glob-parent": {
     1668      "version": "6.0.2",
     1669      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
     1670      "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
     1671      "dev": true,
     1672      "dependencies": {
     1673        "is-glob": "^4.0.3"
     1674      },
     1675      "engines": {
     1676        "node": ">=10.13.0"
     1677      }
     1678    },
     1679    "node_modules/globals": {
     1680      "version": "13.14.0",
     1681      "resolved": "https://registry.npmjs.org/globals/-/globals-13.14.0.tgz",
     1682      "integrity": "sha512-ERO68sOYwm5UuLvSJTY7w7NP2c8S4UcXs3X1GBX8cwOr+ShOcDBbCY5mH4zxz0jsYCdJ8ve8Mv9n2YGJMB1aeg==",
     1683      "dev": true,
     1684      "dependencies": {
     1685        "type-fest": "^0.20.2"
     1686      },
     1687      "engines": {
     1688        "node": ">=8"
     1689      },
     1690      "funding": {
     1691        "url": "https://github.com/sponsors/sindresorhus"
     1692      }
     1693    },
     1694    "node_modules/globby": {
     1695      "version": "11.1.0",
     1696      "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
     1697      "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
     1698      "dev": true,
     1699      "dependencies": {
     1700        "array-union": "^2.1.0",
     1701        "dir-glob": "^3.0.1",
     1702        "fast-glob": "^3.2.9",
     1703        "ignore": "^5.2.0",
     1704        "merge2": "^1.4.1",
     1705        "slash": "^3.0.0"
     1706      },
     1707      "engines": {
     1708        "node": ">=10"
     1709      },
     1710      "funding": {
     1711        "url": "https://github.com/sponsors/sindresorhus"
     1712      }
     1713    },
     1714    "node_modules/has": {
     1715      "version": "1.0.3",
     1716      "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
     1717      "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
     1718      "dev": true,
     1719      "dependencies": {
     1720        "function-bind": "^1.1.1"
     1721      },
     1722      "engines": {
     1723        "node": ">= 0.4.0"
     1724      }
     1725    },
     1726    "node_modules/has-bigints": {
     1727      "version": "1.0.2",
     1728      "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
     1729      "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
     1730      "dev": true,
     1731      "funding": {
     1732        "url": "https://github.com/sponsors/ljharb"
     1733      }
     1734    },
     1735    "node_modules/has-flag": {
     1736      "version": "4.0.0",
     1737      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
     1738      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
     1739      "dev": true,
     1740      "engines": {
     1741        "node": ">=8"
     1742      }
     1743    },
     1744    "node_modules/has-property-descriptors": {
     1745      "version": "1.0.0",
     1746      "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
     1747      "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
     1748      "dev": true,
     1749      "dependencies": {
     1750        "get-intrinsic": "^1.1.1"
     1751      },
     1752      "funding": {
     1753        "url": "https://github.com/sponsors/ljharb"
     1754      }
     1755    },
     1756    "node_modules/has-symbols": {
     1757      "version": "1.0.3",
     1758      "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
     1759      "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
     1760      "dev": true,
     1761      "engines": {
     1762        "node": ">= 0.4"
     1763      },
     1764      "funding": {
     1765        "url": "https://github.com/sponsors/ljharb"
     1766      }
     1767    },
     1768    "node_modules/has-tostringtag": {
     1769      "version": "1.0.0",
     1770      "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz",
     1771      "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==",
     1772      "dev": true,
     1773      "dependencies": {
     1774        "has-symbols": "^1.0.2"
     1775      },
     1776      "engines": {
     1777        "node": ">= 0.4"
     1778      },
     1779      "funding": {
     1780        "url": "https://github.com/sponsors/ljharb"
     1781      }
     1782    },
     1783    "node_modules/hoist-non-react-statics": {
     1784      "version": "3.3.2",
     1785      "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
     1786      "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
     1787      "dependencies": {
     1788        "react-is": "^16.7.0"
     1789      }
     1790    },
     1791    "node_modules/ignore": {
     1792      "version": "5.2.0",
     1793      "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz",
     1794      "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==",
     1795      "dev": true,
     1796      "engines": {
     1797        "node": ">= 4"
     1798      }
     1799    },
     1800    "node_modules/immer": {
     1801      "version": "9.0.12",
     1802      "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.12.tgz",
     1803      "integrity": "sha512-lk7UNmSbAukB5B6dh9fnh5D0bJTOFKxVg2cyJWTYrWRfhLrLMBquONcUs3aFq507hNoIZEDDh8lb8UtOizSMhA==",
     1804      "funding": {
     1805        "type": "opencollective",
     1806        "url": "https://opencollective.com/immer"
     1807      }
     1808    },
     1809    "node_modules/import-fresh": {
     1810      "version": "3.3.0",
     1811      "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
     1812      "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
     1813      "dev": true,
     1814      "dependencies": {
     1815        "parent-module": "^1.0.0",
     1816        "resolve-from": "^4.0.0"
     1817      },
     1818      "engines": {
     1819        "node": ">=6"
     1820      },
     1821      "funding": {
     1822        "url": "https://github.com/sponsors/sindresorhus"
     1823      }
     1824    },
     1825    "node_modules/imurmurhash": {
     1826      "version": "0.1.4",
     1827      "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
     1828      "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
     1829      "dev": true,
     1830      "engines": {
     1831        "node": ">=0.8.19"
     1832      }
     1833    },
     1834    "node_modules/inflight": {
     1835      "version": "1.0.6",
     1836      "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
     1837      "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
     1838      "dev": true,
     1839      "dependencies": {
     1840        "once": "^1.3.0",
     1841        "wrappy": "1"
     1842      }
     1843    },
     1844    "node_modules/inherits": {
     1845      "version": "2.0.4",
     1846      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
     1847      "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
     1848      "dev": true
     1849    },
     1850    "node_modules/internal-slot": {
     1851      "version": "1.0.3",
     1852      "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz",
     1853      "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==",
     1854      "dev": true,
     1855      "dependencies": {
     1856        "get-intrinsic": "^1.1.0",
     1857        "has": "^1.0.3",
     1858        "side-channel": "^1.0.4"
     1859      },
     1860      "engines": {
     1861        "node": ">= 0.4"
     1862      }
     1863    },
     1864    "node_modules/is-bigint": {
     1865      "version": "1.0.4",
     1866      "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz",
     1867      "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
     1868      "dev": true,
     1869      "dependencies": {
     1870        "has-bigints": "^1.0.1"
     1871      },
     1872      "funding": {
     1873        "url": "https://github.com/sponsors/ljharb"
     1874      }
     1875    },
     1876    "node_modules/is-boolean-object": {
     1877      "version": "1.1.2",
     1878      "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
     1879      "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
     1880      "dev": true,
     1881      "dependencies": {
     1882        "call-bind": "^1.0.2",
     1883        "has-tostringtag": "^1.0.0"
     1884      },
     1885      "engines": {
     1886        "node": ">= 0.4"
     1887      },
     1888      "funding": {
     1889        "url": "https://github.com/sponsors/ljharb"
     1890      }
     1891    },
     1892    "node_modules/is-callable": {
     1893      "version": "1.2.4",
     1894      "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz",
     1895      "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==",
     1896      "dev": true,
     1897      "engines": {
     1898        "node": ">= 0.4"
     1899      },
     1900      "funding": {
     1901        "url": "https://github.com/sponsors/ljharb"
     1902      }
     1903    },
     1904    "node_modules/is-core-module": {
     1905      "version": "2.9.0",
     1906      "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz",
     1907      "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==",
     1908      "dev": true,
     1909      "dependencies": {
     1910        "has": "^1.0.3"
     1911      },
     1912      "funding": {
     1913        "url": "https://github.com/sponsors/ljharb"
     1914      }
     1915    },
     1916    "node_modules/is-date-object": {
     1917      "version": "1.0.5",
     1918      "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz",
     1919      "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
     1920      "dev": true,
     1921      "dependencies": {
     1922        "has-tostringtag": "^1.0.0"
     1923      },
     1924      "engines": {
     1925        "node": ">= 0.4"
     1926      },
     1927      "funding": {
     1928        "url": "https://github.com/sponsors/ljharb"
     1929      }
     1930    },
     1931    "node_modules/is-extglob": {
     1932      "version": "2.1.1",
     1933      "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
     1934      "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
     1935      "dev": true,
     1936      "engines": {
     1937        "node": ">=0.10.0"
     1938      }
     1939    },
     1940    "node_modules/is-glob": {
     1941      "version": "4.0.3",
     1942      "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
     1943      "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
     1944      "dev": true,
     1945      "dependencies": {
     1946        "is-extglob": "^2.1.1"
     1947      },
     1948      "engines": {
     1949        "node": ">=0.10.0"
     1950      }
     1951    },
     1952    "node_modules/is-negative-zero": {
     1953      "version": "2.0.2",
     1954      "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
     1955      "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==",
     1956      "dev": true,
     1957      "engines": {
     1958        "node": ">= 0.4"
     1959      },
     1960      "funding": {
     1961        "url": "https://github.com/sponsors/ljharb"
     1962      }
     1963    },
     1964    "node_modules/is-number": {
     1965      "version": "7.0.0",
     1966      "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
     1967      "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
     1968      "dev": true,
     1969      "engines": {
     1970        "node": ">=0.12.0"
     1971      }
     1972    },
     1973    "node_modules/is-number-object": {
     1974      "version": "1.0.7",
     1975      "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz",
     1976      "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
     1977      "dev": true,
     1978      "dependencies": {
     1979        "has-tostringtag": "^1.0.0"
     1980      },
     1981      "engines": {
     1982        "node": ">= 0.4"
     1983      },
     1984      "funding": {
     1985        "url": "https://github.com/sponsors/ljharb"
     1986      }
     1987    },
     1988    "node_modules/is-regex": {
     1989      "version": "1.1.4",
     1990      "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz",
     1991      "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
     1992      "dev": true,
     1993      "dependencies": {
     1994        "call-bind": "^1.0.2",
     1995        "has-tostringtag": "^1.0.0"
     1996      },
     1997      "engines": {
     1998        "node": ">= 0.4"
     1999      },
     2000      "funding": {
     2001        "url": "https://github.com/sponsors/ljharb"
     2002      }
     2003    },
     2004    "node_modules/is-shared-array-buffer": {
     2005      "version": "1.0.2",
     2006      "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
     2007      "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==",
     2008      "dev": true,
     2009      "dependencies": {
     2010        "call-bind": "^1.0.2"
     2011      },
     2012      "funding": {
     2013        "url": "https://github.com/sponsors/ljharb"
     2014      }
     2015    },
     2016    "node_modules/is-string": {
     2017      "version": "1.0.7",
     2018      "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz",
     2019      "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
     2020      "dev": true,
     2021      "dependencies": {
     2022        "has-tostringtag": "^1.0.0"
     2023      },
     2024      "engines": {
     2025        "node": ">= 0.4"
     2026      },
     2027      "funding": {
     2028        "url": "https://github.com/sponsors/ljharb"
     2029      }
     2030    },
     2031    "node_modules/is-symbol": {
     2032      "version": "1.0.4",
     2033      "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
     2034      "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
     2035      "dev": true,
     2036      "dependencies": {
     2037        "has-symbols": "^1.0.2"
     2038      },
     2039      "engines": {
     2040        "node": ">= 0.4"
     2041      },
     2042      "funding": {
     2043        "url": "https://github.com/sponsors/ljharb"
     2044      }
     2045    },
     2046    "node_modules/is-weakref": {
     2047      "version": "1.0.2",
     2048      "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz",
     2049      "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
     2050      "dev": true,
     2051      "dependencies": {
     2052        "call-bind": "^1.0.2"
     2053      },
     2054      "funding": {
     2055        "url": "https://github.com/sponsors/ljharb"
     2056      }
     2057    },
     2058    "node_modules/isexe": {
     2059      "version": "2.0.0",
     2060      "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
     2061      "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
     2062      "dev": true
     2063    },
     2064    "node_modules/js-tokens": {
     2065      "version": "4.0.0",
     2066      "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
     2067      "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
     2068    },
     2069    "node_modules/js-yaml": {
     2070      "version": "4.1.0",
     2071      "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
     2072      "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
     2073      "dev": true,
     2074      "dependencies": {
     2075        "argparse": "^2.0.1"
     2076      },
     2077      "bin": {
     2078        "js-yaml": "bin/js-yaml.js"
     2079      }
     2080    },
     2081    "node_modules/json-schema-traverse": {
     2082      "version": "0.4.1",
     2083      "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
     2084      "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
     2085      "dev": true
     2086    },
     2087    "node_modules/json-stable-stringify-without-jsonify": {
     2088      "version": "1.0.1",
     2089      "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
     2090      "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
     2091      "dev": true
     2092    },
     2093    "node_modules/json5": {
     2094      "version": "1.0.1",
     2095      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
     2096      "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
     2097      "dev": true,
     2098      "dependencies": {
     2099        "minimist": "^1.2.0"
     2100      },
     2101      "bin": {
     2102        "json5": "lib/cli.js"
     2103      }
     2104    },
     2105    "node_modules/jsx-ast-utils": {
     2106      "version": "3.3.0",
     2107      "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.0.tgz",
     2108      "integrity": "sha512-XzO9luP6L0xkxwhIJMTJQpZo/eeN60K08jHdexfD569AGxeNug6UketeHXEhROoM8aR7EcUoOQmIhcJQjcuq8Q==",
     2109      "dev": true,
     2110      "dependencies": {
     2111        "array-includes": "^3.1.4",
     2112        "object.assign": "^4.1.2"
     2113      },
     2114      "engines": {
     2115        "node": ">=4.0"
     2116      }
     2117    },
     2118    "node_modules/language-subtag-registry": {
     2119      "version": "0.3.21",
     2120      "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz",
     2121      "integrity": "sha512-L0IqwlIXjilBVVYKFT37X9Ih11Um5NEl9cbJIuU/SwP/zEEAbBPOnEeeuxVMf45ydWQRDQN3Nqc96OgbH1K+Pg==",
     2122      "dev": true
     2123    },
     2124    "node_modules/language-tags": {
     2125      "version": "1.0.5",
     2126      "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz",
     2127      "integrity": "sha1-0yHbxNowuovzAk4ED6XBRmH5GTo=",
     2128      "dev": true,
     2129      "dependencies": {
     2130        "language-subtag-registry": "~0.3.2"
     2131      }
     2132    },
     2133    "node_modules/levn": {
     2134      "version": "0.4.1",
     2135      "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
     2136      "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
     2137      "dev": true,
     2138      "dependencies": {
     2139        "prelude-ls": "^1.2.1",
     2140        "type-check": "~0.4.0"
     2141      },
     2142      "engines": {
     2143        "node": ">= 0.8.0"
     2144      }
     2145    },
     2146    "node_modules/locate-path": {
     2147      "version": "2.0.0",
     2148      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
     2149      "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
     2150      "dev": true,
     2151      "dependencies": {
     2152        "p-locate": "^2.0.0",
     2153        "path-exists": "^3.0.0"
     2154      },
     2155      "engines": {
     2156        "node": ">=4"
     2157      }
     2158    },
     2159    "node_modules/lodash.merge": {
     2160      "version": "4.6.2",
     2161      "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
     2162      "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
     2163      "dev": true
     2164    },
     2165    "node_modules/loose-envify": {
     2166      "version": "1.4.0",
     2167      "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
     2168      "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
     2169      "dependencies": {
     2170        "js-tokens": "^3.0.0 || ^4.0.0"
     2171      },
     2172      "bin": {
     2173        "loose-envify": "cli.js"
     2174      }
     2175    },
     2176    "node_modules/lru-cache": {
     2177      "version": "6.0.0",
     2178      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
     2179      "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
     2180      "dev": true,
     2181      "dependencies": {
     2182        "yallist": "^4.0.0"
     2183      },
     2184      "engines": {
     2185        "node": ">=10"
     2186      }
     2187    },
     2188    "node_modules/merge2": {
     2189      "version": "1.4.1",
     2190      "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
     2191      "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
     2192      "dev": true,
     2193      "engines": {
     2194        "node": ">= 8"
     2195      }
     2196    },
     2197    "node_modules/micromatch": {
     2198      "version": "4.0.5",
     2199      "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
     2200      "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
     2201      "dev": true,
     2202      "dependencies": {
     2203        "braces": "^3.0.2",
     2204        "picomatch": "^2.3.1"
     2205      },
     2206      "engines": {
     2207        "node": ">=8.6"
     2208      }
     2209    },
     2210    "node_modules/mime-db": {
     2211      "version": "1.52.0",
     2212      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
     2213      "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
     2214      "engines": {
     2215        "node": ">= 0.6"
     2216      }
     2217    },
     2218    "node_modules/mime-types": {
     2219      "version": "2.1.35",
     2220      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
     2221      "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
     2222      "dependencies": {
     2223        "mime-db": "1.52.0"
     2224      },
     2225      "engines": {
     2226        "node": ">= 0.6"
     2227      }
     2228    },
     2229    "node_modules/minimatch": {
     2230      "version": "3.1.2",
     2231      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
     2232      "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
     2233      "dev": true,
     2234      "dependencies": {
     2235        "brace-expansion": "^1.1.7"
     2236      },
     2237      "engines": {
     2238        "node": "*"
     2239      }
     2240    },
     2241    "node_modules/minimist": {
     2242      "version": "1.2.6",
     2243      "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
     2244      "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==",
     2245      "dev": true
     2246    },
     2247    "node_modules/ms": {
     2248      "version": "2.1.2",
     2249      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
     2250      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
     2251      "dev": true
     2252    },
     2253    "node_modules/nanoid": {
     2254      "version": "3.3.4",
     2255      "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
     2256      "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
     2257      "bin": {
     2258        "nanoid": "bin/nanoid.cjs"
     2259      },
     2260      "engines": {
     2261        "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
     2262      }
     2263    },
     2264    "node_modules/natural-compare": {
     2265      "version": "1.4.0",
     2266      "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
     2267      "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
     2268      "dev": true
     2269    },
     2270    "node_modules/next": {
     2271      "version": "12.1.6",
     2272      "resolved": "https://registry.npmjs.org/next/-/next-12.1.6.tgz",
     2273      "integrity": "sha512-cebwKxL3/DhNKfg9tPZDQmbRKjueqykHHbgaoG4VBRH3AHQJ2HO0dbKFiS1hPhe1/qgc2d/hFeadsbPicmLD+A==",
     2274      "dependencies": {
     2275        "@next/env": "12.1.6",
     2276        "caniuse-lite": "^1.0.30001332",
     2277        "postcss": "8.4.5",
     2278        "styled-jsx": "5.0.2"
     2279      },
     2280      "bin": {
     2281        "next": "dist/bin/next"
     2282      },
     2283      "engines": {
     2284        "node": ">=12.22.0"
     2285      },
     2286      "optionalDependencies": {
     2287        "@next/swc-android-arm-eabi": "12.1.6",
     2288        "@next/swc-android-arm64": "12.1.6",
     2289        "@next/swc-darwin-arm64": "12.1.6",
     2290        "@next/swc-darwin-x64": "12.1.6",
     2291        "@next/swc-linux-arm-gnueabihf": "12.1.6",
     2292        "@next/swc-linux-arm64-gnu": "12.1.6",
     2293        "@next/swc-linux-arm64-musl": "12.1.6",
     2294        "@next/swc-linux-x64-gnu": "12.1.6",
     2295        "@next/swc-linux-x64-musl": "12.1.6",
     2296        "@next/swc-win32-arm64-msvc": "12.1.6",
     2297        "@next/swc-win32-ia32-msvc": "12.1.6",
     2298        "@next/swc-win32-x64-msvc": "12.1.6"
     2299      },
     2300      "peerDependencies": {
     2301        "fibers": ">= 3.1.0",
     2302        "node-sass": "^6.0.0 || ^7.0.0",
     2303        "react": "^17.0.2 || ^18.0.0-0",
     2304        "react-dom": "^17.0.2 || ^18.0.0-0",
     2305        "sass": "^1.3.0"
     2306      },
     2307      "peerDependenciesMeta": {
     2308        "fibers": {
     2309          "optional": true
     2310        },
     2311        "node-sass": {
     2312          "optional": true
     2313        },
     2314        "sass": {
     2315          "optional": true
     2316        }
     2317      }
     2318    },
     2319    "node_modules/object-assign": {
     2320      "version": "4.1.1",
     2321      "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
     2322      "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
     2323      "dev": true,
     2324      "engines": {
     2325        "node": ">=0.10.0"
     2326      }
     2327    },
     2328    "node_modules/object-inspect": {
     2329      "version": "1.12.0",
     2330      "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz",
     2331      "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==",
     2332      "dev": true,
     2333      "funding": {
     2334        "url": "https://github.com/sponsors/ljharb"
     2335      }
     2336    },
     2337    "node_modules/object-keys": {
     2338      "version": "1.1.1",
     2339      "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
     2340      "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
     2341      "dev": true,
     2342      "engines": {
     2343        "node": ">= 0.4"
     2344      }
     2345    },
     2346    "node_modules/object.assign": {
     2347      "version": "4.1.2",
     2348      "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz",
     2349      "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==",
     2350      "dev": true,
     2351      "dependencies": {
     2352        "call-bind": "^1.0.0",
     2353        "define-properties": "^1.1.3",
     2354        "has-symbols": "^1.0.1",
     2355        "object-keys": "^1.1.1"
     2356      },
     2357      "engines": {
     2358        "node": ">= 0.4"
     2359      },
     2360      "funding": {
     2361        "url": "https://github.com/sponsors/ljharb"
     2362      }
     2363    },
     2364    "node_modules/object.entries": {
     2365      "version": "1.1.5",
     2366      "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz",
     2367      "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==",
     2368      "dev": true,
     2369      "dependencies": {
     2370        "call-bind": "^1.0.2",
     2371        "define-properties": "^1.1.3",
     2372        "es-abstract": "^1.19.1"
     2373      },
     2374      "engines": {
     2375        "node": ">= 0.4"
     2376      }
     2377    },
     2378    "node_modules/object.fromentries": {
     2379      "version": "2.0.5",
     2380      "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz",
     2381      "integrity": "sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==",
     2382      "dev": true,
     2383      "dependencies": {
     2384        "call-bind": "^1.0.2",
     2385        "define-properties": "^1.1.3",
     2386        "es-abstract": "^1.19.1"
     2387      },
     2388      "engines": {
     2389        "node": ">= 0.4"
     2390      },
     2391      "funding": {
     2392        "url": "https://github.com/sponsors/ljharb"
     2393      }
     2394    },
     2395    "node_modules/object.hasown": {
     2396      "version": "1.1.1",
     2397      "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.1.tgz",
     2398      "integrity": "sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A==",
     2399      "dev": true,
     2400      "dependencies": {
     2401        "define-properties": "^1.1.4",
     2402        "es-abstract": "^1.19.5"
     2403      },
     2404      "funding": {
     2405        "url": "https://github.com/sponsors/ljharb"
     2406      }
     2407    },
     2408    "node_modules/object.values": {
     2409      "version": "1.1.5",
     2410      "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz",
     2411      "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==",
     2412      "dev": true,
     2413      "dependencies": {
     2414        "call-bind": "^1.0.2",
     2415        "define-properties": "^1.1.3",
     2416        "es-abstract": "^1.19.1"
     2417      },
     2418      "engines": {
     2419        "node": ">= 0.4"
     2420      },
     2421      "funding": {
     2422        "url": "https://github.com/sponsors/ljharb"
     2423      }
     2424    },
     2425    "node_modules/once": {
     2426      "version": "1.4.0",
     2427      "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
     2428      "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
     2429      "dev": true,
     2430      "dependencies": {
     2431        "wrappy": "1"
     2432      }
     2433    },
     2434    "node_modules/optionator": {
     2435      "version": "0.9.1",
     2436      "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
     2437      "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
     2438      "dev": true,
     2439      "dependencies": {
     2440        "deep-is": "^0.1.3",
     2441        "fast-levenshtein": "^2.0.6",
     2442        "levn": "^0.4.1",
     2443        "prelude-ls": "^1.2.1",
     2444        "type-check": "^0.4.0",
     2445        "word-wrap": "^1.2.3"
     2446      },
     2447      "engines": {
     2448        "node": ">= 0.8.0"
     2449      }
     2450    },
     2451    "node_modules/p-limit": {
     2452      "version": "1.3.0",
     2453      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
     2454      "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
     2455      "dev": true,
     2456      "dependencies": {
     2457        "p-try": "^1.0.0"
     2458      },
     2459      "engines": {
     2460        "node": ">=4"
     2461      }
     2462    },
     2463    "node_modules/p-locate": {
     2464      "version": "2.0.0",
     2465      "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
     2466      "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
     2467      "dev": true,
     2468      "dependencies": {
     2469        "p-limit": "^1.1.0"
     2470      },
     2471      "engines": {
     2472        "node": ">=4"
     2473      }
     2474    },
     2475    "node_modules/p-try": {
     2476      "version": "1.0.0",
     2477      "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
     2478      "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
     2479      "dev": true,
     2480      "engines": {
     2481        "node": ">=4"
     2482      }
     2483    },
     2484    "node_modules/packet-reader": {
     2485      "version": "1.0.0",
     2486      "resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz",
     2487      "integrity": "sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ=="
     2488    },
     2489    "node_modules/parent-module": {
     2490      "version": "1.0.1",
     2491      "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
     2492      "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
     2493      "dev": true,
     2494      "dependencies": {
     2495        "callsites": "^3.0.0"
     2496      },
     2497      "engines": {
     2498        "node": ">=6"
     2499      }
     2500    },
     2501    "node_modules/path-exists": {
     2502      "version": "3.0.0",
     2503      "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
     2504      "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
     2505      "dev": true,
     2506      "engines": {
     2507        "node": ">=4"
     2508      }
     2509    },
     2510    "node_modules/path-is-absolute": {
     2511      "version": "1.0.1",
     2512      "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
     2513      "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
     2514      "dev": true,
     2515      "engines": {
     2516        "node": ">=0.10.0"
     2517      }
     2518    },
     2519    "node_modules/path-key": {
     2520      "version": "3.1.1",
     2521      "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
     2522      "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
     2523      "dev": true,
     2524      "engines": {
     2525        "node": ">=8"
     2526      }
     2527    },
     2528    "node_modules/path-parse": {
     2529      "version": "1.0.7",
     2530      "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
     2531      "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
     2532      "dev": true
     2533    },
     2534    "node_modules/path-type": {
     2535      "version": "4.0.0",
     2536      "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
     2537      "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
     2538      "dev": true,
     2539      "engines": {
     2540        "node": ">=8"
     2541      }
     2542    },
     2543    "node_modules/pg": {
     2544      "version": "8.7.3",
     2545      "resolved": "https://registry.npmjs.org/pg/-/pg-8.7.3.tgz",
     2546      "integrity": "sha512-HPmH4GH4H3AOprDJOazoIcpI49XFsHCe8xlrjHkWiapdbHK+HLtbm/GQzXYAZwmPju/kzKhjaSfMACG+8cgJcw==",
     2547      "dependencies": {
     2548        "buffer-writer": "2.0.0",
     2549        "packet-reader": "1.0.0",
     2550        "pg-connection-string": "^2.5.0",
     2551        "pg-pool": "^3.5.1",
     2552        "pg-protocol": "^1.5.0",
     2553        "pg-types": "^2.1.0",
     2554        "pgpass": "1.x"
     2555      },
     2556      "engines": {
     2557        "node": ">= 8.0.0"
     2558      },
     2559      "peerDependencies": {
     2560        "pg-native": ">=2.0.0"
     2561      },
     2562      "peerDependenciesMeta": {
     2563        "pg-native": {
     2564          "optional": true
     2565        }
     2566      }
     2567    },
     2568    "node_modules/pg-connection-string": {
     2569      "version": "2.5.0",
     2570      "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.5.0.tgz",
     2571      "integrity": "sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ=="
     2572    },
     2573    "node_modules/pg-int8": {
     2574      "version": "1.0.1",
     2575      "resolved": "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz",
     2576      "integrity": "sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==",
     2577      "engines": {
     2578        "node": ">=4.0.0"
     2579      }
     2580    },
     2581    "node_modules/pg-pool": {
     2582      "version": "3.5.1",
     2583      "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.5.1.tgz",
     2584      "integrity": "sha512-6iCR0wVrro6OOHFsyavV+i6KYL4lVNyYAB9RD18w66xSzN+d8b66HiwuP30Gp1SH5O9T82fckkzsRjlrhD0ioQ==",
     2585      "peerDependencies": {
     2586        "pg": ">=8.0"
     2587      }
     2588    },
     2589    "node_modules/pg-protocol": {
     2590      "version": "1.5.0",
     2591      "resolved": "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.5.0.tgz",
     2592      "integrity": "sha512-muRttij7H8TqRNu/DxrAJQITO4Ac7RmX3Klyr/9mJEOBeIpgnF8f9jAfRz5d3XwQZl5qBjF9gLsUtMPJE0vezQ=="
     2593    },
     2594    "node_modules/pg-types": {
     2595      "version": "2.2.0",
     2596      "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-2.2.0.tgz",
     2597      "integrity": "sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==",
     2598      "dependencies": {
     2599        "pg-int8": "1.0.1",
     2600        "postgres-array": "~2.0.0",
     2601        "postgres-bytea": "~1.0.0",
     2602        "postgres-date": "~1.0.4",
     2603        "postgres-interval": "^1.1.0"
     2604      },
     2605      "engines": {
     2606        "node": ">=4"
     2607      }
     2608    },
     2609    "node_modules/pgpass": {
     2610      "version": "1.0.5",
     2611      "resolved": "https://registry.npmjs.org/pgpass/-/pgpass-1.0.5.tgz",
     2612      "integrity": "sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==",
     2613      "dependencies": {
     2614        "split2": "^4.1.0"
     2615      }
     2616    },
     2617    "node_modules/picocolors": {
     2618      "version": "1.0.0",
     2619      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
     2620      "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
     2621    },
     2622    "node_modules/picomatch": {
     2623      "version": "2.3.1",
     2624      "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
     2625      "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
     2626      "dev": true,
     2627      "engines": {
     2628        "node": ">=8.6"
     2629      },
     2630      "funding": {
     2631        "url": "https://github.com/sponsors/jonschlinkert"
     2632      }
     2633    },
     2634    "node_modules/postcss": {
     2635      "version": "8.4.5",
     2636      "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz",
     2637      "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==",
     2638      "dependencies": {
     2639        "nanoid": "^3.1.30",
     2640        "picocolors": "^1.0.0",
     2641        "source-map-js": "^1.0.1"
     2642      },
     2643      "engines": {
     2644        "node": "^10 || ^12 || >=14"
     2645      },
     2646      "funding": {
     2647        "type": "opencollective",
     2648        "url": "https://opencollective.com/postcss/"
     2649      }
     2650    },
     2651    "node_modules/postgres-array": {
     2652      "version": "2.0.0",
     2653      "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz",
     2654      "integrity": "sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==",
     2655      "engines": {
     2656        "node": ">=4"
     2657      }
     2658    },
     2659    "node_modules/postgres-bytea": {
     2660      "version": "1.0.0",
     2661      "resolved": "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-1.0.0.tgz",
     2662      "integrity": "sha1-AntTPAqokOJtFy1Hz5zOzFIazTU=",
     2663      "engines": {
     2664        "node": ">=0.10.0"
     2665      }
     2666    },
     2667    "node_modules/postgres-date": {
     2668      "version": "1.0.7",
     2669      "resolved": "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz",
     2670      "integrity": "sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==",
     2671      "engines": {
     2672        "node": ">=0.10.0"
     2673      }
     2674    },
     2675    "node_modules/postgres-interval": {
     2676      "version": "1.2.0",
     2677      "resolved": "https://registry.npmjs.org/postgres-interval/-/postgres-interval-1.2.0.tgz",
     2678      "integrity": "sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==",
     2679      "dependencies": {
     2680        "xtend": "^4.0.0"
     2681      },
     2682      "engines": {
     2683        "node": ">=0.10.0"
     2684      }
     2685    },
     2686    "node_modules/prelude-ls": {
     2687      "version": "1.2.1",
     2688      "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
     2689      "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
     2690      "dev": true,
     2691      "engines": {
     2692        "node": ">= 0.8.0"
     2693      }
     2694    },
     2695    "node_modules/prop-types": {
     2696      "version": "15.8.1",
     2697      "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
     2698      "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
     2699      "dev": true,
     2700      "dependencies": {
     2701        "loose-envify": "^1.4.0",
     2702        "object-assign": "^4.1.1",
     2703        "react-is": "^16.13.1"
     2704      }
     2705    },
     2706    "node_modules/punycode": {
     2707      "version": "2.1.1",
     2708      "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
     2709      "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
     2710      "dev": true,
     2711      "engines": {
     2712        "node": ">=6"
     2713      }
     2714    },
     2715    "node_modules/queue-microtask": {
     2716      "version": "1.2.3",
     2717      "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
     2718      "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
     2719      "dev": true,
     2720      "funding": [
     2721        {
     2722          "type": "github",
     2723          "url": "https://github.com/sponsors/feross"
     2724        },
     2725        {
     2726          "type": "patreon",
     2727          "url": "https://www.patreon.com/feross"
     2728        },
     2729        {
     2730          "type": "consulting",
     2731          "url": "https://feross.org/support"
     2732        }
     2733      ]
     2734    },
     2735    "node_modules/react": {
     2736      "version": "18.1.0",
     2737      "resolved": "https://registry.npmjs.org/react/-/react-18.1.0.tgz",
     2738      "integrity": "sha512-4oL8ivCz5ZEPyclFQXaNksK3adutVS8l2xzZU0cqEFrE9Sb7fC0EFK5uEk74wIreL1DERyjvsU915j1pcT2uEQ==",
     2739      "dependencies": {
     2740        "loose-envify": "^1.1.0"
     2741      },
     2742      "engines": {
     2743        "node": ">=0.10.0"
     2744      }
     2745    },
     2746    "node_modules/react-dom": {
     2747      "version": "18.1.0",
     2748      "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.1.0.tgz",
     2749      "integrity": "sha512-fU1Txz7Budmvamp7bshe4Zi32d0ll7ect+ccxNu9FlObT605GOEB8BfO4tmRJ39R5Zj831VCpvQ05QPBW5yb+w==",
     2750      "dependencies": {
     2751        "loose-envify": "^1.1.0",
     2752        "scheduler": "^0.22.0"
     2753      },
     2754      "peerDependencies": {
     2755        "react": "^18.1.0"
     2756      }
     2757    },
     2758    "node_modules/react-icons": {
     2759      "version": "4.3.1",
     2760      "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.3.1.tgz",
     2761      "integrity": "sha512-cB10MXLTs3gVuXimblAdI71jrJx8njrJZmNMEMC+sQu5B/BIOmlsAjskdqpn81y8UBVEGuHODd7/ci5DvoSzTQ==",
     2762      "peerDependencies": {
     2763        "react": "*"
     2764      }
     2765    },
     2766    "node_modules/react-is": {
     2767      "version": "16.13.1",
     2768      "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
     2769      "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
     2770    },
     2771    "node_modules/react-redux": {
     2772      "version": "8.0.1",
     2773      "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-8.0.1.tgz",
     2774      "integrity": "sha512-LMZMsPY4DYdZfLJgd7i79n5Kps5N9XVLCJJeWAaPYTV+Eah2zTuBjTxKtNEbjiyitbq80/eIkm55CYSLqAub3w==",
     2775      "dependencies": {
     2776        "@babel/runtime": "^7.12.1",
     2777        "@types/hoist-non-react-statics": "^3.3.1",
     2778        "@types/use-sync-external-store": "^0.0.3",
     2779        "hoist-non-react-statics": "^3.3.2",
     2780        "react-is": "^18.0.0",
     2781        "use-sync-external-store": "^1.0.0"
     2782      },
     2783      "peerDependencies": {
     2784        "@types/react": "^16.8 || ^17.0 || ^18.0",
     2785        "@types/react-dom": "^16.8 || ^17.0 || ^18.0",
     2786        "react": "^16.8 || ^17.0 || ^18.0",
     2787        "react-dom": "^16.8 || ^17.0 || ^18.0",
     2788        "react-native": ">=0.59",
     2789        "redux": "^4"
     2790      },
     2791      "peerDependenciesMeta": {
     2792        "@types/react": {
     2793          "optional": true
     2794        },
     2795        "@types/react-dom": {
     2796          "optional": true
     2797        },
     2798        "react-dom": {
     2799          "optional": true
     2800        },
     2801        "react-native": {
     2802          "optional": true
     2803        },
     2804        "redux": {
     2805          "optional": true
     2806        }
     2807      }
     2808    },
     2809    "node_modules/react-redux/node_modules/react-is": {
     2810      "version": "18.1.0",
     2811      "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.1.0.tgz",
     2812      "integrity": "sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg=="
     2813    },
     2814    "node_modules/redux": {
     2815      "version": "4.2.0",
     2816      "resolved": "https://registry.npmjs.org/redux/-/redux-4.2.0.tgz",
     2817      "integrity": "sha512-oSBmcKKIuIR4ME29/AeNUnl5L+hvBq7OaJWzaptTQJAntaPvxIJqfnjbaEiCzzaIz+XmVILfqAM3Ob0aXLPfjA==",
     2818      "dependencies": {
     2819        "@babel/runtime": "^7.9.2"
     2820      }
     2821    },
     2822    "node_modules/redux-thunk": {
     2823      "version": "2.4.1",
     2824      "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.1.tgz",
     2825      "integrity": "sha512-OOYGNY5Jy2TWvTL1KgAlVy6dcx3siPJ1wTq741EPyUKfn6W6nChdICjZwCd0p8AZBs5kWpZlbkXW2nE/zjUa+Q==",
     2826      "peerDependencies": {
     2827        "redux": "^4"
     2828      }
     2829    },
     2830    "node_modules/regenerator-runtime": {
     2831      "version": "0.13.9",
     2832      "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz",
     2833      "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA=="
     2834    },
     2835    "node_modules/regexp.prototype.flags": {
     2836      "version": "1.4.3",
     2837      "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz",
     2838      "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==",
     2839      "dev": true,
     2840      "dependencies": {
     2841        "call-bind": "^1.0.2",
     2842        "define-properties": "^1.1.3",
     2843        "functions-have-names": "^1.2.2"
     2844      },
     2845      "engines": {
     2846        "node": ">= 0.4"
     2847      },
     2848      "funding": {
     2849        "url": "https://github.com/sponsors/ljharb"
     2850      }
     2851    },
     2852    "node_modules/regexpp": {
     2853      "version": "3.2.0",
     2854      "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz",
     2855      "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
     2856      "dev": true,
     2857      "engines": {
     2858        "node": ">=8"
     2859      },
     2860      "funding": {
     2861        "url": "https://github.com/sponsors/mysticatea"
     2862      }
     2863    },
     2864    "node_modules/reselect": {
     2865      "version": "4.1.5",
     2866      "resolved": "https://registry.npmjs.org/reselect/-/reselect-4.1.5.tgz",
     2867      "integrity": "sha512-uVdlz8J7OO+ASpBYoz1Zypgx0KasCY20H+N8JD13oUMtPvSHQuscrHop4KbXrbsBcdB9Ds7lVK7eRkBIfO43vQ=="
     2868    },
     2869    "node_modules/resolve": {
     2870      "version": "1.22.0",
     2871      "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz",
     2872      "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==",
     2873      "dev": true,
     2874      "dependencies": {
     2875        "is-core-module": "^2.8.1",
     2876        "path-parse": "^1.0.7",
     2877        "supports-preserve-symlinks-flag": "^1.0.0"
     2878      },
     2879      "bin": {
     2880        "resolve": "bin/resolve"
     2881      },
     2882      "funding": {
     2883        "url": "https://github.com/sponsors/ljharb"
     2884      }
     2885    },
     2886    "node_modules/resolve-from": {
     2887      "version": "4.0.0",
     2888      "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
     2889      "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
     2890      "dev": true,
     2891      "engines": {
     2892        "node": ">=4"
     2893      }
     2894    },
     2895    "node_modules/reusify": {
     2896      "version": "1.0.4",
     2897      "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
     2898      "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
     2899      "dev": true,
     2900      "engines": {
     2901        "iojs": ">=1.0.0",
     2902        "node": ">=0.10.0"
     2903      }
     2904    },
     2905    "node_modules/rimraf": {
     2906      "version": "3.0.2",
     2907      "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
     2908      "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
     2909      "dev": true,
     2910      "dependencies": {
     2911        "glob": "^7.1.3"
     2912      },
     2913      "bin": {
     2914        "rimraf": "bin.js"
     2915      },
     2916      "funding": {
     2917        "url": "https://github.com/sponsors/isaacs"
     2918      }
     2919    },
     2920    "node_modules/run-parallel": {
     2921      "version": "1.2.0",
     2922      "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
     2923      "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
     2924      "dev": true,
     2925      "funding": [
     2926        {
     2927          "type": "github",
     2928          "url": "https://github.com/sponsors/feross"
     2929        },
     2930        {
     2931          "type": "patreon",
     2932          "url": "https://www.patreon.com/feross"
     2933        },
     2934        {
     2935          "type": "consulting",
     2936          "url": "https://feross.org/support"
     2937        }
     2938      ],
     2939      "dependencies": {
     2940        "queue-microtask": "^1.2.2"
     2941      }
     2942    },
     2943    "node_modules/scheduler": {
     2944      "version": "0.22.0",
     2945      "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.22.0.tgz",
     2946      "integrity": "sha512-6QAm1BgQI88NPYymgGQLCZgvep4FyePDWFpXVK+zNSUgHwlqpJy8VEh8Et0KxTACS4VWwMousBElAZOH9nkkoQ==",
     2947      "dependencies": {
     2948        "loose-envify": "^1.1.0"
     2949      }
     2950    },
     2951    "node_modules/semver": {
     2952      "version": "6.3.0",
     2953      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
     2954      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
     2955      "dev": true,
     2956      "bin": {
     2957        "semver": "bin/semver.js"
     2958      }
     2959    },
     2960    "node_modules/shebang-command": {
     2961      "version": "2.0.0",
     2962      "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
     2963      "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
     2964      "dev": true,
     2965      "dependencies": {
     2966        "shebang-regex": "^3.0.0"
     2967      },
     2968      "engines": {
     2969        "node": ">=8"
     2970      }
     2971    },
     2972    "node_modules/shebang-regex": {
     2973      "version": "3.0.0",
     2974      "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
     2975      "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
     2976      "dev": true,
     2977      "engines": {
     2978        "node": ">=8"
     2979      }
     2980    },
     2981    "node_modules/side-channel": {
     2982      "version": "1.0.4",
     2983      "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
     2984      "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
     2985      "dev": true,
     2986      "dependencies": {
     2987        "call-bind": "^1.0.0",
     2988        "get-intrinsic": "^1.0.2",
     2989        "object-inspect": "^1.9.0"
     2990      },
     2991      "funding": {
     2992        "url": "https://github.com/sponsors/ljharb"
     2993      }
     2994    },
     2995    "node_modules/slash": {
     2996      "version": "3.0.0",
     2997      "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
     2998      "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
     2999      "dev": true,
     3000      "engines": {
     3001        "node": ">=8"
     3002      }
     3003    },
     3004    "node_modules/source-map-js": {
     3005      "version": "1.0.2",
     3006      "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
     3007      "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
     3008      "engines": {
     3009        "node": ">=0.10.0"
     3010      }
     3011    },
     3012    "node_modules/split2": {
     3013      "version": "4.1.0",
     3014      "resolved": "https://registry.npmjs.org/split2/-/split2-4.1.0.tgz",
     3015      "integrity": "sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ==",
     3016      "engines": {
     3017        "node": ">= 10.x"
     3018      }
     3019    },
     3020    "node_modules/string.prototype.matchall": {
     3021      "version": "4.0.7",
     3022      "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz",
     3023      "integrity": "sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==",
     3024      "dev": true,
     3025      "dependencies": {
     3026        "call-bind": "^1.0.2",
     3027        "define-properties": "^1.1.3",
     3028        "es-abstract": "^1.19.1",
     3029        "get-intrinsic": "^1.1.1",
     3030        "has-symbols": "^1.0.3",
     3031        "internal-slot": "^1.0.3",
     3032        "regexp.prototype.flags": "^1.4.1",
     3033        "side-channel": "^1.0.4"
     3034      },
     3035      "funding": {
     3036        "url": "https://github.com/sponsors/ljharb"
     3037      }
     3038    },
     3039    "node_modules/string.prototype.trimend": {
     3040      "version": "1.0.5",
     3041      "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz",
     3042      "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==",
     3043      "dev": true,
     3044      "dependencies": {
     3045        "call-bind": "^1.0.2",
     3046        "define-properties": "^1.1.4",
     3047        "es-abstract": "^1.19.5"
     3048      },
     3049      "funding": {
     3050        "url": "https://github.com/sponsors/ljharb"
     3051      }
     3052    },
     3053    "node_modules/string.prototype.trimstart": {
     3054      "version": "1.0.5",
     3055      "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz",
     3056      "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==",
     3057      "dev": true,
     3058      "dependencies": {
     3059        "call-bind": "^1.0.2",
     3060        "define-properties": "^1.1.4",
     3061        "es-abstract": "^1.19.5"
     3062      },
     3063      "funding": {
     3064        "url": "https://github.com/sponsors/ljharb"
     3065      }
     3066    },
     3067    "node_modules/strip-ansi": {
     3068      "version": "6.0.1",
     3069      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
     3070      "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
     3071      "dev": true,
     3072      "dependencies": {
     3073        "ansi-regex": "^5.0.1"
     3074      },
     3075      "engines": {
     3076        "node": ">=8"
     3077      }
     3078    },
     3079    "node_modules/strip-bom": {
     3080      "version": "3.0.0",
     3081      "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
     3082      "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
     3083      "dev": true,
     3084      "engines": {
     3085        "node": ">=4"
     3086      }
     3087    },
     3088    "node_modules/strip-json-comments": {
     3089      "version": "3.1.1",
     3090      "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
     3091      "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
     3092      "dev": true,
     3093      "engines": {
     3094        "node": ">=8"
     3095      },
     3096      "funding": {
     3097        "url": "https://github.com/sponsors/sindresorhus"
     3098      }
     3099    },
     3100    "node_modules/styled-jsx": {
     3101      "version": "5.0.2",
     3102      "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.2.tgz",
     3103      "integrity": "sha512-LqPQrbBh3egD57NBcHET4qcgshPks+yblyhPlH2GY8oaDgKs8SK4C3dBh3oSJjgzJ3G5t1SYEZGHkP+QEpX9EQ==",
     3104      "engines": {
     3105        "node": ">= 12.0.0"
     3106      },
     3107      "peerDependencies": {
     3108        "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0"
     3109      },
     3110      "peerDependenciesMeta": {
     3111        "@babel/core": {
     3112          "optional": true
     3113        },
     3114        "babel-plugin-macros": {
     3115          "optional": true
     3116        }
     3117      }
     3118    },
     3119    "node_modules/supports-color": {
     3120      "version": "7.2.0",
     3121      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
     3122      "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
     3123      "dev": true,
     3124      "dependencies": {
     3125        "has-flag": "^4.0.0"
     3126      },
     3127      "engines": {
     3128        "node": ">=8"
     3129      }
     3130    },
     3131    "node_modules/supports-preserve-symlinks-flag": {
     3132      "version": "1.0.0",
     3133      "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
     3134      "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
     3135      "dev": true,
     3136      "engines": {
     3137        "node": ">= 0.4"
     3138      },
     3139      "funding": {
     3140        "url": "https://github.com/sponsors/ljharb"
     3141      }
     3142    },
     3143    "node_modules/text-table": {
     3144      "version": "0.2.0",
     3145      "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
     3146      "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
     3147      "dev": true
     3148    },
     3149    "node_modules/to-regex-range": {
     3150      "version": "5.0.1",
     3151      "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
     3152      "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
     3153      "dev": true,
     3154      "dependencies": {
     3155        "is-number": "^7.0.0"
     3156      },
     3157      "engines": {
     3158        "node": ">=8.0"
     3159      }
     3160    },
     3161    "node_modules/tsconfig-paths": {
     3162      "version": "3.14.1",
     3163      "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz",
     3164      "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==",
     3165      "dev": true,
     3166      "dependencies": {
     3167        "@types/json5": "^0.0.29",
     3168        "json5": "^1.0.1",
     3169        "minimist": "^1.2.6",
     3170        "strip-bom": "^3.0.0"
     3171      }
     3172    },
     3173    "node_modules/tslib": {
     3174      "version": "1.14.1",
     3175      "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
     3176      "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
     3177      "dev": true
     3178    },
     3179    "node_modules/tsutils": {
     3180      "version": "3.21.0",
     3181      "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
     3182      "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
     3183      "dev": true,
     3184      "dependencies": {
     3185        "tslib": "^1.8.1"
     3186      },
     3187      "engines": {
     3188        "node": ">= 6"
     3189      },
     3190      "peerDependencies": {
     3191        "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
     3192      }
     3193    },
     3194    "node_modules/type-check": {
     3195      "version": "0.4.0",
     3196      "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
     3197      "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
     3198      "dev": true,
     3199      "dependencies": {
     3200        "prelude-ls": "^1.2.1"
     3201      },
     3202      "engines": {
     3203        "node": ">= 0.8.0"
     3204      }
     3205    },
     3206    "node_modules/type-fest": {
     3207      "version": "0.20.2",
     3208      "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
     3209      "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
     3210      "dev": true,
     3211      "engines": {
     3212        "node": ">=10"
     3213      },
     3214      "funding": {
     3215        "url": "https://github.com/sponsors/sindresorhus"
     3216      }
     3217    },
     3218    "node_modules/unbox-primitive": {
     3219      "version": "1.0.2",
     3220      "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
     3221      "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
     3222      "dev": true,
     3223      "dependencies": {
     3224        "call-bind": "^1.0.2",
     3225        "has-bigints": "^1.0.2",
     3226        "has-symbols": "^1.0.3",
     3227        "which-boxed-primitive": "^1.0.2"
     3228      },
     3229      "funding": {
     3230        "url": "https://github.com/sponsors/ljharb"
     3231      }
     3232    },
     3233    "node_modules/uri-js": {
     3234      "version": "4.4.1",
     3235      "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
     3236      "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
     3237      "dev": true,
     3238      "dependencies": {
     3239        "punycode": "^2.1.0"
     3240      }
     3241    },
     3242    "node_modules/use-sync-external-store": {
     3243      "version": "1.1.0",
     3244      "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.1.0.tgz",
     3245      "integrity": "sha512-SEnieB2FPKEVne66NpXPd1Np4R1lTNKfjuy3XdIoPQKYBAFdzbzSZlSn1KJZUiihQLQC5Znot4SBz1EOTBwQAQ==",
     3246      "peerDependencies": {
     3247        "react": "^16.8.0 || ^17.0.0 || ^18.0.0"
     3248      }
     3249    },
     3250    "node_modules/uuid": {
     3251      "version": "8.3.2",
     3252      "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
     3253      "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
     3254      "bin": {
     3255        "uuid": "dist/bin/uuid"
     3256      }
     3257    },
     3258    "node_modules/v8-compile-cache": {
     3259      "version": "2.3.0",
     3260      "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
     3261      "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
     3262      "dev": true
     3263    },
     3264    "node_modules/which": {
     3265      "version": "2.0.2",
     3266      "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
     3267      "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
     3268      "dev": true,
     3269      "dependencies": {
     3270        "isexe": "^2.0.0"
     3271      },
     3272      "bin": {
     3273        "node-which": "bin/node-which"
     3274      },
     3275      "engines": {
     3276        "node": ">= 8"
     3277      }
     3278    },
     3279    "node_modules/which-boxed-primitive": {
     3280      "version": "1.0.2",
     3281      "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
     3282      "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
     3283      "dev": true,
     3284      "dependencies": {
     3285        "is-bigint": "^1.0.1",
     3286        "is-boolean-object": "^1.1.0",
     3287        "is-number-object": "^1.0.4",
     3288        "is-string": "^1.0.5",
     3289        "is-symbol": "^1.0.3"
     3290      },
     3291      "funding": {
     3292        "url": "https://github.com/sponsors/ljharb"
     3293      }
     3294    },
     3295    "node_modules/word-wrap": {
     3296      "version": "1.2.3",
     3297      "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
     3298      "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
     3299      "dev": true,
     3300      "engines": {
     3301        "node": ">=0.10.0"
     3302      }
     3303    },
     3304    "node_modules/wrappy": {
     3305      "version": "1.0.2",
     3306      "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
     3307      "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
     3308      "dev": true
     3309    },
     3310    "node_modules/xtend": {
     3311      "version": "4.0.2",
     3312      "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
     3313      "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
     3314      "engines": {
     3315        "node": ">=0.4"
     3316      }
     3317    },
     3318    "node_modules/yallist": {
     3319      "version": "4.0.0",
     3320      "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
     3321      "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
     3322      "dev": true
     3323    }
     3324  },
     3325  "dependencies": {
     3326    "@arctext/react": {
     3327      "version": "1.0.0",
     3328      "resolved": "https://registry.npmjs.org/@arctext/react/-/react-1.0.0.tgz",
     3329      "integrity": "sha512-K+dKaSOjjHs/6dw2gS0dWFOzGI28sqa3o1KOLMB48t8KRdulnh5QtPb33+C/ryWDV1eteIQM0Zi4ZDyEu7ES0g==",
     3330      "requires": {}
     3331    },
     3332    "@babel/runtime": {
     3333      "version": "7.17.9",
     3334      "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.9.tgz",
     3335      "integrity": "sha512-lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg==",
     3336      "requires": {
     3337        "regenerator-runtime": "^0.13.4"
     3338      }
     3339    },
     3340    "@babel/runtime-corejs3": {
     3341      "version": "7.17.9",
     3342      "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.17.9.tgz",
     3343      "integrity": "sha512-WxYHHUWF2uZ7Hp1K+D1xQgbgkGUfA+5UPOegEXGt2Y5SMog/rYCVaifLZDbw8UkNXozEqqrZTy6bglL7xTaCOw==",
     3344      "dev": true,
     3345      "requires": {
     3346        "core-js-pure": "^3.20.2",
     3347        "regenerator-runtime": "^0.13.4"
     3348      }
     3349    },
     3350    "@eslint/eslintrc": {
     3351      "version": "1.2.3",
     3352      "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.3.tgz",
     3353      "integrity": "sha512-uGo44hIwoLGNyduRpjdEpovcbMdd+Nv7amtmJxnKmI8xj6yd5LncmSwDa5NgX/41lIFJtkjD6YdVfgEzPfJ5UA==",
     3354      "dev": true,
     3355      "requires": {
     3356        "ajv": "^6.12.4",
     3357        "debug": "^4.3.2",
     3358        "espree": "^9.3.2",
     3359        "globals": "^13.9.0",
     3360        "ignore": "^5.2.0",
     3361        "import-fresh": "^3.2.1",
     3362        "js-yaml": "^4.1.0",
     3363        "minimatch": "^3.1.2",
     3364        "strip-json-comments": "^3.1.1"
     3365      }
     3366    },
     3367    "@humanwhocodes/config-array": {
     3368      "version": "0.9.5",
     3369      "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz",
     3370      "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==",
     3371      "dev": true,
     3372      "requires": {
     3373        "@humanwhocodes/object-schema": "^1.2.1",
     3374        "debug": "^4.1.1",
     3375        "minimatch": "^3.0.4"
     3376      }
     3377    },
     3378    "@humanwhocodes/object-schema": {
     3379      "version": "1.2.1",
     3380      "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
     3381      "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
     3382      "dev": true
     3383    },
     3384    "@next/env": {
     3385      "version": "12.1.6",
     3386      "resolved": "https://registry.npmjs.org/@next/env/-/env-12.1.6.tgz",
     3387      "integrity": "sha512-Te/OBDXFSodPU6jlXYPAXpmZr/AkG6DCATAxttQxqOWaq6eDFX25Db3dK0120GZrSZmv4QCe9KsZmJKDbWs4OA=="
     3388    },
     3389    "@next/eslint-plugin-next": {
     3390      "version": "12.1.6",
     3391      "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-12.1.6.tgz",
     3392      "integrity": "sha512-yNUtJ90NEiYFT6TJnNyofKMPYqirKDwpahcbxBgSIuABwYOdkGwzos1ZkYD51Qf0diYwpQZBeVqElTk7Q2WNqw==",
     3393      "dev": true,
     3394      "requires": {
     3395        "glob": "7.1.7"
     3396      },
     3397      "dependencies": {
     3398        "glob": {
     3399          "version": "7.1.7",
     3400          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
     3401          "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
     3402          "dev": true,
     3403          "requires": {
     3404            "fs.realpath": "^1.0.0",
     3405            "inflight": "^1.0.4",
     3406            "inherits": "2",
     3407            "minimatch": "^3.0.4",
     3408            "once": "^1.3.0",
     3409            "path-is-absolute": "^1.0.0"
     3410          }
     3411        }
     3412      }
     3413    },
     3414    "@next/swc-android-arm-eabi": {
     3415      "version": "12.1.6",
     3416      "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.1.6.tgz",
     3417      "integrity": "sha512-BxBr3QAAAXWgk/K7EedvzxJr2dE014mghBSA9iOEAv0bMgF+MRq4PoASjuHi15M2zfowpcRG8XQhMFtxftCleQ==",
     3418      "optional": true
     3419    },
     3420    "@next/swc-android-arm64": {
     3421      "version": "12.1.6",
     3422      "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-12.1.6.tgz",
     3423      "integrity": "sha512-EboEk3ROYY7U6WA2RrMt/cXXMokUTXXfnxe2+CU+DOahvbrO8QSWhlBl9I9ZbFzJx28AGB9Yo3oQHCvph/4Lew==",
     3424      "optional": true
     3425    },
     3426    "@next/swc-darwin-arm64": {
     3427      "version": "12.1.6",
     3428      "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.1.6.tgz",
     3429      "integrity": "sha512-P0EXU12BMSdNj1F7vdkP/VrYDuCNwBExtRPDYawgSUakzi6qP0iKJpya2BuLvNzXx+XPU49GFuDC5X+SvY0mOw==",
     3430      "optional": true
     3431    },
     3432    "@next/swc-darwin-x64": {
     3433      "version": "12.1.6",
     3434      "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-12.1.6.tgz",
     3435      "integrity": "sha512-9FptMnbgHJK3dRDzfTpexs9S2hGpzOQxSQbe8omz6Pcl7rnEp9x4uSEKY51ho85JCjL4d0tDLBcXEJZKKLzxNg==",
     3436      "optional": true
     3437    },
     3438    "@next/swc-linux-arm-gnueabihf": {
     3439      "version": "12.1.6",
     3440      "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.1.6.tgz",
     3441      "integrity": "sha512-PvfEa1RR55dsik/IDkCKSFkk6ODNGJqPY3ysVUZqmnWMDSuqFtf7BPWHFa/53znpvVB5XaJ5Z1/6aR5CTIqxPw==",
     3442      "optional": true
     3443    },
     3444    "@next/swc-linux-arm64-gnu": {
     3445      "version": "12.1.6",
     3446      "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.1.6.tgz",
     3447      "integrity": "sha512-53QOvX1jBbC2ctnmWHyRhMajGq7QZfl974WYlwclXarVV418X7ed7o/EzGY+YVAEKzIVaAB9JFFWGXn8WWo0gQ==",
     3448      "optional": true
     3449    },
     3450    "@next/swc-linux-arm64-musl": {
     3451      "version": "12.1.6",
     3452      "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.1.6.tgz",
     3453      "integrity": "sha512-CMWAkYqfGdQCS+uuMA1A2UhOfcUYeoqnTW7msLr2RyYAys15pD960hlDfq7QAi8BCAKk0sQ2rjsl0iqMyziohQ==",
     3454      "optional": true
     3455    },
     3456    "@next/swc-linux-x64-gnu": {
     3457      "version": "12.1.6",
     3458      "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.1.6.tgz",
     3459      "integrity": "sha512-AC7jE4Fxpn0s3ujngClIDTiEM/CQiB2N2vkcyWWn6734AmGT03Duq6RYtPMymFobDdAtZGFZd5nR95WjPzbZAQ==",
     3460      "optional": true
     3461    },
     3462    "@next/swc-linux-x64-musl": {
     3463      "version": "12.1.6",
     3464      "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.1.6.tgz",
     3465      "integrity": "sha512-c9Vjmi0EVk0Kou2qbrynskVarnFwfYIi+wKufR9Ad7/IKKuP6aEhOdZiIIdKsYWRtK2IWRF3h3YmdnEa2WLUag==",
     3466      "optional": true
     3467    },
     3468    "@next/swc-win32-arm64-msvc": {
     3469      "version": "12.1.6",
     3470      "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.1.6.tgz",
     3471      "integrity": "sha512-3UTOL/5XZSKFelM7qN0it35o3Cegm6LsyuERR3/OoqEExyj3aCk7F025b54/707HTMAnjlvQK3DzLhPu/xxO4g==",
     3472      "optional": true
     3473    },
     3474    "@next/swc-win32-ia32-msvc": {
     3475      "version": "12.1.6",
     3476      "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.1.6.tgz",
     3477      "integrity": "sha512-8ZWoj6nCq6fI1yCzKq6oK0jE6Mxlz4MrEsRyu0TwDztWQWe7rh4XXGLAa2YVPatYcHhMcUL+fQQbqd1MsgaSDA==",
     3478      "optional": true
     3479    },
     3480    "@next/swc-win32-x64-msvc": {
     3481      "version": "12.1.6",
     3482      "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.1.6.tgz",
     3483      "integrity": "sha512-4ZEwiRuZEicXhXqmhw3+de8Z4EpOLQj/gp+D9fFWo6ii6W1kBkNNvvEx4A90ugppu+74pT1lIJnOuz3A9oQeJA==",
     3484      "optional": true
     3485    },
     3486    "@nodelib/fs.scandir": {
     3487      "version": "2.1.5",
     3488      "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
     3489      "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
     3490      "dev": true,
     3491      "requires": {
     3492        "@nodelib/fs.stat": "2.0.5",
     3493        "run-parallel": "^1.1.9"
     3494      }
     3495    },
     3496    "@nodelib/fs.stat": {
     3497      "version": "2.0.5",
     3498      "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
     3499      "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
     3500      "dev": true
     3501    },
     3502    "@nodelib/fs.walk": {
     3503      "version": "1.2.8",
     3504      "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
     3505      "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
     3506      "dev": true,
     3507      "requires": {
     3508        "@nodelib/fs.scandir": "2.1.5",
     3509        "fastq": "^1.6.0"
     3510      }
     3511    },
     3512    "@reduxjs/toolkit": {
     3513      "version": "1.8.1",
     3514      "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-1.8.1.tgz",
     3515      "integrity": "sha512-Q6mzbTpO9nOYRnkwpDlFOAbQnd3g7zj7CtHAZWz5SzE5lcV97Tf8f3SzOO8BoPOMYBFgfZaqTUZqgGu+a0+Fng==",
     3516      "requires": {
     3517        "immer": "^9.0.7",
     3518        "redux": "^4.1.2",
     3519        "redux-thunk": "^2.4.1",
     3520        "reselect": "^4.1.5"
     3521      }
     3522    },
     3523    "@rushstack/eslint-patch": {
     3524      "version": "1.1.3",
     3525      "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.1.3.tgz",
     3526      "integrity": "sha512-WiBSI6JBIhC6LRIsB2Kwh8DsGTlbBU+mLRxJmAe3LjHTdkDpwIbEOZgoXBbZilk/vlfjK8i6nKRAvIRn1XaIMw==",
     3527      "dev": true
     3528    },
     3529    "@types/hoist-non-react-statics": {
     3530      "version": "3.3.1",
     3531      "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz",
     3532      "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==",
     3533      "requires": {
     3534        "@types/react": "*",
     3535        "hoist-non-react-statics": "^3.3.0"
     3536      }
     3537    },
     3538    "@types/json5": {
     3539      "version": "0.0.29",
     3540      "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
     3541      "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=",
     3542      "dev": true
     3543    },
     3544    "@types/prop-types": {
     3545      "version": "15.7.5",
     3546      "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
     3547      "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
     3548    },
     3549    "@types/react": {
     3550      "version": "18.0.9",
     3551      "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.9.tgz",
     3552      "integrity": "sha512-9bjbg1hJHUm4De19L1cHiW0Jvx3geel6Qczhjd0qY5VKVE2X5+x77YxAepuCwVh4vrgZJdgEJw48zrhRIeF4Nw==",
     3553      "requires": {
     3554        "@types/prop-types": "*",
     3555        "@types/scheduler": "*",
     3556        "csstype": "^3.0.2"
     3557      }
     3558    },
     3559    "@types/scheduler": {
     3560      "version": "0.16.2",
     3561      "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
     3562      "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew=="
     3563    },
     3564    "@types/use-sync-external-store": {
     3565      "version": "0.0.3",
     3566      "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz",
     3567      "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA=="
     3568    },
     3569    "@typescript-eslint/parser": {
     3570      "version": "5.22.0",
     3571      "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.22.0.tgz",
     3572      "integrity": "sha512-piwC4krUpRDqPaPbFaycN70KCP87+PC5WZmrWs+DlVOxxmF+zI6b6hETv7Quy4s9wbkV16ikMeZgXsvzwI3icQ==",
     3573      "dev": true,
     3574      "requires": {
     3575        "@typescript-eslint/scope-manager": "5.22.0",
     3576        "@typescript-eslint/types": "5.22.0",
     3577        "@typescript-eslint/typescript-estree": "5.22.0",
     3578        "debug": "^4.3.2"
     3579      }
     3580    },
     3581    "@typescript-eslint/scope-manager": {
     3582      "version": "5.22.0",
     3583      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.22.0.tgz",
     3584      "integrity": "sha512-yA9G5NJgV5esANJCO0oF15MkBO20mIskbZ8ijfmlKIvQKg0ynVKfHZ15/nhAJN5m8Jn3X5qkwriQCiUntC9AbA==",
     3585      "dev": true,
     3586      "requires": {
     3587        "@typescript-eslint/types": "5.22.0",
     3588        "@typescript-eslint/visitor-keys": "5.22.0"
     3589      }
     3590    },
     3591    "@typescript-eslint/types": {
     3592      "version": "5.22.0",
     3593      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.22.0.tgz",
     3594      "integrity": "sha512-T7owcXW4l0v7NTijmjGWwWf/1JqdlWiBzPqzAWhobxft0SiEvMJB56QXmeCQjrPuM8zEfGUKyPQr/L8+cFUBLw==",
     3595      "dev": true
     3596    },
     3597    "@typescript-eslint/typescript-estree": {
     3598      "version": "5.22.0",
     3599      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.22.0.tgz",
     3600      "integrity": "sha512-EyBEQxvNjg80yinGE2xdhpDYm41so/1kOItl0qrjIiJ1kX/L/L8WWGmJg8ni6eG3DwqmOzDqOhe6763bF92nOw==",
     3601      "dev": true,
     3602      "requires": {
     3603        "@typescript-eslint/types": "5.22.0",
     3604        "@typescript-eslint/visitor-keys": "5.22.0",
     3605        "debug": "^4.3.2",
     3606        "globby": "^11.0.4",
     3607        "is-glob": "^4.0.3",
     3608        "semver": "^7.3.5",
     3609        "tsutils": "^3.21.0"
     3610      },
     3611      "dependencies": {
     3612        "semver": {
     3613          "version": "7.3.7",
     3614          "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
     3615          "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
     3616          "dev": true,
     3617          "requires": {
     3618            "lru-cache": "^6.0.0"
     3619          }
     3620        }
     3621      }
     3622    },
     3623    "@typescript-eslint/visitor-keys": {
     3624      "version": "5.22.0",
     3625      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.22.0.tgz",
     3626      "integrity": "sha512-DbgTqn2Dv5RFWluG88tn0pP6Ex0ROF+dpDO1TNNZdRtLjUr6bdznjA6f/qNqJLjd2PgguAES2Zgxh/JzwzETDg==",
     3627      "dev": true,
     3628      "requires": {
     3629        "@typescript-eslint/types": "5.22.0",
     3630        "eslint-visitor-keys": "^3.0.0"
     3631      }
     3632    },
     3633    "acorn": {
     3634      "version": "8.7.1",
     3635      "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz",
     3636      "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==",
     3637      "dev": true
     3638    },
     3639    "acorn-jsx": {
     3640      "version": "5.3.2",
     3641      "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
     3642      "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
     3643      "dev": true,
     3644      "requires": {}
     3645    },
     3646    "ajv": {
     3647      "version": "6.12.6",
     3648      "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
     3649      "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
     3650      "dev": true,
     3651      "requires": {
     3652        "fast-deep-equal": "^3.1.1",
     3653        "fast-json-stable-stringify": "^2.0.0",
     3654        "json-schema-traverse": "^0.4.1",
     3655        "uri-js": "^4.2.2"
     3656      }
     3657    },
     3658    "ansi-regex": {
     3659      "version": "5.0.1",
     3660      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
     3661      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
     3662      "dev": true
     3663    },
     3664    "ansi-styles": {
     3665      "version": "4.3.0",
     3666      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
     3667      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
     3668      "dev": true,
     3669      "requires": {
     3670        "color-convert": "^2.0.1"
     3671      }
     3672    },
     3673    "argparse": {
     3674      "version": "2.0.1",
     3675      "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
     3676      "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
     3677      "dev": true
     3678    },
     3679    "aria-query": {
     3680      "version": "4.2.2",
     3681      "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz",
     3682      "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==",
     3683      "dev": true,
     3684      "requires": {
     3685        "@babel/runtime": "^7.10.2",
     3686        "@babel/runtime-corejs3": "^7.10.2"
     3687      }
     3688    },
     3689    "array-includes": {
     3690      "version": "3.1.5",
     3691      "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz",
     3692      "integrity": "sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==",
     3693      "dev": true,
     3694      "requires": {
     3695        "call-bind": "^1.0.2",
     3696        "define-properties": "^1.1.4",
     3697        "es-abstract": "^1.19.5",
     3698        "get-intrinsic": "^1.1.1",
     3699        "is-string": "^1.0.7"
     3700      }
     3701    },
     3702    "array-union": {
     3703      "version": "2.1.0",
     3704      "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
     3705      "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
     3706      "dev": true
     3707    },
     3708    "array.prototype.flat": {
     3709      "version": "1.3.0",
     3710      "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz",
     3711      "integrity": "sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==",
     3712      "dev": true,
     3713      "requires": {
     3714        "call-bind": "^1.0.2",
     3715        "define-properties": "^1.1.3",
     3716        "es-abstract": "^1.19.2",
     3717        "es-shim-unscopables": "^1.0.0"
     3718      }
     3719    },
     3720    "array.prototype.flatmap": {
     3721      "version": "1.3.0",
     3722      "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz",
     3723      "integrity": "sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg==",
     3724      "dev": true,
     3725      "requires": {
     3726        "call-bind": "^1.0.2",
     3727        "define-properties": "^1.1.3",
     3728        "es-abstract": "^1.19.2",
     3729        "es-shim-unscopables": "^1.0.0"
     3730      }
     3731    },
     3732    "ast-types-flow": {
     3733      "version": "0.0.7",
     3734      "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz",
     3735      "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=",
     3736      "dev": true
     3737    },
     3738    "asynckit": {
     3739      "version": "0.4.0",
     3740      "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
     3741      "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
     3742    },
     3743    "axe-core": {
     3744      "version": "4.4.1",
     3745      "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.4.1.tgz",
     3746      "integrity": "sha512-gd1kmb21kwNuWr6BQz8fv6GNECPBnUasepcoLbekws23NVBLODdsClRZ+bQ8+9Uomf3Sm3+Vwn0oYG9NvwnJCw==",
     3747      "dev": true
     3748    },
     3749    "axios": {
     3750      "version": "0.27.2",
     3751      "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz",
     3752      "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==",
     3753      "requires": {
     3754        "follow-redirects": "^1.14.9",
     3755        "form-data": "^4.0.0"
     3756      }
     3757    },
     3758    "axobject-query": {
     3759      "version": "2.2.0",
     3760      "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz",
     3761      "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==",
     3762      "dev": true
     3763    },
     3764    "balanced-match": {
     3765      "version": "1.0.2",
     3766      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
     3767      "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
     3768      "dev": true
     3769    },
     3770    "brace-expansion": {
     3771      "version": "1.1.11",
     3772      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
     3773      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
     3774      "dev": true,
     3775      "requires": {
     3776        "balanced-match": "^1.0.0",
     3777        "concat-map": "0.0.1"
     3778      }
     3779    },
     3780    "braces": {
     3781      "version": "3.0.2",
     3782      "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
     3783      "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
     3784      "dev": true,
     3785      "requires": {
     3786        "fill-range": "^7.0.1"
     3787      }
     3788    },
     3789    "buffer-writer": {
     3790      "version": "2.0.0",
     3791      "resolved": "https://registry.npmjs.org/buffer-writer/-/buffer-writer-2.0.0.tgz",
     3792      "integrity": "sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw=="
     3793    },
     3794    "call-bind": {
     3795      "version": "1.0.2",
     3796      "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
     3797      "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
     3798      "dev": true,
     3799      "requires": {
     3800        "function-bind": "^1.1.1",
     3801        "get-intrinsic": "^1.0.2"
     3802      }
     3803    },
     3804    "callsites": {
     3805      "version": "3.1.0",
     3806      "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
     3807      "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
     3808      "dev": true
     3809    },
     3810    "caniuse-lite": {
     3811      "version": "1.0.30001338",
     3812      "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001338.tgz",
     3813      "integrity": "sha512-1gLHWyfVoRDsHieO+CaeYe7jSo/MT7D7lhaXUiwwbuR5BwQxORs0f1tAwUSQr3YbxRXJvxHM/PA5FfPQRnsPeQ=="
     3814    },
     3815    "chalk": {
     3816      "version": "4.1.2",
     3817      "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
     3818      "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
     3819      "dev": true,
     3820      "requires": {
     3821        "ansi-styles": "^4.1.0",
     3822        "supports-color": "^7.1.0"
     3823      }
     3824    },
     3825    "color-convert": {
     3826      "version": "2.0.1",
     3827      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
     3828      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
     3829      "dev": true,
     3830      "requires": {
     3831        "color-name": "~1.1.4"
     3832      }
     3833    },
     3834    "color-name": {
     3835      "version": "1.1.4",
     3836      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
     3837      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
     3838      "dev": true
     3839    },
     3840    "combined-stream": {
     3841      "version": "1.0.8",
     3842      "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
     3843      "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
     3844      "requires": {
     3845        "delayed-stream": "~1.0.0"
     3846      }
     3847    },
     3848    "concat-map": {
     3849      "version": "0.0.1",
     3850      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
     3851      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
     3852      "dev": true
     3853    },
     3854    "core-js-pure": {
     3855      "version": "3.22.4",
     3856      "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.22.4.tgz",
     3857      "integrity": "sha512-4iF+QZkpzIz0prAFuepmxwJ2h5t4agvE8WPYqs2mjLJMNNwJOnpch76w2Q7bUfCPEv/V7wpvOfog0w273M+ZSw==",
     3858      "dev": true
     3859    },
     3860    "cross-spawn": {
     3861      "version": "7.0.3",
     3862      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
     3863      "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
     3864      "dev": true,
     3865      "requires": {
     3866        "path-key": "^3.1.0",
     3867        "shebang-command": "^2.0.0",
     3868        "which": "^2.0.1"
     3869      }
     3870    },
     3871    "crypto": {
     3872      "version": "1.0.1",
     3873      "resolved": "https://registry.npmjs.org/crypto/-/crypto-1.0.1.tgz",
     3874      "integrity": "sha512-VxBKmeNcqQdiUQUW2Tzq0t377b54N2bMtXO/qiLa+6eRRmmC4qT3D4OnTGoT/U6O9aklQ/jTwbOtRMTTY8G0Ig=="
     3875    },
     3876    "csstype": {
     3877      "version": "3.0.11",
     3878      "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.11.tgz",
     3879      "integrity": "sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw=="
     3880    },
     3881    "damerau-levenshtein": {
     3882      "version": "1.0.8",
     3883      "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz",
     3884      "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==",
     3885      "dev": true
     3886    },
     3887    "debug": {
     3888      "version": "4.3.4",
     3889      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
     3890      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
     3891      "dev": true,
     3892      "requires": {
     3893        "ms": "2.1.2"
     3894      }
     3895    },
     3896    "deep-is": {
     3897      "version": "0.1.4",
     3898      "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
     3899      "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
     3900      "dev": true
     3901    },
     3902    "define-properties": {
     3903      "version": "1.1.4",
     3904      "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz",
     3905      "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==",
     3906      "dev": true,
     3907      "requires": {
     3908        "has-property-descriptors": "^1.0.0",
     3909        "object-keys": "^1.1.1"
     3910      }
     3911    },
     3912    "delayed-stream": {
     3913      "version": "1.0.0",
     3914      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
     3915      "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
     3916    },
     3917    "dir-glob": {
     3918      "version": "3.0.1",
     3919      "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
     3920      "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
     3921      "dev": true,
     3922      "requires": {
     3923        "path-type": "^4.0.0"
     3924      }
     3925    },
     3926    "doctrine": {
     3927      "version": "2.1.0",
     3928      "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
     3929      "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
     3930      "dev": true,
     3931      "requires": {
     3932        "esutils": "^2.0.2"
     3933      }
     3934    },
     3935    "dotenv": {
     3936      "version": "16.0.0",
     3937      "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.0.tgz",
     3938      "integrity": "sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q=="
     3939    },
     3940    "emoji-regex": {
     3941      "version": "9.2.2",
     3942      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
     3943      "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
     3944      "dev": true
     3945    },
     3946    "es-abstract": {
     3947      "version": "1.20.0",
     3948      "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.0.tgz",
     3949      "integrity": "sha512-URbD8tgRthKD3YcC39vbvSDrX23upXnPcnGAjQfgxXF5ID75YcENawc9ZX/9iTP9ptUyfCLIxTTuMYoRfiOVKA==",
     3950      "dev": true,
     3951      "requires": {
     3952        "call-bind": "^1.0.2",
     3953        "es-to-primitive": "^1.2.1",
     3954        "function-bind": "^1.1.1",
     3955        "function.prototype.name": "^1.1.5",
     3956        "get-intrinsic": "^1.1.1",
     3957        "get-symbol-description": "^1.0.0",
     3958        "has": "^1.0.3",
     3959        "has-property-descriptors": "^1.0.0",
     3960        "has-symbols": "^1.0.3",
     3961        "internal-slot": "^1.0.3",
     3962        "is-callable": "^1.2.4",
     3963        "is-negative-zero": "^2.0.2",
     3964        "is-regex": "^1.1.4",
     3965        "is-shared-array-buffer": "^1.0.2",
     3966        "is-string": "^1.0.7",
     3967        "is-weakref": "^1.0.2",
     3968        "object-inspect": "^1.12.0",
     3969        "object-keys": "^1.1.1",
     3970        "object.assign": "^4.1.2",
     3971        "regexp.prototype.flags": "^1.4.1",
     3972        "string.prototype.trimend": "^1.0.5",
     3973        "string.prototype.trimstart": "^1.0.5",
     3974        "unbox-primitive": "^1.0.2"
     3975      }
     3976    },
     3977    "es-shim-unscopables": {
     3978      "version": "1.0.0",
     3979      "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz",
     3980      "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==",
     3981      "dev": true,
     3982      "requires": {
     3983        "has": "^1.0.3"
     3984      }
     3985    },
     3986    "es-to-primitive": {
     3987      "version": "1.2.1",
     3988      "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
     3989      "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
     3990      "dev": true,
     3991      "requires": {
     3992        "is-callable": "^1.1.4",
     3993        "is-date-object": "^1.0.1",
     3994        "is-symbol": "^1.0.2"
     3995      }
     3996    },
     3997    "escape-string-regexp": {
     3998      "version": "4.0.0",
     3999      "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
     4000      "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
     4001      "dev": true
     4002    },
     4003    "eslint": {
     4004      "version": "8.15.0",
     4005      "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.15.0.tgz",
     4006      "integrity": "sha512-GG5USZ1jhCu8HJkzGgeK8/+RGnHaNYZGrGDzUtigK3BsGESW/rs2az23XqE0WVwDxy1VRvvjSSGu5nB0Bu+6SA==",
     4007      "dev": true,
     4008      "requires": {
     4009        "@eslint/eslintrc": "^1.2.3",
     4010        "@humanwhocodes/config-array": "^0.9.2",
     4011        "ajv": "^6.10.0",
     4012        "chalk": "^4.0.0",
     4013        "cross-spawn": "^7.0.2",
     4014        "debug": "^4.3.2",
     4015        "doctrine": "^3.0.0",
     4016        "escape-string-regexp": "^4.0.0",
     4017        "eslint-scope": "^7.1.1",
     4018        "eslint-utils": "^3.0.0",
     4019        "eslint-visitor-keys": "^3.3.0",
     4020        "espree": "^9.3.2",
     4021        "esquery": "^1.4.0",
     4022        "esutils": "^2.0.2",
     4023        "fast-deep-equal": "^3.1.3",
     4024        "file-entry-cache": "^6.0.1",
     4025        "functional-red-black-tree": "^1.0.1",
     4026        "glob-parent": "^6.0.1",
     4027        "globals": "^13.6.0",
     4028        "ignore": "^5.2.0",
     4029        "import-fresh": "^3.0.0",
     4030        "imurmurhash": "^0.1.4",
     4031        "is-glob": "^4.0.0",
     4032        "js-yaml": "^4.1.0",
     4033        "json-stable-stringify-without-jsonify": "^1.0.1",
     4034        "levn": "^0.4.1",
     4035        "lodash.merge": "^4.6.2",
     4036        "minimatch": "^3.1.2",
     4037        "natural-compare": "^1.4.0",
     4038        "optionator": "^0.9.1",
     4039        "regexpp": "^3.2.0",
     4040        "strip-ansi": "^6.0.1",
     4041        "strip-json-comments": "^3.1.0",
     4042        "text-table": "^0.2.0",
     4043        "v8-compile-cache": "^2.0.3"
     4044      },
    7244045      "dependencies": {
    7254046        "doctrine": {
     
    9144235      "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.5.0.tgz",
    9154236      "integrity": "sha512-8k1gRt7D7h03kd+SAAlzXkQwWK22BnK6GKZG+FJA6BAGy22CFvl8kCIXKpVux0cCxMWDQUPqSok0LKaZ0aOcCw==",
    916       "dev": true
     4237      "dev": true,
     4238      "requires": {}
    9174239    },
    9184240    "eslint-scope": {
     
    18185140      "version": "3.5.1",
    18195141      "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.5.1.tgz",
    1820       "integrity": "sha512-6iCR0wVrro6OOHFsyavV+i6KYL4lVNyYAB9RD18w66xSzN+d8b66HiwuP30Gp1SH5O9T82fckkzsRjlrhD0ioQ=="
     5142      "integrity": "sha512-6iCR0wVrro6OOHFsyavV+i6KYL4lVNyYAB9RD18w66xSzN+d8b66HiwuP30Gp1SH5O9T82fckkzsRjlrhD0ioQ==",
     5143      "requires": {}
    18215144    },
    18225145    "pg-protocol": {
     
    19385261      "version": "4.3.1",
    19395262      "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.3.1.tgz",
    1940       "integrity": "sha512-cB10MXLTs3gVuXimblAdI71jrJx8njrJZmNMEMC+sQu5B/BIOmlsAjskdqpn81y8UBVEGuHODd7/ci5DvoSzTQ=="
     5263      "integrity": "sha512-cB10MXLTs3gVuXimblAdI71jrJx8njrJZmNMEMC+sQu5B/BIOmlsAjskdqpn81y8UBVEGuHODd7/ci5DvoSzTQ==",
     5264      "requires": {}
    19415265    },
    19425266    "react-is": {
     
    19765300      "version": "2.4.1",
    19775301      "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.1.tgz",
    1978       "integrity": "sha512-OOYGNY5Jy2TWvTL1KgAlVy6dcx3siPJ1wTq741EPyUKfn6W6nChdICjZwCd0p8AZBs5kWpZlbkXW2nE/zjUa+Q=="
     5302      "integrity": "sha512-OOYGNY5Jy2TWvTL1KgAlVy6dcx3siPJ1wTq741EPyUKfn6W6nChdICjZwCd0p8AZBs5kWpZlbkXW2nE/zjUa+Q==",
     5303      "requires": {}
    19795304    },
    19805305    "regenerator-runtime": {
     
    21645489      "version": "5.0.2",
    21655490      "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.2.tgz",
    2166       "integrity": "sha512-LqPQrbBh3egD57NBcHET4qcgshPks+yblyhPlH2GY8oaDgKs8SK4C3dBh3oSJjgzJ3G5t1SYEZGHkP+QEpX9EQ=="
     5491      "integrity": "sha512-LqPQrbBh3egD57NBcHET4qcgshPks+yblyhPlH2GY8oaDgKs8SK4C3dBh3oSJjgzJ3G5t1SYEZGHkP+QEpX9EQ==",
     5492      "requires": {}
    21675493    },
    21685494    "supports-color": {
     
    22625588      "version": "1.1.0",
    22635589      "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.1.0.tgz",
    2264       "integrity": "sha512-SEnieB2FPKEVne66NpXPd1Np4R1lTNKfjuy3XdIoPQKYBAFdzbzSZlSn1KJZUiihQLQC5Znot4SBz1EOTBwQAQ=="
     5590      "integrity": "sha512-SEnieB2FPKEVne66NpXPd1Np4R1lTNKfjuy3XdIoPQKYBAFdzbzSZlSn1KJZUiihQLQC5Znot4SBz1EOTBwQAQ==",
     5591      "requires": {}
    22655592    },
    22665593    "uuid": {
  • package.json

    rfe03f69 rebf5e04  
    1111  },
    1212  "dependencies": {
    13     "next": "12.1.6",
    14     "react": "18.1.0",
    15     "react-dom": "18.1.0",
    1613    "@arctext/react": "^1.0.0",
    1714    "@reduxjs/toolkit": "^1.8.1",
     
    1916    "crypto": "^1.0.1",
    2017    "dotenv": "^16.0.0",
     18    "next": "12.1.6",
    2119    "pg": "^8.7.3",
     20    "react": "18.1.0",
     21    "react-dom": "18.1.0",
    2222    "react-icons": "^4.3.1",
    2323    "react-redux": "^8.0.1",
  • pages/api/blackjack/index.js

    rfe03f69 rebf5e04  
    1 import { v4 as uuidv4 } from 'uuid';
    2 
    31import axios from 'axios';
    42
    53require('dotenv').config();
    64
    7 /**
    8  * ********************* BEGIN OF DEALING WITH GAME STATES *********************
    9  */
    10 
    11 const singleDeck = ["SA", "S2", "S3", "S4", "S5", "S6", "S7", "S8", "S9", "SX", "SJ", "SQ", "SK",
    12                     "HA", "H2", "H3", "H4", "H5", "H6", "H7", "H8", "H9", "HX", "HJ", "HQ", "HK",
    13                     "CA", "C2", "C3", "C4", "C5", "C6", "C7", "C8", "C9", "CX", "CJ", "CQ", "CK",
    14                     "DA", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "DX", "DJ", "DQ", "DK"    ];
    15 
    16 /* We are using 5 decks */
    17 const deck = singleDeck.concat(singleDeck).concat(singleDeck).concat(singleDeck).concat(singleDeck);
    18 
    19 let game = {
    20   deck: [...deck],
    21   status: '_1_room_created',
    22   playerCards: [],
    23   dealerName: 'Lazar',
    24   dealerCards: [],
    25   initialBet: 0,
    26   sideBet: 0,
    27   sideBetName: '',
    28   outcome: '',
    29   earnings: 0,              // positive for draw, 2x for win, negative for loss.
    30   sideBetOutcome: '',
    31   sideBetEarnings: 0,
    32 }
     5import { game, drawASingleCard, getInitialCards, calculateHandValue } from './gameStates';
     6import { calculateEarnings, calculateSideBetEarnings } from './calculateEarnings';
    337
    348let rooms = []
    35 
    36 /**
    37  * Replace deck if empty
    38  */
    39 function checkDeckSize(game) {
    40   if (game.deck.length === 0) {
    41     game.deck = [...deck];
    42   }
    43 }
    44 
    45 /**
    46  * Draw a SINGLE random card
    47  */
    48 function drawASingleCard(room) {
    49   checkDeckSize(room);
    50   let idx = Math.floor(Math.random() * room.deck.length);
    51   let card = room.deck[idx];
    52 
    53   room.deck.splice(idx, 1);
    54 
    55   return card;
    56 }
    57 
    58 /**
    59  * Deal the initial hand of cards
    60  */
    61 function getInitialCards(room) {
    62   room.playerCards.push(drawASingleCard(room));
    63   room.playerCards.push(drawASingleCard(room));
    64 
    65   room.dealerCards.push(drawASingleCard(room));
    66   room.dealerCards.push(drawASingleCard(room));
    67 }
    68 
    69 function calculateEarnings(room) {
    70   let betEarnings = 0;
    71 
    72   if (room.outcome === 'draw') {
    73     betEarnings = room.initialBet;
    74   }
    75   else if (room.outcome === 'player_won' || room.outcome === 'dealer_busted') {
    76     betEarnings = 2 * room.initialBet;
    77   }
    78   else if (room.outcome === 'player_lost' || room.outcome === 'player_busted') {
    79     betEarnings = -1 * room.initialBet;
    80   }
    81 
    82   return betEarnings;
    83 }
    84 
    85 function calculateSideBetEarnings(room) {
    86   let sideBetEarnings = -1 * room.sideBet;
    87 
    88   if (room.sideBetName != '') {
    89     if (room.sideBetName === 'mixed_pair') {
    90       if (checkIfSameValue(room.playerCards)) {
    91         sideBetEarnings = room.sideBet * 5;
    92       }
    93     }
    94     else if (room.sideBetName === 'coloured_pair') {
    95       if (checkIfSameValue(room.playerCards) && checkIfSameColour(room.playerCards)) {
    96         sideBetEarnings = room.sideBet * 12;
    97       }
    98     }
    99     else if (room.sideBetName === 'perfect_pair') {
    100       if (checkIfSameValue(room.playerCards) && checkIfSameSuit(room.playerCards)) {
    101         sideBetEarnings = room.sideBet * 25;
    102       }
    103     }
    104     else if (room.sideBetName === 'flush') {
    105       const tmpCards = room.playerCards.slice().concat(room.dealerCards[0]);
    106       if (checkIfSameSuit(tmpCards)) {
    107         sideBetEarnings = room.sideBet * 5;
    108       }
    109     }
    110     else if (room.sideBetName === 'straight') {
    111       const tmpCards = room.playerCards.slice().concat(room.dealerCards[0]);
    112       if (checkIfStraight(tmpCards)) {
    113         sideBetEarnings = room.sideBet * 10;
    114       }
    115     }
    116     else if (room.sideBetName === 'three_of_a_kind') {
    117       const tmpCards = room.playerCards.slice().concat(room.dealerCards[0]);
    118       if (checkIfSameValue(tmpCards)) {
    119         sideBetEarnings = room.sideBet * 30;
    120       }
    121     }
    122     else if (room.sideBetName === 'straight_flush') {
    123       const tmpCards = room.playerCards.slice().concat(room.dealerCards[0]);
    124       if (checkIfStraight(tmpCards) && checkIfSameSuit(tmpCards)) {
    125         sideBetEarnings = room.sideBet * 40;
    126       }
    127     }
    128     else if (room.sideBetName === 'suited_triple') {
    129       const tmpCards = room.playerCards.slice().concat(room.dealerCards[0]);
    130       if (checkIfSameSuit(tmpCards) && checkIfSameValue(tmpCards)) {
    131         sideBetEarnings = room.sideBet * 100;
    132       }
    133     }
    134   }
    135 
    136   return sideBetEarnings;
    137 }
    1389
    13910/**
     
    14718  rooms[session_id] = room;
    14819}
    149 /**
    150  * ********************* END OF DEALING WITH GAME STATES *********************
    151  */
    15220
    15321/**
     
    16129    /**
    16230     * /---------------------- GET ----------------------/
     31     * If game status is _5_game_over, restart the room for a new game.
    16332     * @action play_again
    16433     * @param session_id
     
    18554    /**
    18655     * /---------------------- GET ----------------------/
     56     * If game status is _4_cards_on_the_table, draw cards for the dealer while handValue < 17, and calculate game outcome and player earnings.
     57     * Also, update the player's credits and stats in the database through /api/postgre?action=add_credits.
    18758     * @action stand
    18859     * @param session_id
     
    246117    /**
    247118     * /---------------------- GET ----------------------/
     119     * If game status is _4_cards_on_the_table, draw a card for the player.
     120     * If player busts, update the player's stats in the database through /api/postgre?action=add_credits.
    248121     * @action hit_a_card
    249122     * @param session_id
     
    305178     /**
    306179     * /---------------------- GET ----------------------/
     180     * If game status is _3_made_side_bet, check if the player won the side bet or not (if they placed a side bet of course).
     181     * Update the player's stats in the database through /api/postgre?action=add_credits.
    307182     * @action get_initial_cards
    308183     * @param session_id
     
    366241    /**
    367242     * /---------------------- GET ----------------------/
     243     * If game status is _2_made_initial_bet, place a side bet if the user has chosen one.
    368244     * @action make_side_bet
    369245     * @param session_id
     
    402278    /**
    403279     * /---------------------- GET ----------------------/
     280     * If game status is _1_room_created, get the initial bet placed by the player.
    404281     * @action make_initial_bet
    405282     * @param session_id
     
    434311    /**
    435312     * /---------------------- GET ----------------------/
     313     * Remove a room from the rooms array.
    436314     * @action remove_room
    437315     * @param session_id
     
    451329    /**
    452330     * /---------------------- GET ----------------------/
     331     * If the player is not in an existing room, create a room for them.
     332     * If they are reconnecting, get the room they were in.
    453333     * @action get_player_info_on_enter
    454334     * @param session_id
     
    465345
    466346      let dealerCardsTmp = [];
    467       if (rooms[session_id].status.substr(1, 1) != '1') { // 5 == game_over
     347      if (rooms[session_id].status.substr(1, 1) != '5') { // 5 == game_over
    468348        rooms[session_id].dealerCards.forEach((card, i) => {
    469349          if (i === 0) {
     
    474354          }
    475355        })
     356      }
     357      else {
     358        dealerCardsTmp = rooms[session_id].dealerCards;
    476359      }
    477360
     
    493376 * ********************* END OF REQUEST HANDLER *********************
    494377 */
    495 
    496 /**
    497  * ********************* BEGIN OF FUNCTIONS THAT CHECK CARD COMBINATIONS *********************
    498  */
    499 
    500 function calculateHandValue(cards) {
    501   let value = 0;
    502   let aces = 0;
    503   for (let i = 0; i < cards.length; i++) {
    504     let card = cards[i];
    505     if (card.substring(1) === 'A') {
    506       value += 11;
    507       aces++;
    508     } else if (card.substring(1) === 'X' || card.substring(1) === 'J' || card.substring(1) === 'Q' || card.substring(1) === 'K') {
    509       value += 10;
    510     } else {
    511       value += parseInt(card.substring(1));
    512     }
    513   }
    514   while (value > 21 && aces > 0) {
    515     value -= 10;
    516     aces--;
    517   }
    518   return value;
    519 }
    520 
    521 function checkIfSameValue(cards) {
    522   for (let i = 1; i < cards.length; i++) {
    523     if (cards[i][1] !== cards[i-1][1]) {
    524       return false;
    525     }
    526   }
    527 
    528   return true;
    529 }
    530 
    531 function checkIf2CardsAreSameColour(card1, card2) {
    532   if (card1[0] === card2[0]) return true;
    533   if (card1[0] === 'H' && card2[0] === 'D') return true;
    534   if (card1[0] === 'D' && card2[0] === 'H') return true;
    535   if (card1[0] === 'S' && card2[0] === 'C') return true;
    536   if (card1[0] === 'C' && card2[0] === 'S') return true;
    537   return false;
    538 }
    539 
    540 function checkIfSameColour(cards) {
    541   for (let i = 1; i < cards.length; i++) {
    542     if (!checkIf2CardsAreSameColour(cards[i], cards[i-1])) {
    543       return false;
    544     }
    545   }
    546 
    547   return true;
    548 }
    549 
    550 function checkIfSameSuit(cards) {
    551   for (let i = 1; i < cards.length; i++) {
    552     if (cards[i][0] !== cards[i-1][0]) {
    553       return false;
    554     }
    555   }
    556 
    557   return true;
    558 }
    559 
    560 function checkIfStraight(cards) {
    561   let values = ['A', '2', '3', '4', '5', '6', '7', '8', '9', 'X', 'J', 'Q', 'K'];
    562 
    563   let valuesInCards = [];
    564   for (let i = 0; i < cards.length; i++) {
    565     valuesInCards.push(cards[i][1]);
    566   }
    567 
    568   let temp = values.reduce((c, v, i) => Object.assign(c, {[v]: i}), {});
    569 
    570   valuesInCards = valuesInCards.sort((a, b) => temp[a] - temp[b]);
    571 
    572   let idx = values.indexOf(valuesInCards[0]);
    573 
    574   let straight = true;
    575 
    576   for (let i = 0; i < valuesInCards.length; i++) {
    577     if (valuesInCards[i] !== values[idx]) {
    578       straight = false;
    579       break;
    580     }
    581 
    582     idx++;
    583     if (idx >= temp.length) {
    584       straight = false;
    585       break;
    586     }
    587   }
    588 
    589   if (straight) {
    590     return true;
    591   }
    592 
    593   values = ['2', '3', '4', '5', '6', '7', '8', '9', 'X', 'J', 'Q', 'K', 'A'];
    594   temp = values.reduce((c, v, i) => Object.assign(c, {[v]: i}), {});
    595 
    596   valuesInCards = valuesInCards.sort((a, b) => temp[a] - temp[b]);
    597 
    598   idx = values.indexOf(valuesInCards[0]);
    599 
    600   for (let i = 0; i < valuesInCards.length; i++) {
    601     if (valuesInCards[i] !== values[idx]) return false;
    602 
    603     idx++;
    604     if (idx >= temp.length) return false;
    605   }
    606 
    607   return true;
    608 }
    609 /**
    610  * ********************* END OF FUNCTIONS THAT CHECK CARD COMBINATIONS *********************
    611  */
  • pages/api/postgre/index.js

    rfe03f69 rebf5e04  
    1313
    1414const sessions = []
    15 // example session
    16 // const session = {
    17 //   id,
    18 //   displayName,
    19 //   username,
    20 //   credits,
    21 //   lastActivity,
    22 // }
    23 
     15// example session = { id, displayName, username, credits, lastActivity }
    2416
    2517export default function handler(req, res) {
     
    3022    /**
    3123     * /---------------------- GET ----------------------/
     24     * If the player won credits, update them in the database.
     25     * Also, update the stats in the database.
    3226     * @action give_credits
    3327     * @param session_id
     
    9589    /**
    9690     * /---------------------- GET ----------------------/
     91     * The player lost credits, update this in the database.
    9792     * @action take_credits
    9893     * @param session_id
     
    138133    /**
    139134     * /---------------------- GET ----------------------/
     135     * Get stats for the player, so we can display them in the front end.
    140136     * @action get_stats
    141137     * @param session_id
     
    174170    /**
    175171     * /---------------------- GET ----------------------/
     172     * Returns the player's room, if the player was in one.
     173     * Same as the one below, but this one is used in a game-specific context.
    176174     * @action get_player_info_on_enter
    177175     * @param session_id
     
    198196    /**
    199197     * /---------------------- GET ----------------------/
     198     * Returns the player's room, if the player was in one.
     199     * Same as the one above, but this one is used in a general context.
    200200     * @action check_if_logged_in
    201201     * @param session_id
     
    222222    /**
    223223     * /---------------------- GET ----------------------/
     224     * Takes the credits in the player's session, and updates the database.
     225     * Logs the player out and kills the session.
    224226     * @action logout
    225227     * @param session_id
     
    254256    /**
    255257     * /---------------------- POST ----------------------/
     258     * Checks if the entered account info is good, and registers a new user in the database if so.
    256259     * @action register
    257260     * @param username
     
    339342    /**
    340343     * /---------------------- POST ----------------------/
     344     * Checks if the entered account info is good, and logs the user in if so.
    341345     * @action login
    342346     * @param username
     
    433437    }
    434438  }
    435 
    436   /**
    437    * PUT method
    438    */
    439   if (req.method === 'PUT') {
    440 
    441   }
    442439}
  • pages/games/blackjack.js

    rfe03f69 rebf5e04  
    22
    33import Blackjack from '../../components/blackjack/Blackjack'
    4 
    5 import { useEffect } from 'react'
    6 
    7 import axios from 'axios'
    84
    95const blackjack = () => {
  • pages/index.js

    rfe03f69 rebf5e04  
    2121
    2222        <meta name="author" content="ESS" />
    23         <meta name="copyright" content="ESS CORP" />
     23        <meta name="copyright" content="ESS CORP 2022 &copy;" />
    2424
    2525        <title>Caessino</title>
  • redux/reducers/playerSlice.js

    rfe03f69 rebf5e04  
    1414        status: '',
    1515        sideBetName: '',
    16     },
    17     stats: {
    18         wins: {
    19             blackjack: 0,
    20             roulette: 0,
    21             poker: 0,
    22         },
    23         games: {
    24             blackjack: 0,
    25             roulette: 0,
    26             poker: 0,
    27         }
    2816    }
    2917}
     
    3927            state.game = action.payload;
    4028        },
    41         setStats: (state, action) => {
    42             state.stats = action.payload;
    43         }
    4429    }
    4530})
    4631
    47 export const { setPlayer, setGame, setStats } = playerSlice.actions
     32export const { setPlayer, setGame } = playerSlice.actions
    4833
    4934export default playerSlice.reducer
  • yarn.lock

    rfe03f69 rebf5e04  
    6464    "glob" "7.1.7"
    6565
     66"@next/swc-android-arm-eabi@12.1.6":
     67  "integrity" "sha512-BxBr3QAAAXWgk/K7EedvzxJr2dE014mghBSA9iOEAv0bMgF+MRq4PoASjuHi15M2zfowpcRG8XQhMFtxftCleQ=="
     68  "resolved" "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.1.6.tgz"
     69  "version" "12.1.6"
     70
     71"@next/swc-android-arm64@12.1.6":
     72  "integrity" "sha512-EboEk3ROYY7U6WA2RrMt/cXXMokUTXXfnxe2+CU+DOahvbrO8QSWhlBl9I9ZbFzJx28AGB9Yo3oQHCvph/4Lew=="
     73  "resolved" "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-12.1.6.tgz"
     74  "version" "12.1.6"
     75
     76"@next/swc-darwin-arm64@12.1.6":
     77  "integrity" "sha512-P0EXU12BMSdNj1F7vdkP/VrYDuCNwBExtRPDYawgSUakzi6qP0iKJpya2BuLvNzXx+XPU49GFuDC5X+SvY0mOw=="
     78  "resolved" "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.1.6.tgz"
     79  "version" "12.1.6"
     80
     81"@next/swc-darwin-x64@12.1.6":
     82  "integrity" "sha512-9FptMnbgHJK3dRDzfTpexs9S2hGpzOQxSQbe8omz6Pcl7rnEp9x4uSEKY51ho85JCjL4d0tDLBcXEJZKKLzxNg=="
     83  "resolved" "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-12.1.6.tgz"
     84  "version" "12.1.6"
     85
     86"@next/swc-linux-arm-gnueabihf@12.1.6":
     87  "integrity" "sha512-PvfEa1RR55dsik/IDkCKSFkk6ODNGJqPY3ysVUZqmnWMDSuqFtf7BPWHFa/53znpvVB5XaJ5Z1/6aR5CTIqxPw=="
     88  "resolved" "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.1.6.tgz"
     89  "version" "12.1.6"
     90
     91"@next/swc-linux-arm64-gnu@12.1.6":
     92  "integrity" "sha512-53QOvX1jBbC2ctnmWHyRhMajGq7QZfl974WYlwclXarVV418X7ed7o/EzGY+YVAEKzIVaAB9JFFWGXn8WWo0gQ=="
     93  "resolved" "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.1.6.tgz"
     94  "version" "12.1.6"
     95
     96"@next/swc-linux-arm64-musl@12.1.6":
     97  "integrity" "sha512-CMWAkYqfGdQCS+uuMA1A2UhOfcUYeoqnTW7msLr2RyYAys15pD960hlDfq7QAi8BCAKk0sQ2rjsl0iqMyziohQ=="
     98  "resolved" "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.1.6.tgz"
     99  "version" "12.1.6"
     100
    66101"@next/swc-linux-x64-gnu@12.1.6":
    67102  "integrity" "sha512-AC7jE4Fxpn0s3ujngClIDTiEM/CQiB2N2vkcyWWn6734AmGT03Duq6RYtPMymFobDdAtZGFZd5nR95WjPzbZAQ=="
     
    72107  "integrity" "sha512-c9Vjmi0EVk0Kou2qbrynskVarnFwfYIi+wKufR9Ad7/IKKuP6aEhOdZiIIdKsYWRtK2IWRF3h3YmdnEa2WLUag=="
    73108  "resolved" "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.1.6.tgz"
     109  "version" "12.1.6"
     110
     111"@next/swc-win32-arm64-msvc@12.1.6":
     112  "integrity" "sha512-3UTOL/5XZSKFelM7qN0it35o3Cegm6LsyuERR3/OoqEExyj3aCk7F025b54/707HTMAnjlvQK3DzLhPu/xxO4g=="
     113  "resolved" "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.1.6.tgz"
     114  "version" "12.1.6"
     115
     116"@next/swc-win32-ia32-msvc@12.1.6":
     117  "integrity" "sha512-8ZWoj6nCq6fI1yCzKq6oK0jE6Mxlz4MrEsRyu0TwDztWQWe7rh4XXGLAa2YVPatYcHhMcUL+fQQbqd1MsgaSDA=="
     118  "resolved" "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.1.6.tgz"
    74119  "version" "12.1.6"
    75120
     
    18151860  "version" "0.20.2"
    18161861
    1817 "typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta", "typescript@>=3.3.1":
    1818   "integrity" "sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA=="
    1819   "resolved" "https://registry.npmjs.org/typescript/-/typescript-4.7.3.tgz"
    1820   "version" "4.7.3"
    1821 
    18221862"unbox-primitive@^1.0.2":
    18231863  "integrity" "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw=="
Note: See TracChangeset for help on using the changeset viewer.