diff --git a/.github/workflows/eval.yaml b/.github/workflows/eval.yaml new file mode 100644 index 0000000..6fe68d3 --- /dev/null +++ b/.github/workflows/eval.yaml @@ -0,0 +1,48 @@ +name: Run pnpm evals + +on: + push: + # Uncomment to run only when files in the 'evals' directory change + # - paths: + # - "evals/**" + +permissions: + pull-requests: write + contents: read + +jobs: + eval: + name: Run evals + runs-on: ubuntu-latest + + steps: + - name: Checkout + id: checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup Node.js + id: setup-node + uses: actions/setup-node@v4 + with: + node-version: 20 + + - uses: pnpm/action-setup@v3 + with: + version: 8 + + - name: Install Dependencies + id: install + run: pnpm install + + - name: Build packages + id: build + run: pnpm build + + - name: Run Evals + uses: braintrustdata/eval-action@v1 + with: + api_key: ${{ secrets.BRAINTRUST_API_KEY }} + runtime: node + root: evals diff --git a/.github/workflows/js.yaml b/.github/workflows/js.yaml index 8e39f4c..2dd4332 100644 --- a/.github/workflows/js.yaml +++ b/.github/workflows/js.yaml @@ -18,11 +18,19 @@ jobs: steps: - uses: actions/checkout@v3 + - name: Cache node_modules + uses: actions/cache@v4 + with: + path: | + node_modules + !node_modules/.cache/turbo + key: ${{ matrix.runner }}-${{ matrix.node_version }}-node-${{ env.nodeModulesCacheHash }} + restore-keys: | + ${{ matrix.runner }}-${{ matrix.node_version }}-node- - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} - cache: "npm" - uses: pnpm/action-setup@v2 with: version: 8 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 11dae14..6b2bd76 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -21,7 +21,7 @@ repos: - id: codespell exclude: > (?x)^( - .*\.(json|prisma) + .*\.(json|prisma|yaml) )$ args: [-L rouge] diff --git a/evals/.eslintrc.js b/evals/.eslintrc.js new file mode 100644 index 0000000..6806abc --- /dev/null +++ b/evals/.eslintrc.js @@ -0,0 +1,23 @@ +const path = require("path"); + +module.exports = { + extends: ["plugin:@typescript-eslint/recommended", "prettier"], + plugins: ["@typescript-eslint"], + rules: { + "@typescript-eslint/no-unused-vars": [ + "error", + { + vars: "all", + args: "none", + ignoreRestSiblings: false, + argsIgnorePattern: "^_", + varsIgnorePattern: "^_", + }, + ], + "prefer-const": "error", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/ban-types": "off", + "@typescript-eslint/ban-ts-comment": "off", + "@typescript-eslint/no-var-requires": "off", + }, +}; diff --git a/evals/.prettierrc b/evals/.prettierrc new file mode 100644 index 0000000..1ca87ab --- /dev/null +++ b/evals/.prettierrc @@ -0,0 +1,3 @@ +{ + "singleQuote": false +} diff --git a/evals/datasets/coqa-closed-qa.json b/evals/datasets/coqa-closed-qa.json new file mode 100644 index 0000000..31af669 --- /dev/null +++ b/evals/datasets/coqa-closed-qa.json @@ -0,0 +1,3258 @@ +[ + { + "input": { + "input": "Given the following context: Once upon a time, in a barn near a farm house, there lived a little white kitten named Cotton. Cotton lived high up in a nice warm place above the barn where all of the farmer's horses slept. But Cotton wasn't alone in her little home above the barn, oh no. She shared her hay bed with her mommy and 5 other sisters. All of her sisters were cute and fluffy, like Cotton. But she was the only white one in the bunch. The rest of her sisters were all orange with beautiful white tiger stripes like Cotton's mommy. Being different made Cotton quite sad. She often wished she looked like the rest of her family. So one day, when Cotton found a can of the old farmer's orange paint, she used it to paint herself like them. When her mommy and sisters found her they started laughing. \n\n\"What are you doing, Cotton?!\" \n\n\"I only wanted to be more like you\". \n\nCotton's mommy rubbed her face on Cotton's and said \"Oh Cotton, but your fur is so pretty and special, like you. We would never want you to be any other way\". And with that, Cotton's mommy picked her up and dropped her into a big bucket of water. When Cotton came out she was herself again. Her sisters licked her face until Cotton's fur was all all dry. \n\n\"Don't ever do that again, Cotton!\" they all cried. \"Next time you might mess up that pretty white fur of yours and we wouldn't want that!\" \n\nThen Cotton thought, \"I change my mind. I like being special\"., \n\n Answer the question: What color was Cotton?", + "output": "white", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Once upon a time, in a barn near a farm house, there lived a little white kitten named Cotton. Cotton lived high up in a nice warm place above the barn where all of the farmer's horses slept. But Cotton wasn't alone in her little home above the barn, oh no. She shared her hay bed with her mommy and 5 other sisters. All of her sisters were cute and fluffy, like Cotton. But she was the only white one in the bunch. The rest of her sisters were all orange with beautiful white tiger stripes like Cotton's mommy. Being different made Cotton quite sad. She often wished she looked like the rest of her family. So one day, when Cotton found a can of the old farmer's orange paint, she used it to paint herself like them. When her mommy and sisters found her they started laughing. \n\n\"What are you doing, Cotton?!\" \n\n\"I only wanted to be more like you\". \n\nCotton's mommy rubbed her face on Cotton's and said \"Oh Cotton, but your fur is so pretty and special, like you. We would never want you to be any other way\". And with that, Cotton's mommy picked her up and dropped her into a big bucket of water. When Cotton came out she was herself again. Her sisters licked her face until Cotton's fur was all all dry. \n\n\"Don't ever do that again, Cotton!\" they all cried. \"Next time you might mess up that pretty white fur of yours and we wouldn't want that!\" \n\nThen Cotton thought, \"I change my mind. I like being special\".", + "questions": [ + "What color was Cotton?", + "Where did she live?", + "Did she live alone?", + "Who did she live with?", + "What color were her sisters?", + "Was Cotton happy that she looked different than the rest of her family?", + "What did she do to try to make herself the same color as her sisters?", + "Whose paint was it?", + "What did Cotton's mother and siblings do when they saw her painted orange?", + "Where did Cotton's mother put her to clean the paint off?", + "What did the other cats do when Cotton emerged from the bucket of water?", + "Did they want Cotton to change the color of her fur?" + ], + "answers": { + "input_text": [ + "white", + "in a barn", + "no", + "with her mommy and 5 sisters", + "orange and white", + "no", + "she painted herself", + "the farmer", + "they started laughing", + "a bucket of water", + "licked her face", + "no" + ], + "answer_start": [ + 59, + 18, + 196, + 281, + 428, + 512, + 678, + 647, + 718, + 1035, + 1143, + 965 + ], + "answer_end": [ + 93, + 80, + 215, + 315, + 490, + 549, + 716, + 676, + 776, + 1097, + 1170, + 1008 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Once upon a time, in a barn near a farm house, there lived a little white kitten named Cotton. Cotton lived high up in a nice warm place above the barn where all of the farmer's horses slept. But Cotton wasn't alone in her little home above the barn, oh no. She shared her hay bed with her mommy and 5 other sisters. All of her sisters were cute and fluffy, like Cotton. But she was the only white one in the bunch. The rest of her sisters were all orange with beautiful white tiger stripes like Cotton's mommy. Being different made Cotton quite sad. She often wished she looked like the rest of her family. So one day, when Cotton found a can of the old farmer's orange paint, she used it to paint herself like them. When her mommy and sisters found her they started laughing. \n\n\"What are you doing, Cotton?!\" \n\n\"I only wanted to be more like you\". \n\nCotton's mommy rubbed her face on Cotton's and said \"Oh Cotton, but your fur is so pretty and special, like you. We would never want you to be any other way\". And with that, Cotton's mommy picked her up and dropped her into a big bucket of water. When Cotton came out she was herself again. Her sisters licked her face until Cotton's fur was all all dry. \n\n\"Don't ever do that again, Cotton!\" they all cried. \"Next time you might mess up that pretty white fur of yours and we wouldn't want that!\" \n\nThen Cotton thought, \"I change my mind. I like being special\"., \n\n Answer the question: What color was Cotton?", + "output": "in a barn", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Once upon a time, in a barn near a farm house, there lived a little white kitten named Cotton. Cotton lived high up in a nice warm place above the barn where all of the farmer's horses slept. But Cotton wasn't alone in her little home above the barn, oh no. She shared her hay bed with her mommy and 5 other sisters. All of her sisters were cute and fluffy, like Cotton. But she was the only white one in the bunch. The rest of her sisters were all orange with beautiful white tiger stripes like Cotton's mommy. Being different made Cotton quite sad. She often wished she looked like the rest of her family. So one day, when Cotton found a can of the old farmer's orange paint, she used it to paint herself like them. When her mommy and sisters found her they started laughing. \n\n\"What are you doing, Cotton?!\" \n\n\"I only wanted to be more like you\". \n\nCotton's mommy rubbed her face on Cotton's and said \"Oh Cotton, but your fur is so pretty and special, like you. We would never want you to be any other way\". And with that, Cotton's mommy picked her up and dropped her into a big bucket of water. When Cotton came out she was herself again. Her sisters licked her face until Cotton's fur was all all dry. \n\n\"Don't ever do that again, Cotton!\" they all cried. \"Next time you might mess up that pretty white fur of yours and we wouldn't want that!\" \n\nThen Cotton thought, \"I change my mind. I like being special\".", + "questions": [ + "What color was Cotton?", + "Where did she live?", + "Did she live alone?", + "Who did she live with?", + "What color were her sisters?", + "Was Cotton happy that she looked different than the rest of her family?", + "What did she do to try to make herself the same color as her sisters?", + "Whose paint was it?", + "What did Cotton's mother and siblings do when they saw her painted orange?", + "Where did Cotton's mother put her to clean the paint off?", + "What did the other cats do when Cotton emerged from the bucket of water?", + "Did they want Cotton to change the color of her fur?" + ], + "answers": { + "input_text": [ + "white", + "in a barn", + "no", + "with her mommy and 5 sisters", + "orange and white", + "no", + "she painted herself", + "the farmer", + "they started laughing", + "a bucket of water", + "licked her face", + "no" + ], + "answer_start": [ + 59, + 18, + 196, + 281, + 428, + 512, + 678, + 647, + 718, + 1035, + 1143, + 965 + ], + "answer_end": [ + 93, + 80, + 215, + 315, + 490, + 549, + 716, + 676, + 776, + 1097, + 1170, + 1008 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Once there was a beautiful fish named Asta. Asta lived in the ocean. There were lots of other fish in the ocean where Asta lived. They played all day long. \n\nOne day, a bottle floated by over the heads of Asta and his friends. They looked up and saw the bottle. \"What is it?\" said Asta's friend Sharkie. \"It looks like a bird's belly,\" said Asta. But when they swam closer, it was not a bird's belly. It was hard and clear, and there was something inside it. \n\nThe bottle floated above them. They wanted to open it. They wanted to see what was inside. So they caught the bottle and carried it down to the bottom of the ocean. They cracked it open on a rock. When they got it open, they found what was inside. It was a note. The note was written in orange crayon on white paper. Asta could not read the note. Sharkie could not read the note. They took the note to Asta's papa. \"What does it say?\" they asked. \n\nAsta's papa read the note. He told Asta and Sharkie, \"This note is from a little girl. She wants to be your friend. If you want to be her friend, we can write a note to her. But you have to find another bottle so we can send it to her.\" And that is what they did., \n\n Answer the question: what was the name of the fish", + "output": "Asta.", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Once there was a beautiful fish named Asta. Asta lived in the ocean. There were lots of other fish in the ocean where Asta lived. They played all day long. \n\nOne day, a bottle floated by over the heads of Asta and his friends. They looked up and saw the bottle. \"What is it?\" said Asta's friend Sharkie. \"It looks like a bird's belly,\" said Asta. But when they swam closer, it was not a bird's belly. It was hard and clear, and there was something inside it. \n\nThe bottle floated above them. They wanted to open it. They wanted to see what was inside. So they caught the bottle and carried it down to the bottom of the ocean. They cracked it open on a rock. When they got it open, they found what was inside. It was a note. The note was written in orange crayon on white paper. Asta could not read the note. Sharkie could not read the note. They took the note to Asta's papa. \"What does it say?\" they asked. \n\nAsta's papa read the note. He told Asta and Sharkie, \"This note is from a little girl. She wants to be your friend. If you want to be her friend, we can write a note to her. But you have to find another bottle so we can send it to her.\" And that is what they did.", + "questions": [ + "what was the name of the fish", + "What looked like a birds belly", + "who said that", + "Was Sharkie a friend?", + "did they get the bottle?", + "What was in it", + "Did a little boy write the note", + "Who could read the note", + "What did they do with the note", + "did they write back", + "were they excited" + ], + "answers": { + "input_text": [ + "Asta.", + "a bottle", + "Asta.", + "Yes", + "Yes", + "a note", + "No", + "Asta's papa", + "unknown", + "yes", + "unknown" + ], + "answer_start": [ + 37, + 167, + 303, + 281, + 552, + 708, + 964, + 910, + -1, + 1056, + -1 + ], + "answer_end": [ + 43, + 175, + 346, + 302, + 577, + 723, + 995, + 935, + -1, + 1173, + -1 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Once there was a beautiful fish named Asta. Asta lived in the ocean. There were lots of other fish in the ocean where Asta lived. They played all day long. \n\nOne day, a bottle floated by over the heads of Asta and his friends. They looked up and saw the bottle. \"What is it?\" said Asta's friend Sharkie. \"It looks like a bird's belly,\" said Asta. But when they swam closer, it was not a bird's belly. It was hard and clear, and there was something inside it. \n\nThe bottle floated above them. They wanted to open it. They wanted to see what was inside. So they caught the bottle and carried it down to the bottom of the ocean. They cracked it open on a rock. When they got it open, they found what was inside. It was a note. The note was written in orange crayon on white paper. Asta could not read the note. Sharkie could not read the note. They took the note to Asta's papa. \"What does it say?\" they asked. \n\nAsta's papa read the note. He told Asta and Sharkie, \"This note is from a little girl. She wants to be your friend. If you want to be her friend, we can write a note to her. But you have to find another bottle so we can send it to her.\" And that is what they did., \n\n Answer the question: what was the name of the fish", + "output": "a bottle", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Once there was a beautiful fish named Asta. Asta lived in the ocean. There were lots of other fish in the ocean where Asta lived. They played all day long. \n\nOne day, a bottle floated by over the heads of Asta and his friends. They looked up and saw the bottle. \"What is it?\" said Asta's friend Sharkie. \"It looks like a bird's belly,\" said Asta. But when they swam closer, it was not a bird's belly. It was hard and clear, and there was something inside it. \n\nThe bottle floated above them. They wanted to open it. They wanted to see what was inside. So they caught the bottle and carried it down to the bottom of the ocean. They cracked it open on a rock. When they got it open, they found what was inside. It was a note. The note was written in orange crayon on white paper. Asta could not read the note. Sharkie could not read the note. They took the note to Asta's papa. \"What does it say?\" they asked. \n\nAsta's papa read the note. He told Asta and Sharkie, \"This note is from a little girl. She wants to be your friend. If you want to be her friend, we can write a note to her. But you have to find another bottle so we can send it to her.\" And that is what they did.", + "questions": [ + "what was the name of the fish", + "What looked like a birds belly", + "who said that", + "Was Sharkie a friend?", + "did they get the bottle?", + "What was in it", + "Did a little boy write the note", + "Who could read the note", + "What did they do with the note", + "did they write back", + "were they excited" + ], + "answers": { + "input_text": [ + "Asta.", + "a bottle", + "Asta.", + "Yes", + "Yes", + "a note", + "No", + "Asta's papa", + "unknown", + "yes", + "unknown" + ], + "answer_start": [ + 37, + 167, + 303, + 281, + 552, + 708, + 964, + 910, + -1, + 1056, + -1 + ], + "answer_end": [ + 43, + 175, + 346, + 302, + 577, + 723, + 995, + 935, + -1, + 1173, + -1 + ] + } + } + }, + { + "input": { + "input": "Given the following context: My doorbell rings. On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy. In her other hand, she holds a paper carrier bag. \n\nI know this lady. It is not her first visit. She is the boy's grandmother, and her daughter bought the house next door last October. \n\nHer daughter, Nicole, speaks fluent English. But she is now in Shanghai, and her parents are here with the little boy. Nicole has obviously told her mother that I am having heart surgery soon, so her mother has decided I need more nutrients. \n\nI know what is inside the bag--a thermos with hot soup and a stainless-steel container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake. This has become an almost-daily practice. \n\nCommunication between us is somewhat affected by the fact that she doesn't speak English and all I can say in Chinese is hello. Once, she brought an iPad as well as the food. She pointed to the screen, which displayed a message from her daughter telling me that her mother wanted to know if the food was all right and whether it was too salty. I am not used to iPads, so she indicated I should go with her to her house. Then, she handed the iPad to her husband and almost immediately I found myself looking at Nicole in Shanghai and discussing her mother's cooking and salt intake. Instantly, tears welled in my eyes. \n\n\"Your mother just can't be bringing me meals like this all the time,\" I insisted. \"I can hardly do dishes in return.\" \n\n\"Oh, no, Lucy.\" Nicole said. \"Mum doesn't like western food. Don't worry about it; she has to cook for the three of them anyway, and she wants to do it.\" \n\nThe doorbell keeps ringing and there is the familiar brown paper carrier bag, handed smilingly to me. \n\nI am now working on some more Chinese words--it's the least I can do after such display of kindness. \n\n\"Thank you\" is, of course, the first one. Somehow, it seems inadequate., \n\n Answer the question: Who is at the door?", + "output": "An elderly Chinese lady and a little boy", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "My doorbell rings. On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy. In her other hand, she holds a paper carrier bag. \n\nI know this lady. It is not her first visit. She is the boy's grandmother, and her daughter bought the house next door last October. \n\nHer daughter, Nicole, speaks fluent English. But she is now in Shanghai, and her parents are here with the little boy. Nicole has obviously told her mother that I am having heart surgery soon, so her mother has decided I need more nutrients. \n\nI know what is inside the bag--a thermos with hot soup and a stainless-steel container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake. This has become an almost-daily practice. \n\nCommunication between us is somewhat affected by the fact that she doesn't speak English and all I can say in Chinese is hello. Once, she brought an iPad as well as the food. She pointed to the screen, which displayed a message from her daughter telling me that her mother wanted to know if the food was all right and whether it was too salty. I am not used to iPads, so she indicated I should go with her to her house. Then, she handed the iPad to her husband and almost immediately I found myself looking at Nicole in Shanghai and discussing her mother's cooking and salt intake. Instantly, tears welled in my eyes. \n\n\"Your mother just can't be bringing me meals like this all the time,\" I insisted. \"I can hardly do dishes in return.\" \n\n\"Oh, no, Lucy.\" Nicole said. \"Mum doesn't like western food. Don't worry about it; she has to cook for the three of them anyway, and she wants to do it.\" \n\nThe doorbell keeps ringing and there is the familiar brown paper carrier bag, handed smilingly to me. \n\nI am now working on some more Chinese words--it's the least I can do after such display of kindness. \n\n\"Thank you\" is, of course, the first one. Somehow, it seems inadequate.", + "questions": [ + "Who is at the door?", + "Is she carrying something?", + "What?", + "Do I know her?", + "Who is her daughter?", + "Where does Nicole live?", + "How is she related to the boy?", + "What is in the bag?", + "Has she done this before?", + "Why?", + "What has helped us communicate?", + "What kind of dishes does she bring?", + "What do I do to help communicate with her?", + "Do she continue bringing the bag?", + "What is the first phrase I learn?" + ], + "answers": { + "input_text": [ + "An elderly Chinese lady and a little boy", + "Yes", + "a paper carrier bag", + "Yes", + "Nicole", + "Shanghai", + "mother", + "food", + "Yes", + "I am having heart surgery soon, so her mother has decided I need more nutrients", + "an iPad", + "hot soup and a container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake", + "I am now working on some more Chinese words", + "Yes", + "\"Thank you\"" + ], + "answer_start": [ + 19, + 136, + 146, + 169, + 304, + 348, + 214, + 579, + 727, + 423, + 917, + 594, + 1771, + 1667, + 1874 + ], + "answer_end": [ + 115, + 165, + 165, + 185, + 324, + 375, + 302, + 725, + 769, + 544, + 924, + 725, + 1814, + 1769, + 1885 + ] + } + } + }, + { + "input": { + "input": "Given the following context: My doorbell rings. On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy. In her other hand, she holds a paper carrier bag. \n\nI know this lady. It is not her first visit. She is the boy's grandmother, and her daughter bought the house next door last October. \n\nHer daughter, Nicole, speaks fluent English. But she is now in Shanghai, and her parents are here with the little boy. Nicole has obviously told her mother that I am having heart surgery soon, so her mother has decided I need more nutrients. \n\nI know what is inside the bag--a thermos with hot soup and a stainless-steel container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake. This has become an almost-daily practice. \n\nCommunication between us is somewhat affected by the fact that she doesn't speak English and all I can say in Chinese is hello. Once, she brought an iPad as well as the food. She pointed to the screen, which displayed a message from her daughter telling me that her mother wanted to know if the food was all right and whether it was too salty. I am not used to iPads, so she indicated I should go with her to her house. Then, she handed the iPad to her husband and almost immediately I found myself looking at Nicole in Shanghai and discussing her mother's cooking and salt intake. Instantly, tears welled in my eyes. \n\n\"Your mother just can't be bringing me meals like this all the time,\" I insisted. \"I can hardly do dishes in return.\" \n\n\"Oh, no, Lucy.\" Nicole said. \"Mum doesn't like western food. Don't worry about it; she has to cook for the three of them anyway, and she wants to do it.\" \n\nThe doorbell keeps ringing and there is the familiar brown paper carrier bag, handed smilingly to me. \n\nI am now working on some more Chinese words--it's the least I can do after such display of kindness. \n\n\"Thank you\" is, of course, the first one. Somehow, it seems inadequate., \n\n Answer the question: Who is at the door?", + "output": "Yes", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "My doorbell rings. On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy. In her other hand, she holds a paper carrier bag. \n\nI know this lady. It is not her first visit. She is the boy's grandmother, and her daughter bought the house next door last October. \n\nHer daughter, Nicole, speaks fluent English. But she is now in Shanghai, and her parents are here with the little boy. Nicole has obviously told her mother that I am having heart surgery soon, so her mother has decided I need more nutrients. \n\nI know what is inside the bag--a thermos with hot soup and a stainless-steel container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake. This has become an almost-daily practice. \n\nCommunication between us is somewhat affected by the fact that she doesn't speak English and all I can say in Chinese is hello. Once, she brought an iPad as well as the food. She pointed to the screen, which displayed a message from her daughter telling me that her mother wanted to know if the food was all right and whether it was too salty. I am not used to iPads, so she indicated I should go with her to her house. Then, she handed the iPad to her husband and almost immediately I found myself looking at Nicole in Shanghai and discussing her mother's cooking and salt intake. Instantly, tears welled in my eyes. \n\n\"Your mother just can't be bringing me meals like this all the time,\" I insisted. \"I can hardly do dishes in return.\" \n\n\"Oh, no, Lucy.\" Nicole said. \"Mum doesn't like western food. Don't worry about it; she has to cook for the three of them anyway, and she wants to do it.\" \n\nThe doorbell keeps ringing and there is the familiar brown paper carrier bag, handed smilingly to me. \n\nI am now working on some more Chinese words--it's the least I can do after such display of kindness. \n\n\"Thank you\" is, of course, the first one. Somehow, it seems inadequate.", + "questions": [ + "Who is at the door?", + "Is she carrying something?", + "What?", + "Do I know her?", + "Who is her daughter?", + "Where does Nicole live?", + "How is she related to the boy?", + "What is in the bag?", + "Has she done this before?", + "Why?", + "What has helped us communicate?", + "What kind of dishes does she bring?", + "What do I do to help communicate with her?", + "Do she continue bringing the bag?", + "What is the first phrase I learn?" + ], + "answers": { + "input_text": [ + "An elderly Chinese lady and a little boy", + "Yes", + "a paper carrier bag", + "Yes", + "Nicole", + "Shanghai", + "mother", + "food", + "Yes", + "I am having heart surgery soon, so her mother has decided I need more nutrients", + "an iPad", + "hot soup and a container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake", + "I am now working on some more Chinese words", + "Yes", + "\"Thank you\"" + ], + "answer_start": [ + 19, + 136, + 146, + 169, + 304, + 348, + 214, + 579, + 727, + 423, + 917, + 594, + 1771, + 1667, + 1874 + ], + "answer_end": [ + 115, + 165, + 165, + 185, + 324, + 375, + 302, + 725, + 769, + 544, + 924, + 725, + 1814, + 1769, + 1885 + ] + } + } + }, + { + "input": { + "input": "Given the following context: (CNN) -- Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. He was 69. \n\n\"We are deeply saddened by the loss of a great actor and a wonderful man,\" said his publicist, Lori De Waal, in a statement Monday. \"Dennis Farina was always warmhearted and professional, with a great sense of humor and passion for his profession. He will be greatly missed by his family, friends and colleagues.\" \n\nFarina, who had a long career as a police officer in Chicago, got into acting through director Michael Mann, who used him as a consultant and cast him in his 1981 movie, \"Thief.\" That role led to others in such Mann-created shows as \"Miami Vice\" (in which Farina played a mobster) and \"Crime Story\" (in which he starred as Lt. Mike Torello). \n\nFarina also had roles, generally as either cops or gangsters, in a number of movies, including \"Midnight Run\" (1988), \"Get Shorty\" (1995), \"The Mod Squad\" (1999) and \"Snatch\" (2000). \n\nIn 2004, he joined the cast of the long-running \"Law & Order\" after Jerry Orbach's departure, playing Detective Joe Fontana, a role he reprised on the spinoff \"Trial by Jury.\" Fontana was known for flashy clothes and an expensive car, a distinct counterpoint to Orbach's rumpled Lennie Briscoe. \n\nFarina was on \"Law & Order\" for two years, partnered with Jesse L. Martin's Ed Green. Martin's character became a senior detective after Farina left the show. , \n\n Answer the question: Is someone in showbiz?", + "output": "Yes.", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "(CNN) -- Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. He was 69. \n\n\"We are deeply saddened by the loss of a great actor and a wonderful man,\" said his publicist, Lori De Waal, in a statement Monday. \"Dennis Farina was always warmhearted and professional, with a great sense of humor and passion for his profession. He will be greatly missed by his family, friends and colleagues.\" \n\nFarina, who had a long career as a police officer in Chicago, got into acting through director Michael Mann, who used him as a consultant and cast him in his 1981 movie, \"Thief.\" That role led to others in such Mann-created shows as \"Miami Vice\" (in which Farina played a mobster) and \"Crime Story\" (in which he starred as Lt. Mike Torello). \n\nFarina also had roles, generally as either cops or gangsters, in a number of movies, including \"Midnight Run\" (1988), \"Get Shorty\" (1995), \"The Mod Squad\" (1999) and \"Snatch\" (2000). \n\nIn 2004, he joined the cast of the long-running \"Law & Order\" after Jerry Orbach's departure, playing Detective Joe Fontana, a role he reprised on the spinoff \"Trial by Jury.\" Fontana was known for flashy clothes and an expensive car, a distinct counterpoint to Orbach's rumpled Lennie Briscoe. \n\nFarina was on \"Law & Order\" for two years, partnered with Jesse L. Martin's Ed Green. Martin's character became a senior detective after Farina left the show. ", + "questions": [ + "Is someone in showbiz?", + "Whom?", + "What did he do?", + "Is he still alive?", + "Was he in movies?", + "Anything recent?", + "What happened in the early 80's?", + "Who cast him?", + "What was the title of the movie?", + "What parts did he usually get?", + "What happened in 2004?", + "Which one?", + "Who did he portray?", + "Did he have a beater for a car?", + "What did he have?", + "Were the characters clothes frumpy?", + "What were they like?", + "Was he on the show for five years?", + "Was he always an actor?", + "What had he been before?" + ], + "answers": { + "input_text": [ + "Yes.", + "Dennis Farina", + "Actor", + "No", + "Yes", + "No", + "Farina was cast in a film", + "Michael Mann", + "\"Thief\"", + "cops or gangsters", + "He joined a TV show cast.", + "\"Law & Order\"", + "Detective Joe Fontana", + "No", + "An expensive car", + "No", + "Flashy", + "No", + "No", + "A cop" + ], + "answer_start": [ + 8, + 8, + 8, + 9, + 512, + 856, + 573, + 512, + 512, + 856, + 1041, + 1041, + 1041, + 1217, + 1216, + 1217, + 1217, + 1338, + 8, + 8 + ], + "answer_end": [ + 181, + 183, + 66, + 181, + 690, + 1039, + 690, + 662, + 690, + 1039, + 1103, + 1134, + 1165, + 1336, + 1336, + 1336, + 1336, + 1381, + 138, + 65 + ] + } + } + }, + { + "input": { + "input": "Given the following context: (CNN) -- Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. He was 69. \n\n\"We are deeply saddened by the loss of a great actor and a wonderful man,\" said his publicist, Lori De Waal, in a statement Monday. \"Dennis Farina was always warmhearted and professional, with a great sense of humor and passion for his profession. He will be greatly missed by his family, friends and colleagues.\" \n\nFarina, who had a long career as a police officer in Chicago, got into acting through director Michael Mann, who used him as a consultant and cast him in his 1981 movie, \"Thief.\" That role led to others in such Mann-created shows as \"Miami Vice\" (in which Farina played a mobster) and \"Crime Story\" (in which he starred as Lt. Mike Torello). \n\nFarina also had roles, generally as either cops or gangsters, in a number of movies, including \"Midnight Run\" (1988), \"Get Shorty\" (1995), \"The Mod Squad\" (1999) and \"Snatch\" (2000). \n\nIn 2004, he joined the cast of the long-running \"Law & Order\" after Jerry Orbach's departure, playing Detective Joe Fontana, a role he reprised on the spinoff \"Trial by Jury.\" Fontana was known for flashy clothes and an expensive car, a distinct counterpoint to Orbach's rumpled Lennie Briscoe. \n\nFarina was on \"Law & Order\" for two years, partnered with Jesse L. Martin's Ed Green. Martin's character became a senior detective after Farina left the show. , \n\n Answer the question: Is someone in showbiz?", + "output": "Dennis Farina", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "(CNN) -- Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. He was 69. \n\n\"We are deeply saddened by the loss of a great actor and a wonderful man,\" said his publicist, Lori De Waal, in a statement Monday. \"Dennis Farina was always warmhearted and professional, with a great sense of humor and passion for his profession. He will be greatly missed by his family, friends and colleagues.\" \n\nFarina, who had a long career as a police officer in Chicago, got into acting through director Michael Mann, who used him as a consultant and cast him in his 1981 movie, \"Thief.\" That role led to others in such Mann-created shows as \"Miami Vice\" (in which Farina played a mobster) and \"Crime Story\" (in which he starred as Lt. Mike Torello). \n\nFarina also had roles, generally as either cops or gangsters, in a number of movies, including \"Midnight Run\" (1988), \"Get Shorty\" (1995), \"The Mod Squad\" (1999) and \"Snatch\" (2000). \n\nIn 2004, he joined the cast of the long-running \"Law & Order\" after Jerry Orbach's departure, playing Detective Joe Fontana, a role he reprised on the spinoff \"Trial by Jury.\" Fontana was known for flashy clothes and an expensive car, a distinct counterpoint to Orbach's rumpled Lennie Briscoe. \n\nFarina was on \"Law & Order\" for two years, partnered with Jesse L. Martin's Ed Green. Martin's character became a senior detective after Farina left the show. ", + "questions": [ + "Is someone in showbiz?", + "Whom?", + "What did he do?", + "Is he still alive?", + "Was he in movies?", + "Anything recent?", + "What happened in the early 80's?", + "Who cast him?", + "What was the title of the movie?", + "What parts did he usually get?", + "What happened in 2004?", + "Which one?", + "Who did he portray?", + "Did he have a beater for a car?", + "What did he have?", + "Were the characters clothes frumpy?", + "What were they like?", + "Was he on the show for five years?", + "Was he always an actor?", + "What had he been before?" + ], + "answers": { + "input_text": [ + "Yes.", + "Dennis Farina", + "Actor", + "No", + "Yes", + "No", + "Farina was cast in a film", + "Michael Mann", + "\"Thief\"", + "cops or gangsters", + "He joined a TV show cast.", + "\"Law & Order\"", + "Detective Joe Fontana", + "No", + "An expensive car", + "No", + "Flashy", + "No", + "No", + "A cop" + ], + "answer_start": [ + 8, + 8, + 8, + 9, + 512, + 856, + 573, + 512, + 512, + 856, + 1041, + 1041, + 1041, + 1217, + 1216, + 1217, + 1217, + 1338, + 8, + 8 + ], + "answer_end": [ + 181, + 183, + 66, + 181, + 690, + 1039, + 690, + 662, + 690, + 1039, + 1103, + 1134, + 1165, + 1336, + 1336, + 1336, + 1336, + 1381, + 138, + 65 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Kendra and Quinton travel to and from school every day. Kendra lives further from the bus stop than Quinton does, stops every morning at Quinton's house to join him to walk to the bus stop. Every afternoon, after school, when walking home from the bus stop they go in for cookies and milk that Quinton's mother has ready and waiting for them. Quinton can't eat cheese or cake so they had the same snack every day. They both work together on their homework and when they are done they play together. Kendra always makes sure to leave in time to get home for dinner. She doesn't want to miss story time which was right before bedtime. \n\nOne morning Kendra walked up to Quinton's house, she thought something might be wrong because normally Quinton was waiting outside for her and on this morning he was not to be found. Kendra went up to the door and knocked. She waited and waited and yet no one answered. She saw that Quinton's mother's car wasn't in their driveway which was weird. She waited for a few bit looking up and down the block and getting worried when Quinton was nowhere to be found. \n\nKendra didn't want to miss the bus to school and hurried off to make it in time. The bus driver saw that she was upset and that Quinton was not with her that morning. She told him what happened and he said that he was sure that everything would be okay. \n\nKendra got to school, ran to her teacher and told him what happened that morning. The teacher smiled and told her not to worry, Quinton's mother had called and he was going to the dentist and would be at school after lunch and that she would see him at the bus stop like normal tomorrow., \n\n Answer the question: Where do Quinton and Kendra travel to and from every day?", + "output": "school", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Kendra and Quinton travel to and from school every day. Kendra lives further from the bus stop than Quinton does, stops every morning at Quinton's house to join him to walk to the bus stop. Every afternoon, after school, when walking home from the bus stop they go in for cookies and milk that Quinton's mother has ready and waiting for them. Quinton can't eat cheese or cake so they had the same snack every day. They both work together on their homework and when they are done they play together. Kendra always makes sure to leave in time to get home for dinner. She doesn't want to miss story time which was right before bedtime. \n\nOne morning Kendra walked up to Quinton's house, she thought something might be wrong because normally Quinton was waiting outside for her and on this morning he was not to be found. Kendra went up to the door and knocked. She waited and waited and yet no one answered. She saw that Quinton's mother's car wasn't in their driveway which was weird. She waited for a few bit looking up and down the block and getting worried when Quinton was nowhere to be found. \n\nKendra didn't want to miss the bus to school and hurried off to make it in time. The bus driver saw that she was upset and that Quinton was not with her that morning. She told him what happened and he said that he was sure that everything would be okay. \n\nKendra got to school, ran to her teacher and told him what happened that morning. The teacher smiled and told her not to worry, Quinton's mother had called and he was going to the dentist and would be at school after lunch and that she would see him at the bus stop like normal tomorrow.", + "questions": [ + "Where do Quinton and Kendra travel to and from every day?", + "Does Quinton live further from the bus stop?", + "What do they do every afternoon after school?", + "Does Quinton eat cheese?", + "Do they play before their homework?", + "What does Kendra not want to miss?", + "When is that?", + "What happened when Kendra knocked on Quinton's door?", + "Did she see the car?", + "Did she miss the bus?", + "What did the bus driver see?", + "Did Kendra tell him why?", + "What did he say?", + "When she got to school, who did she tell?", + "Did he frown?", + "Who had called?", + "Where did he go?", + "When would he be back?" + ], + "answers": { + "input_text": [ + "school", + "No", + "go to Quentin's house", + "No", + "No", + "story time", + "right before bedtime", + "no one answered", + "No", + "No", + "that she was upset", + "yes", + "everything would be okay", + "her teacher", + "No", + "Quinton's mother", + "to the dentist", + "yes" + ], + "answer_start": [ + 0, + 56, + 190, + 343, + 414, + 565, + 601, + 888, + 906, + 1098, + 1179, + 1265, + 1296, + 1382, + 1436, + 1481, + 1514, + 1546 + ], + "answer_end": [ + 54, + 107, + 341, + 367, + 497, + 600, + 631, + 903, + 965, + 1177, + 1216, + 1291, + 1350, + 1434, + 1454, + 1509, + 1541, + 1576 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Kendra and Quinton travel to and from school every day. Kendra lives further from the bus stop than Quinton does, stops every morning at Quinton's house to join him to walk to the bus stop. Every afternoon, after school, when walking home from the bus stop they go in for cookies and milk that Quinton's mother has ready and waiting for them. Quinton can't eat cheese or cake so they had the same snack every day. They both work together on their homework and when they are done they play together. Kendra always makes sure to leave in time to get home for dinner. She doesn't want to miss story time which was right before bedtime. \n\nOne morning Kendra walked up to Quinton's house, she thought something might be wrong because normally Quinton was waiting outside for her and on this morning he was not to be found. Kendra went up to the door and knocked. She waited and waited and yet no one answered. She saw that Quinton's mother's car wasn't in their driveway which was weird. She waited for a few bit looking up and down the block and getting worried when Quinton was nowhere to be found. \n\nKendra didn't want to miss the bus to school and hurried off to make it in time. The bus driver saw that she was upset and that Quinton was not with her that morning. She told him what happened and he said that he was sure that everything would be okay. \n\nKendra got to school, ran to her teacher and told him what happened that morning. The teacher smiled and told her not to worry, Quinton's mother had called and he was going to the dentist and would be at school after lunch and that she would see him at the bus stop like normal tomorrow., \n\n Answer the question: Where do Quinton and Kendra travel to and from every day?", + "output": "No", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Kendra and Quinton travel to and from school every day. Kendra lives further from the bus stop than Quinton does, stops every morning at Quinton's house to join him to walk to the bus stop. Every afternoon, after school, when walking home from the bus stop they go in for cookies and milk that Quinton's mother has ready and waiting for them. Quinton can't eat cheese or cake so they had the same snack every day. They both work together on their homework and when they are done they play together. Kendra always makes sure to leave in time to get home for dinner. She doesn't want to miss story time which was right before bedtime. \n\nOne morning Kendra walked up to Quinton's house, she thought something might be wrong because normally Quinton was waiting outside for her and on this morning he was not to be found. Kendra went up to the door and knocked. She waited and waited and yet no one answered. She saw that Quinton's mother's car wasn't in their driveway which was weird. She waited for a few bit looking up and down the block and getting worried when Quinton was nowhere to be found. \n\nKendra didn't want to miss the bus to school and hurried off to make it in time. The bus driver saw that she was upset and that Quinton was not with her that morning. She told him what happened and he said that he was sure that everything would be okay. \n\nKendra got to school, ran to her teacher and told him what happened that morning. The teacher smiled and told her not to worry, Quinton's mother had called and he was going to the dentist and would be at school after lunch and that she would see him at the bus stop like normal tomorrow.", + "questions": [ + "Where do Quinton and Kendra travel to and from every day?", + "Does Quinton live further from the bus stop?", + "What do they do every afternoon after school?", + "Does Quinton eat cheese?", + "Do they play before their homework?", + "What does Kendra not want to miss?", + "When is that?", + "What happened when Kendra knocked on Quinton's door?", + "Did she see the car?", + "Did she miss the bus?", + "What did the bus driver see?", + "Did Kendra tell him why?", + "What did he say?", + "When she got to school, who did she tell?", + "Did he frown?", + "Who had called?", + "Where did he go?", + "When would he be back?" + ], + "answers": { + "input_text": [ + "school", + "No", + "go to Quentin's house", + "No", + "No", + "story time", + "right before bedtime", + "no one answered", + "No", + "No", + "that she was upset", + "yes", + "everything would be okay", + "her teacher", + "No", + "Quinton's mother", + "to the dentist", + "yes" + ], + "answer_start": [ + 0, + 56, + 190, + 343, + 414, + 565, + 601, + 888, + 906, + 1098, + 1179, + 1265, + 1296, + 1382, + 1436, + 1481, + 1514, + 1546 + ], + "answer_end": [ + 54, + 107, + 341, + 367, + 497, + 600, + 631, + 903, + 965, + 1177, + 1216, + 1291, + 1350, + 1434, + 1454, + 1509, + 1541, + 1576 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Staten Island is one of the five boroughs of New York City in the U.S. state of New York. In the southwest of the city, Staten Island is the southernmost part of both the city and state of New York, with Conference House Park at the southern tip of the island and the state. The borough is separated from New Jersey by the Arthur Kill and the Kill Van Kull, and from the rest of New York by New York Bay. With a 2016 Census-estimated population of 476,015, Staten Island is the least populated of the boroughs but is the third-largest in area at . Staten Island is the only borough of New York with a non-Hispanic White majority. The borough is coextensive with Richmond County, and until 1975 was the Borough of Richmond. Its flag was later changed to reflect this. Staten Island has been sometimes called \"the forgotten borough\" by inhabitants who feel neglected by the city government. \n\nThe North Shore—especially the neighborhoods of St. George, Tompkinsville, Clifton, and Stapleton—is the most urban part of the island; it contains the designated St. George Historic District and the St. Paul's Avenue-Stapleton Heights Historic District, which feature large Victorian houses. The East Shore is home to the F.D.R. Boardwalk, the fourth-longest in the world. The South Shore, site of the 17th-century Dutch and French Huguenot settlement, developed rapidly beginning in the 1960s and 1970s and is now mostly suburban in character. The West Shore is the least populated and most industrial part of the island., \n\n Answer the question: How many burroughs are there?", + "output": "five", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "wikipedia", + "story": "Staten Island is one of the five boroughs of New York City in the U.S. state of New York. In the southwest of the city, Staten Island is the southernmost part of both the city and state of New York, with Conference House Park at the southern tip of the island and the state. The borough is separated from New Jersey by the Arthur Kill and the Kill Van Kull, and from the rest of New York by New York Bay. With a 2016 Census-estimated population of 476,015, Staten Island is the least populated of the boroughs but is the third-largest in area at . Staten Island is the only borough of New York with a non-Hispanic White majority. The borough is coextensive with Richmond County, and until 1975 was the Borough of Richmond. Its flag was later changed to reflect this. Staten Island has been sometimes called \"the forgotten borough\" by inhabitants who feel neglected by the city government. \n\nThe North Shore—especially the neighborhoods of St. George, Tompkinsville, Clifton, and Stapleton—is the most urban part of the island; it contains the designated St. George Historic District and the St. Paul's Avenue-Stapleton Heights Historic District, which feature large Victorian houses. The East Shore is home to the F.D.R. Boardwalk, the fourth-longest in the world. The South Shore, site of the 17th-century Dutch and French Huguenot settlement, developed rapidly beginning in the 1960s and 1970s and is now mostly suburban in character. The West Shore is the least populated and most industrial part of the island.", + "questions": [ + "How many burroughs are there?", + "in what city?", + "and state?", + "Is staten island one?", + "Where is it?", + "What separates it from new jersey?", + "What is its population?", + "Is it the most populated?", + "what ethnicity is the majority?", + "What is it sometimes called?", + "why?", + "what is the most urban part?", + "which neighborhoods?" + ], + "answers": { + "input_text": [ + "five", + "New York City", + "New York", + "Yes", + "In the southwest of the city", + "Arthur Kill and the Kill Van Kull", + "476,015", + "no", + "non-Hispanic White", + "the forgotten borough", + "because the inhabitants feel neglected by the city government", + "North Shore", + "St. George, Tompkinsville, Clifton, and Stapleton" + ], + "answer_start": [ + 28, + 45, + 80, + 17, + 88, + 322, + 448, + 477, + 600, + 808, + 831, + 894, + 939 + ], + "answer_end": [ + 32, + 58, + 88, + 21, + 119, + 356, + 455, + 493, + 620, + 829, + 890, + 906, + 988 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Staten Island is one of the five boroughs of New York City in the U.S. state of New York. In the southwest of the city, Staten Island is the southernmost part of both the city and state of New York, with Conference House Park at the southern tip of the island and the state. The borough is separated from New Jersey by the Arthur Kill and the Kill Van Kull, and from the rest of New York by New York Bay. With a 2016 Census-estimated population of 476,015, Staten Island is the least populated of the boroughs but is the third-largest in area at . Staten Island is the only borough of New York with a non-Hispanic White majority. The borough is coextensive with Richmond County, and until 1975 was the Borough of Richmond. Its flag was later changed to reflect this. Staten Island has been sometimes called \"the forgotten borough\" by inhabitants who feel neglected by the city government. \n\nThe North Shore—especially the neighborhoods of St. George, Tompkinsville, Clifton, and Stapleton—is the most urban part of the island; it contains the designated St. George Historic District and the St. Paul's Avenue-Stapleton Heights Historic District, which feature large Victorian houses. The East Shore is home to the F.D.R. Boardwalk, the fourth-longest in the world. The South Shore, site of the 17th-century Dutch and French Huguenot settlement, developed rapidly beginning in the 1960s and 1970s and is now mostly suburban in character. The West Shore is the least populated and most industrial part of the island., \n\n Answer the question: How many burroughs are there?", + "output": "New York City", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "wikipedia", + "story": "Staten Island is one of the five boroughs of New York City in the U.S. state of New York. In the southwest of the city, Staten Island is the southernmost part of both the city and state of New York, with Conference House Park at the southern tip of the island and the state. The borough is separated from New Jersey by the Arthur Kill and the Kill Van Kull, and from the rest of New York by New York Bay. With a 2016 Census-estimated population of 476,015, Staten Island is the least populated of the boroughs but is the third-largest in area at . Staten Island is the only borough of New York with a non-Hispanic White majority. The borough is coextensive with Richmond County, and until 1975 was the Borough of Richmond. Its flag was later changed to reflect this. Staten Island has been sometimes called \"the forgotten borough\" by inhabitants who feel neglected by the city government. \n\nThe North Shore—especially the neighborhoods of St. George, Tompkinsville, Clifton, and Stapleton—is the most urban part of the island; it contains the designated St. George Historic District and the St. Paul's Avenue-Stapleton Heights Historic District, which feature large Victorian houses. The East Shore is home to the F.D.R. Boardwalk, the fourth-longest in the world. The South Shore, site of the 17th-century Dutch and French Huguenot settlement, developed rapidly beginning in the 1960s and 1970s and is now mostly suburban in character. The West Shore is the least populated and most industrial part of the island.", + "questions": [ + "How many burroughs are there?", + "in what city?", + "and state?", + "Is staten island one?", + "Where is it?", + "What separates it from new jersey?", + "What is its population?", + "Is it the most populated?", + "what ethnicity is the majority?", + "What is it sometimes called?", + "why?", + "what is the most urban part?", + "which neighborhoods?" + ], + "answers": { + "input_text": [ + "five", + "New York City", + "New York", + "Yes", + "In the southwest of the city", + "Arthur Kill and the Kill Van Kull", + "476,015", + "no", + "non-Hispanic White", + "the forgotten borough", + "because the inhabitants feel neglected by the city government", + "North Shore", + "St. George, Tompkinsville, Clifton, and Stapleton" + ], + "answer_start": [ + 28, + 45, + 80, + 17, + 88, + 322, + 448, + 477, + 600, + 808, + 831, + 894, + 939 + ], + "answer_end": [ + 32, + 58, + 88, + 21, + 119, + 356, + 455, + 493, + 620, + 829, + 890, + 906, + 988 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Thunder was coming when Reginald Eppes woke up at five in the morning. He checked the weather forecast. A violent storm was coming ,but it sounded like his small town wouldn't be hit too hard. But Eppes, a firefighter, had clearly known the power of these huge storms from experiences. \"Do you know where the flashlights are?\" he asked his wife. Danielle. Just then, thunder was all-around them. The moment he turned the flashlight on. The house lights went off. A second later, the kitchen windows were broken. Eppes and Danielle ran to their boys who were still sleeping in their bedroom. \n\n\"Get up, get up, R.J.! \" Eppes shouted, waving his flashlight. The sleepy boy moved to the edge of the bed. Eppes held out his arms and ordered his son to jump. He was too late. The roof was torn down. R.J. was buried ,under the pieces. \n\n\"I've lost him,\" Eppes thought. Quickly, he hurried to Joel to shield him. Glass, wood, and plaster ( ) hit them. Then something huge, heavy-maybe the washing machine-knocked into him. He hurt his arms, but he still held the flashlight in one hand. \n\nAfter a long period, the wind began to die down. Eppes found himself standing in the ruins of his home. Darkness lay all about him. Then he thought he saw a shape moving straight toward him. It was R.J., guided home by the light of his father's flashlight. \n\nAt the hospital later, R.J. described what had happened to him. \"I rushed out when the wall started moving I was scared. My mom and dad were gone. Pieces of glass hit my back, and something hit my neck really hard. \" \n\nR.J. had been raised up into the air by the wind and dropped back to the ground. Amazingly, R.J. was not hurt badly. Of all his family, Eppes was hurt most seriously., \n\n Answer the question: When did Reginald Eppes wake up?", + "output": "Five in the morning", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "Thunder was coming when Reginald Eppes woke up at five in the morning. He checked the weather forecast. A violent storm was coming ,but it sounded like his small town wouldn't be hit too hard. But Eppes, a firefighter, had clearly known the power of these huge storms from experiences. \"Do you know where the flashlights are?\" he asked his wife. Danielle. Just then, thunder was all-around them. The moment he turned the flashlight on. The house lights went off. A second later, the kitchen windows were broken. Eppes and Danielle ran to their boys who were still sleeping in their bedroom. \n\n\"Get up, get up, R.J.! \" Eppes shouted, waving his flashlight. The sleepy boy moved to the edge of the bed. Eppes held out his arms and ordered his son to jump. He was too late. The roof was torn down. R.J. was buried ,under the pieces. \n\n\"I've lost him,\" Eppes thought. Quickly, he hurried to Joel to shield him. Glass, wood, and plaster ( ) hit them. Then something huge, heavy-maybe the washing machine-knocked into him. He hurt his arms, but he still held the flashlight in one hand. \n\nAfter a long period, the wind began to die down. Eppes found himself standing in the ruins of his home. Darkness lay all about him. Then he thought he saw a shape moving straight toward him. It was R.J., guided home by the light of his father's flashlight. \n\nAt the hospital later, R.J. described what had happened to him. \"I rushed out when the wall started moving I was scared. My mom and dad were gone. Pieces of glass hit my back, and something hit my neck really hard. \" \n\nR.J. had been raised up into the air by the wind and dropped back to the ground. Amazingly, R.J. was not hurt badly. Of all his family, Eppes was hurt most seriously.", + "questions": [ + "When did Reginald Eppes wake up?", + "What was the first thing he checked?", + "Was there a storm headed that way?", + "What was his profession?", + "Did the house lights go out?", + "What device did they use when the power went out?", + "Who was buried under the roof?", + "Who did he need to shield?", + "What were they hit by?", + "Was RJ badly hurt?", + "Who was hurt the worst?", + "What guided RJ home?" + ], + "answers": { + "input_text": [ + "Five in the morning", + "Weather forecast", + "Yes", + "Firefighter", + "Yes", + "Flashlight", + "R.J.", + "Joel", + "Glass, wood, plaster, and maybe the washing machine", + "No", + "Eppes", + "The flashlight" + ], + "answer_start": [ + 24, + 71, + 104, + 193, + 396, + 396, + 771, + 864, + 907, + 1641, + 1696, + 1274 + ], + "answer_end": [ + 69, + 102, + 130, + 217, + 461, + 461, + 829, + 906, + 1016, + 1677, + 1726, + 1339 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Thunder was coming when Reginald Eppes woke up at five in the morning. He checked the weather forecast. A violent storm was coming ,but it sounded like his small town wouldn't be hit too hard. But Eppes, a firefighter, had clearly known the power of these huge storms from experiences. \"Do you know where the flashlights are?\" he asked his wife. Danielle. Just then, thunder was all-around them. The moment he turned the flashlight on. The house lights went off. A second later, the kitchen windows were broken. Eppes and Danielle ran to their boys who were still sleeping in their bedroom. \n\n\"Get up, get up, R.J.! \" Eppes shouted, waving his flashlight. The sleepy boy moved to the edge of the bed. Eppes held out his arms and ordered his son to jump. He was too late. The roof was torn down. R.J. was buried ,under the pieces. \n\n\"I've lost him,\" Eppes thought. Quickly, he hurried to Joel to shield him. Glass, wood, and plaster ( ) hit them. Then something huge, heavy-maybe the washing machine-knocked into him. He hurt his arms, but he still held the flashlight in one hand. \n\nAfter a long period, the wind began to die down. Eppes found himself standing in the ruins of his home. Darkness lay all about him. Then he thought he saw a shape moving straight toward him. It was R.J., guided home by the light of his father's flashlight. \n\nAt the hospital later, R.J. described what had happened to him. \"I rushed out when the wall started moving I was scared. My mom and dad were gone. Pieces of glass hit my back, and something hit my neck really hard. \" \n\nR.J. had been raised up into the air by the wind and dropped back to the ground. Amazingly, R.J. was not hurt badly. Of all his family, Eppes was hurt most seriously., \n\n Answer the question: When did Reginald Eppes wake up?", + "output": "Weather forecast", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "Thunder was coming when Reginald Eppes woke up at five in the morning. He checked the weather forecast. A violent storm was coming ,but it sounded like his small town wouldn't be hit too hard. But Eppes, a firefighter, had clearly known the power of these huge storms from experiences. \"Do you know where the flashlights are?\" he asked his wife. Danielle. Just then, thunder was all-around them. The moment he turned the flashlight on. The house lights went off. A second later, the kitchen windows were broken. Eppes and Danielle ran to their boys who were still sleeping in their bedroom. \n\n\"Get up, get up, R.J.! \" Eppes shouted, waving his flashlight. The sleepy boy moved to the edge of the bed. Eppes held out his arms and ordered his son to jump. He was too late. The roof was torn down. R.J. was buried ,under the pieces. \n\n\"I've lost him,\" Eppes thought. Quickly, he hurried to Joel to shield him. Glass, wood, and plaster ( ) hit them. Then something huge, heavy-maybe the washing machine-knocked into him. He hurt his arms, but he still held the flashlight in one hand. \n\nAfter a long period, the wind began to die down. Eppes found himself standing in the ruins of his home. Darkness lay all about him. Then he thought he saw a shape moving straight toward him. It was R.J., guided home by the light of his father's flashlight. \n\nAt the hospital later, R.J. described what had happened to him. \"I rushed out when the wall started moving I was scared. My mom and dad were gone. Pieces of glass hit my back, and something hit my neck really hard. \" \n\nR.J. had been raised up into the air by the wind and dropped back to the ground. Amazingly, R.J. was not hurt badly. Of all his family, Eppes was hurt most seriously.", + "questions": [ + "When did Reginald Eppes wake up?", + "What was the first thing he checked?", + "Was there a storm headed that way?", + "What was his profession?", + "Did the house lights go out?", + "What device did they use when the power went out?", + "Who was buried under the roof?", + "Who did he need to shield?", + "What were they hit by?", + "Was RJ badly hurt?", + "Who was hurt the worst?", + "What guided RJ home?" + ], + "answers": { + "input_text": [ + "Five in the morning", + "Weather forecast", + "Yes", + "Firefighter", + "Yes", + "Flashlight", + "R.J.", + "Joel", + "Glass, wood, plaster, and maybe the washing machine", + "No", + "Eppes", + "The flashlight" + ], + "answer_start": [ + 24, + 71, + 104, + 193, + 396, + 396, + 771, + 864, + 907, + 1641, + 1696, + 1274 + ], + "answer_end": [ + 69, + 102, + 130, + 217, + 461, + 461, + 829, + 906, + 1016, + 1677, + 1726, + 1339 + ] + } + } + }, + { + "input": { + "input": "Given the following context: (CNN) -- FBI agents on Friday night searched the Maryland home of the suspect in the recent disappearance of an American woman in Aruba, an agent said. \n\nThe search is occurring in the Gaithersburg residence of Gary Giordano, who is currently being held in an Aruban jail, FBI Special Agent Rich Wolf told CNN. \n\nAgents, wearing vests that said FBI and carrying empty cardboard and plastic boxes, arrived about 8:40 p.m. Friday. About 15 unmarked cars could be seen on the street, as well as a Montgomery County police vehicle. \n\nSupervisory Special Agent Philip Celestini, who was at the residence, declined to comment further on the search, citing the active investigation. \n\nAruban Solicitor General Taco Stein said earlier Friday that the suspect will appear in court Monday, where an investigating magistrate could order him held for at least eight more days, order him to remain on the island or release him outright due to a lack of evidence. \n\nGiordano was arrested by Aruban police on August 5, three days after Robyn Gardner was last seen near Baby Beach on the western tip of the Caribbean island. \n\nGiordano told authorities that he had been snorkeling with Gardner when he signaled to her to swim back, according to a statement. When he reached the beach, Gardner was nowhere to be found, Giordano allegedly said. \n\nThe area that Giordano led authorities to is a rocky, unsightly location that locals say is not a popular snorkeling spot. \n\nAlthough prosecutors have continued to identify the 50-year-old American man by his initials, GVG, they also released a photo of a man who appears to be Giordano. His attorney, Michael Lopez, also has said that his client is being held as a suspect in Gardner's death. Lopez has not returned telephone calls seeking comment. , \n\n Answer the question: Whose house was searched?", + "output": "Gary Giordano", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "(CNN) -- FBI agents on Friday night searched the Maryland home of the suspect in the recent disappearance of an American woman in Aruba, an agent said. \n\nThe search is occurring in the Gaithersburg residence of Gary Giordano, who is currently being held in an Aruban jail, FBI Special Agent Rich Wolf told CNN. \n\nAgents, wearing vests that said FBI and carrying empty cardboard and plastic boxes, arrived about 8:40 p.m. Friday. About 15 unmarked cars could be seen on the street, as well as a Montgomery County police vehicle. \n\nSupervisory Special Agent Philip Celestini, who was at the residence, declined to comment further on the search, citing the active investigation. \n\nAruban Solicitor General Taco Stein said earlier Friday that the suspect will appear in court Monday, where an investigating magistrate could order him held for at least eight more days, order him to remain on the island or release him outright due to a lack of evidence. \n\nGiordano was arrested by Aruban police on August 5, three days after Robyn Gardner was last seen near Baby Beach on the western tip of the Caribbean island. \n\nGiordano told authorities that he had been snorkeling with Gardner when he signaled to her to swim back, according to a statement. When he reached the beach, Gardner was nowhere to be found, Giordano allegedly said. \n\nThe area that Giordano led authorities to is a rocky, unsightly location that locals say is not a popular snorkeling spot. \n\nAlthough prosecutors have continued to identify the 50-year-old American man by his initials, GVG, they also released a photo of a man who appears to be Giordano. His attorney, Michael Lopez, also has said that his client is being held as a suspect in Gardner's death. Lopez has not returned telephone calls seeking comment. ", + "questions": [ + "Whose house was searched?", + "In what city?", + "County?", + "State?", + "Where is he now?", + "Why?", + "What organization is doing the search?", + "How many unmarked vehicles were there?", + "Who spoke for the Aruban government?", + "When will Giordano go to court?", + "How many days could he be held?", + "Who went missing?", + "Where?", + "What was she doing?", + "With whom?", + "Did she return safely?", + "Is the beach a good snorkeling place?", + "How old is he?", + "When was he arrested?", + "How many were snorkeling?" + ], + "answers": { + "input_text": [ + "Gary Giordano", + "Gaithersburg", + "Montgomery County", + "Maryland", + "Aruban jail", + "suspect in the recent disappearance of an American woman", + "FBI", + "15", + "Aruban Solicitor General Taco Stein", + "Monday", + "at least eight more days", + "Robyn Gardne", + "ast seen near Baby Beach", + "snorkeling", + "Giordano", + "No, Gardner was nowhere to be found", + "locals say is not a popular snorkeling spot.", + "50", + "August 5", + "2, Giordano told authorities that he had been snorkeling with Gardner" + ], + "answer_start": [ + 211, + 184, + 494, + 48, + 260, + 70, + 345, + 435, + 678, + 772, + 839, + 1021, + 1040, + 1154, + 1111, + 1269, + 1407, + 1506, + 993, + 1111 + ], + "answer_end": [ + 224, + 197, + 511, + 57, + 271, + 126, + 348, + 437, + 713, + 778, + 863, + 1033, + 1064, + 1164, + 1119, + 1300, + 1452, + 1508, + 1002, + 1177 + ] + } + } + }, + { + "input": { + "input": "Given the following context: (CNN) -- FBI agents on Friday night searched the Maryland home of the suspect in the recent disappearance of an American woman in Aruba, an agent said. \n\nThe search is occurring in the Gaithersburg residence of Gary Giordano, who is currently being held in an Aruban jail, FBI Special Agent Rich Wolf told CNN. \n\nAgents, wearing vests that said FBI and carrying empty cardboard and plastic boxes, arrived about 8:40 p.m. Friday. About 15 unmarked cars could be seen on the street, as well as a Montgomery County police vehicle. \n\nSupervisory Special Agent Philip Celestini, who was at the residence, declined to comment further on the search, citing the active investigation. \n\nAruban Solicitor General Taco Stein said earlier Friday that the suspect will appear in court Monday, where an investigating magistrate could order him held for at least eight more days, order him to remain on the island or release him outright due to a lack of evidence. \n\nGiordano was arrested by Aruban police on August 5, three days after Robyn Gardner was last seen near Baby Beach on the western tip of the Caribbean island. \n\nGiordano told authorities that he had been snorkeling with Gardner when he signaled to her to swim back, according to a statement. When he reached the beach, Gardner was nowhere to be found, Giordano allegedly said. \n\nThe area that Giordano led authorities to is a rocky, unsightly location that locals say is not a popular snorkeling spot. \n\nAlthough prosecutors have continued to identify the 50-year-old American man by his initials, GVG, they also released a photo of a man who appears to be Giordano. His attorney, Michael Lopez, also has said that his client is being held as a suspect in Gardner's death. Lopez has not returned telephone calls seeking comment. , \n\n Answer the question: Whose house was searched?", + "output": "Gaithersburg", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "(CNN) -- FBI agents on Friday night searched the Maryland home of the suspect in the recent disappearance of an American woman in Aruba, an agent said. \n\nThe search is occurring in the Gaithersburg residence of Gary Giordano, who is currently being held in an Aruban jail, FBI Special Agent Rich Wolf told CNN. \n\nAgents, wearing vests that said FBI and carrying empty cardboard and plastic boxes, arrived about 8:40 p.m. Friday. About 15 unmarked cars could be seen on the street, as well as a Montgomery County police vehicle. \n\nSupervisory Special Agent Philip Celestini, who was at the residence, declined to comment further on the search, citing the active investigation. \n\nAruban Solicitor General Taco Stein said earlier Friday that the suspect will appear in court Monday, where an investigating magistrate could order him held for at least eight more days, order him to remain on the island or release him outright due to a lack of evidence. \n\nGiordano was arrested by Aruban police on August 5, three days after Robyn Gardner was last seen near Baby Beach on the western tip of the Caribbean island. \n\nGiordano told authorities that he had been snorkeling with Gardner when he signaled to her to swim back, according to a statement. When he reached the beach, Gardner was nowhere to be found, Giordano allegedly said. \n\nThe area that Giordano led authorities to is a rocky, unsightly location that locals say is not a popular snorkeling spot. \n\nAlthough prosecutors have continued to identify the 50-year-old American man by his initials, GVG, they also released a photo of a man who appears to be Giordano. His attorney, Michael Lopez, also has said that his client is being held as a suspect in Gardner's death. Lopez has not returned telephone calls seeking comment. ", + "questions": [ + "Whose house was searched?", + "In what city?", + "County?", + "State?", + "Where is he now?", + "Why?", + "What organization is doing the search?", + "How many unmarked vehicles were there?", + "Who spoke for the Aruban government?", + "When will Giordano go to court?", + "How many days could he be held?", + "Who went missing?", + "Where?", + "What was she doing?", + "With whom?", + "Did she return safely?", + "Is the beach a good snorkeling place?", + "How old is he?", + "When was he arrested?", + "How many were snorkeling?" + ], + "answers": { + "input_text": [ + "Gary Giordano", + "Gaithersburg", + "Montgomery County", + "Maryland", + "Aruban jail", + "suspect in the recent disappearance of an American woman", + "FBI", + "15", + "Aruban Solicitor General Taco Stein", + "Monday", + "at least eight more days", + "Robyn Gardne", + "ast seen near Baby Beach", + "snorkeling", + "Giordano", + "No, Gardner was nowhere to be found", + "locals say is not a popular snorkeling spot.", + "50", + "August 5", + "2, Giordano told authorities that he had been snorkeling with Gardner" + ], + "answer_start": [ + 211, + 184, + 494, + 48, + 260, + 70, + 345, + 435, + 678, + 772, + 839, + 1021, + 1040, + 1154, + 1111, + 1269, + 1407, + 1506, + 993, + 1111 + ], + "answer_end": [ + 224, + 197, + 511, + 57, + 271, + 126, + 348, + 437, + 713, + 778, + 863, + 1033, + 1064, + 1164, + 1119, + 1300, + 1452, + 1508, + 1002, + 1177 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Which country grows the most tea? The answer is India. It grows three times as much as China. Which country drinks the most tea? It's neither China nor Japan. It's Great Britain. In the wild, tea plants may be 30 feet tall. But a plant grown for market is pruned. Pruning keeps the plant only three or four feet tall. This is an easy height for tea picking. Only the two top leaves and bud of each new shoot are picked. So to make money, tea plantations must be huge. In general, there are two kinds of tea. Black tea and green tea. Black tea is fermented. In the process, the tea loses nearly all of its healthy qualities. Green tea is steamed right after the leaves are picked. Green tea _ its healthy qualities. For example, it may prevent heart disease. How did we get tea bag? The answer: by accident. Tea merchants used to send samples in tin boxes. This was costly. One merchant thought of a cheaper way. He sent samples in small silk bags. Customers would cut open the bag. They would brew the leaves as usual. One customer put the bag into a pot. Then he just poured hot water over it. And the tea bag was born. Shen Nong was the first to drink tea. (Shen was a Chinese emperor.) This was about 2737 B.C. Shen had bad digestion. So he drank several cups of hot water daily. One day something happened. Leaves from a wild tea tree fell into the hot water pot. The next cup was poured. The water was now colored. Shen sipped it. He liked it. He drank it all. Shen was proud of his new drink. He served it to his guests. Word spread. People thought this way. Tea is good enough for the Emperor. So it must be good enough for the people. Tea became the drink of China., \n\n Answer the question: Which country consumes tea the most?", + "output": "Great Britain", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "Which country grows the most tea? The answer is India. It grows three times as much as China. Which country drinks the most tea? It's neither China nor Japan. It's Great Britain. In the wild, tea plants may be 30 feet tall. But a plant grown for market is pruned. Pruning keeps the plant only three or four feet tall. This is an easy height for tea picking. Only the two top leaves and bud of each new shoot are picked. So to make money, tea plantations must be huge. In general, there are two kinds of tea. Black tea and green tea. Black tea is fermented. In the process, the tea loses nearly all of its healthy qualities. Green tea is steamed right after the leaves are picked. Green tea _ its healthy qualities. For example, it may prevent heart disease. How did we get tea bag? The answer: by accident. Tea merchants used to send samples in tin boxes. This was costly. One merchant thought of a cheaper way. He sent samples in small silk bags. Customers would cut open the bag. They would brew the leaves as usual. One customer put the bag into a pot. Then he just poured hot water over it. And the tea bag was born. Shen Nong was the first to drink tea. (Shen was a Chinese emperor.) This was about 2737 B.C. Shen had bad digestion. So he drank several cups of hot water daily. One day something happened. Leaves from a wild tea tree fell into the hot water pot. The next cup was poured. The water was now colored. Shen sipped it. He liked it. He drank it all. Shen was proud of his new drink. He served it to his guests. Word spread. People thought this way. Tea is good enough for the Emperor. So it must be good enough for the people. Tea became the drink of China.", + "questions": [ + "Which country consumes tea the most?", + "Which country grows it the most?", + "How tall is the tea plant?", + "What did they do to green tea after picking it?", + "What good thing do the tea do to the health?", + "How was the tea created?", + "Who took the tea first?", + "When did he take it?", + "Was he happy with it?", + "How did his body react to the tea?" + ], + "answers": { + "input_text": [ + "Great Britain", + "India.", + "may be 30 feet tall", + "prune it", + "may prevent heart disease.", + "by accident", + "Shen Nong", + "about 2737 B.C", + "yes", + "unknown" + ], + "answer_start": [ + 159, + 34, + 196, + 224, + 731, + 794, + 1120, + 1190, + 1436, + -1 + ], + "answer_end": [ + 177, + 54, + 222, + 264, + 757, + 805, + 1158, + 1212, + 1448, + -1 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Which country grows the most tea? The answer is India. It grows three times as much as China. Which country drinks the most tea? It's neither China nor Japan. It's Great Britain. In the wild, tea plants may be 30 feet tall. But a plant grown for market is pruned. Pruning keeps the plant only three or four feet tall. This is an easy height for tea picking. Only the two top leaves and bud of each new shoot are picked. So to make money, tea plantations must be huge. In general, there are two kinds of tea. Black tea and green tea. Black tea is fermented. In the process, the tea loses nearly all of its healthy qualities. Green tea is steamed right after the leaves are picked. Green tea _ its healthy qualities. For example, it may prevent heart disease. How did we get tea bag? The answer: by accident. Tea merchants used to send samples in tin boxes. This was costly. One merchant thought of a cheaper way. He sent samples in small silk bags. Customers would cut open the bag. They would brew the leaves as usual. One customer put the bag into a pot. Then he just poured hot water over it. And the tea bag was born. Shen Nong was the first to drink tea. (Shen was a Chinese emperor.) This was about 2737 B.C. Shen had bad digestion. So he drank several cups of hot water daily. One day something happened. Leaves from a wild tea tree fell into the hot water pot. The next cup was poured. The water was now colored. Shen sipped it. He liked it. He drank it all. Shen was proud of his new drink. He served it to his guests. Word spread. People thought this way. Tea is good enough for the Emperor. So it must be good enough for the people. Tea became the drink of China., \n\n Answer the question: Which country consumes tea the most?", + "output": "India.", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "Which country grows the most tea? The answer is India. It grows three times as much as China. Which country drinks the most tea? It's neither China nor Japan. It's Great Britain. In the wild, tea plants may be 30 feet tall. But a plant grown for market is pruned. Pruning keeps the plant only three or four feet tall. This is an easy height for tea picking. Only the two top leaves and bud of each new shoot are picked. So to make money, tea plantations must be huge. In general, there are two kinds of tea. Black tea and green tea. Black tea is fermented. In the process, the tea loses nearly all of its healthy qualities. Green tea is steamed right after the leaves are picked. Green tea _ its healthy qualities. For example, it may prevent heart disease. How did we get tea bag? The answer: by accident. Tea merchants used to send samples in tin boxes. This was costly. One merchant thought of a cheaper way. He sent samples in small silk bags. Customers would cut open the bag. They would brew the leaves as usual. One customer put the bag into a pot. Then he just poured hot water over it. And the tea bag was born. Shen Nong was the first to drink tea. (Shen was a Chinese emperor.) This was about 2737 B.C. Shen had bad digestion. So he drank several cups of hot water daily. One day something happened. Leaves from a wild tea tree fell into the hot water pot. The next cup was poured. The water was now colored. Shen sipped it. He liked it. He drank it all. Shen was proud of his new drink. He served it to his guests. Word spread. People thought this way. Tea is good enough for the Emperor. So it must be good enough for the people. Tea became the drink of China.", + "questions": [ + "Which country consumes tea the most?", + "Which country grows it the most?", + "How tall is the tea plant?", + "What did they do to green tea after picking it?", + "What good thing do the tea do to the health?", + "How was the tea created?", + "Who took the tea first?", + "When did he take it?", + "Was he happy with it?", + "How did his body react to the tea?" + ], + "answers": { + "input_text": [ + "Great Britain", + "India.", + "may be 30 feet tall", + "prune it", + "may prevent heart disease.", + "by accident", + "Shen Nong", + "about 2737 B.C", + "yes", + "unknown" + ], + "answer_start": [ + 159, + 34, + 196, + 224, + 731, + 794, + 1120, + 1190, + 1436, + -1 + ], + "answer_end": [ + 177, + 54, + 222, + 264, + 757, + 805, + 1158, + 1212, + 1448, + -1 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Kabul, Afghanistan (CNN) -- The German news outlet Der Spiegel has published photographs of what appear to be two U.S. soldiers in Afghanistan posing over the bodies of dead Afghans -- images which threaten to further complicate the American military effort there. \n\nTwo images show the soldiers kneeling by a bloody body sprawled over a patch of sand and grass. A third shows what appears to be two bodies propped up, back to back, against a post in front of a military vehicle. \n\nDer Spiegel identifies the soldiers as Spc. Jeremy Morlock and Pfc. Andrew Holmes, who are both facing charges relating to the wrongful deaths of Afghan civilians. \n\nSpecifically, Holmes is charged with the premeditated deaths of three civilians, possessing a dismembered human finger, wrongfully possessing photographs of human casualties, and smoking hashish. \n\nHe is also accused of conspiring with Morlock to shoot at a civilian and then toss a grenade so it would look like the soldiers were under attack. \n\nMorlock is charged with three counts of murder. He is accused of killing one Afghan civilian in January 2010 with a grenade and rifle; killing another in May 2010 in a similar manner; and shooting a third to death in February 2010. \n\nU.S. military rules also prohibit \"taking or retaining individual souvenirs or trophies,\" which the photographs may be construed as. \n\nThe trial for the two soldiers is being conducted at Joint Base Lewis-McChord in Washington. Morlock's court martial is slated to begin Wednesday, while the start date for Holmes' court martial has not been publicly announced. , \n\n Answer the question: What news agency showed photos of American soldiers?", + "output": "Der Spiegel", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "Kabul, Afghanistan (CNN) -- The German news outlet Der Spiegel has published photographs of what appear to be two U.S. soldiers in Afghanistan posing over the bodies of dead Afghans -- images which threaten to further complicate the American military effort there. \n\nTwo images show the soldiers kneeling by a bloody body sprawled over a patch of sand and grass. A third shows what appears to be two bodies propped up, back to back, against a post in front of a military vehicle. \n\nDer Spiegel identifies the soldiers as Spc. Jeremy Morlock and Pfc. Andrew Holmes, who are both facing charges relating to the wrongful deaths of Afghan civilians. \n\nSpecifically, Holmes is charged with the premeditated deaths of three civilians, possessing a dismembered human finger, wrongfully possessing photographs of human casualties, and smoking hashish. \n\nHe is also accused of conspiring with Morlock to shoot at a civilian and then toss a grenade so it would look like the soldiers were under attack. \n\nMorlock is charged with three counts of murder. He is accused of killing one Afghan civilian in January 2010 with a grenade and rifle; killing another in May 2010 in a similar manner; and shooting a third to death in February 2010. \n\nU.S. military rules also prohibit \"taking or retaining individual souvenirs or trophies,\" which the photographs may be construed as. \n\nThe trial for the two soldiers is being conducted at Joint Base Lewis-McChord in Washington. Morlock's court martial is slated to begin Wednesday, while the start date for Holmes' court martial has not been publicly announced. ", + "questions": [ + "What news agency showed photos of American soldiers?", + "From what country?", + "What were the soldiers doing in the photos?", + "What was the condition of the body?", + "What does another photo show?", + "Near what?", + "What could the photos be construed as?", + "What is the name of one of the soldiers?", + "The other?", + "What is Holmes being charged with?" + ], + "answers": { + "input_text": [ + "Der Spiegel", + "Germany", + "posing over the bodies of dead Afghans", + "bloody", + "propped up, back to back", + "military vehicle.", + "taking or retaining individual souvenirs or trophies", + "Jeremy Morlock", + "Pfc. Andrew Holmes", + "Holmes is charged with the premeditated deaths of three civilians" + ], + "answer_start": [ + 28, + 28, + 77, + 267, + 363, + 362, + 1229, + 482, + 545, + 662 + ], + "answer_end": [ + 62, + 62, + 181, + 361, + 430, + 481, + 1362, + 541, + 563, + 727 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Kabul, Afghanistan (CNN) -- The German news outlet Der Spiegel has published photographs of what appear to be two U.S. soldiers in Afghanistan posing over the bodies of dead Afghans -- images which threaten to further complicate the American military effort there. \n\nTwo images show the soldiers kneeling by a bloody body sprawled over a patch of sand and grass. A third shows what appears to be two bodies propped up, back to back, against a post in front of a military vehicle. \n\nDer Spiegel identifies the soldiers as Spc. Jeremy Morlock and Pfc. Andrew Holmes, who are both facing charges relating to the wrongful deaths of Afghan civilians. \n\nSpecifically, Holmes is charged with the premeditated deaths of three civilians, possessing a dismembered human finger, wrongfully possessing photographs of human casualties, and smoking hashish. \n\nHe is also accused of conspiring with Morlock to shoot at a civilian and then toss a grenade so it would look like the soldiers were under attack. \n\nMorlock is charged with three counts of murder. He is accused of killing one Afghan civilian in January 2010 with a grenade and rifle; killing another in May 2010 in a similar manner; and shooting a third to death in February 2010. \n\nU.S. military rules also prohibit \"taking or retaining individual souvenirs or trophies,\" which the photographs may be construed as. \n\nThe trial for the two soldiers is being conducted at Joint Base Lewis-McChord in Washington. Morlock's court martial is slated to begin Wednesday, while the start date for Holmes' court martial has not been publicly announced. , \n\n Answer the question: What news agency showed photos of American soldiers?", + "output": "Germany", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "Kabul, Afghanistan (CNN) -- The German news outlet Der Spiegel has published photographs of what appear to be two U.S. soldiers in Afghanistan posing over the bodies of dead Afghans -- images which threaten to further complicate the American military effort there. \n\nTwo images show the soldiers kneeling by a bloody body sprawled over a patch of sand and grass. A third shows what appears to be two bodies propped up, back to back, against a post in front of a military vehicle. \n\nDer Spiegel identifies the soldiers as Spc. Jeremy Morlock and Pfc. Andrew Holmes, who are both facing charges relating to the wrongful deaths of Afghan civilians. \n\nSpecifically, Holmes is charged with the premeditated deaths of three civilians, possessing a dismembered human finger, wrongfully possessing photographs of human casualties, and smoking hashish. \n\nHe is also accused of conspiring with Morlock to shoot at a civilian and then toss a grenade so it would look like the soldiers were under attack. \n\nMorlock is charged with three counts of murder. He is accused of killing one Afghan civilian in January 2010 with a grenade and rifle; killing another in May 2010 in a similar manner; and shooting a third to death in February 2010. \n\nU.S. military rules also prohibit \"taking or retaining individual souvenirs or trophies,\" which the photographs may be construed as. \n\nThe trial for the two soldiers is being conducted at Joint Base Lewis-McChord in Washington. Morlock's court martial is slated to begin Wednesday, while the start date for Holmes' court martial has not been publicly announced. ", + "questions": [ + "What news agency showed photos of American soldiers?", + "From what country?", + "What were the soldiers doing in the photos?", + "What was the condition of the body?", + "What does another photo show?", + "Near what?", + "What could the photos be construed as?", + "What is the name of one of the soldiers?", + "The other?", + "What is Holmes being charged with?" + ], + "answers": { + "input_text": [ + "Der Spiegel", + "Germany", + "posing over the bodies of dead Afghans", + "bloody", + "propped up, back to back", + "military vehicle.", + "taking or retaining individual souvenirs or trophies", + "Jeremy Morlock", + "Pfc. Andrew Holmes", + "Holmes is charged with the premeditated deaths of three civilians" + ], + "answer_start": [ + 28, + 28, + 77, + 267, + 363, + 362, + 1229, + 482, + 545, + 662 + ], + "answer_end": [ + 62, + 62, + 181, + 361, + 430, + 481, + 1362, + 541, + 563, + 727 + ] + } + } + }, + { + "input": { + "input": "Given the following context: (CNN)A chiseled boxer's Instagram feed shows him making constant references to the Bible and enjoying gospel singing with his wife. \n\nAnother features his formidable opponent counting stacks of money, hanging out in strip clubs, and flashing diamond watches and Ferraris. \n\nWelcome to the world of boxing promotion, circa 2015. \n\nAmerican Floyd Mayweather and Filipino Manny Pacquiao are set to officially announce their heavily anticipated boxing match at a press conference in Los Angeles Wednesday. \n\nWith the combined purse for the May 2 bout in Las Vegas reported to touch $300 million pending viewership numbers, the incentives to self-promote could not be higher. \n\n\"Nowadays you have to be on social media to launch the fight and to build hype,\" says boxing promoter Nisse Sauerland, CEO of Team Sauerland. \"It couldn't be done without it.\" \n\nThirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. \n\nHe famously confirmed the fight via Shots, a photo sharing social media application that he's invested in, and displays links to his clothing brand, The Money Team, on all his accounts. \n\nAlong with professing to the be the best fighter of all time, he could also stake a claim to be one of the greatest social media users in sports. \n\n\"I think they're both playing their roles,\" says Sauerland, who promotes over 45 boxers. \"You've got the bad guy and the good guy, really. You've got the guy who throws the money around (Mayweather), that's his image, and Pacquiao, he's the hope of a nation.\" , \n\n Answer the question: Who are the two boxer featured in this article?", + "output": "Floyd Mayweather and Manny Pacquiao", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "(CNN)A chiseled boxer's Instagram feed shows him making constant references to the Bible and enjoying gospel singing with his wife. \n\nAnother features his formidable opponent counting stacks of money, hanging out in strip clubs, and flashing diamond watches and Ferraris. \n\nWelcome to the world of boxing promotion, circa 2015. \n\nAmerican Floyd Mayweather and Filipino Manny Pacquiao are set to officially announce their heavily anticipated boxing match at a press conference in Los Angeles Wednesday. \n\nWith the combined purse for the May 2 bout in Las Vegas reported to touch $300 million pending viewership numbers, the incentives to self-promote could not be higher. \n\n\"Nowadays you have to be on social media to launch the fight and to build hype,\" says boxing promoter Nisse Sauerland, CEO of Team Sauerland. \"It couldn't be done without it.\" \n\nThirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. \n\nHe famously confirmed the fight via Shots, a photo sharing social media application that he's invested in, and displays links to his clothing brand, The Money Team, on all his accounts. \n\nAlong with professing to the be the best fighter of all time, he could also stake a claim to be one of the greatest social media users in sports. \n\n\"I think they're both playing their roles,\" says Sauerland, who promotes over 45 boxers. \"You've got the bad guy and the good guy, really. You've got the guy who throws the money around (Mayweather), that's his image, and Pacquiao, he's the hope of a nation.\" ", + "questions": [ + "Who are the two boxer featured in this article?", + "What is Mayweathers nick name?", + "what is the other", + "which stand for?", + "what is the name of his clothing line?", + "Who is Sauerland?", + "how many people does he promote", + "what is the combined purse for this match?", + "how old is mayweather?", + "what do they say about pacquiao and his following?" + ], + "answers": { + "input_text": [ + "Floyd Mayweather and Manny Pacquiao", + "1 is the money man", + "TBE", + "The Best Ever", + "The Money Team,", + "a boxing promoter", + "over 45 boxers.", + "$300 million pending viewership numbers", + "38", + "just that it has bible references and shows him enjoying gos[e; singing with his wife" + ], + "answer_start": [ + 330, + 851, + 851, + 945, + 1175, + 753, + 1472, + 504, + 851, + 6 + ], + "answer_end": [ + 383, + 1085, + 971, + 970, + 1253, + 791, + 1511, + 671, + 884, + 132 + ] + } + } + }, + { + "input": { + "input": "Given the following context: (CNN)A chiseled boxer's Instagram feed shows him making constant references to the Bible and enjoying gospel singing with his wife. \n\nAnother features his formidable opponent counting stacks of money, hanging out in strip clubs, and flashing diamond watches and Ferraris. \n\nWelcome to the world of boxing promotion, circa 2015. \n\nAmerican Floyd Mayweather and Filipino Manny Pacquiao are set to officially announce their heavily anticipated boxing match at a press conference in Los Angeles Wednesday. \n\nWith the combined purse for the May 2 bout in Las Vegas reported to touch $300 million pending viewership numbers, the incentives to self-promote could not be higher. \n\n\"Nowadays you have to be on social media to launch the fight and to build hype,\" says boxing promoter Nisse Sauerland, CEO of Team Sauerland. \"It couldn't be done without it.\" \n\nThirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. \n\nHe famously confirmed the fight via Shots, a photo sharing social media application that he's invested in, and displays links to his clothing brand, The Money Team, on all his accounts. \n\nAlong with professing to the be the best fighter of all time, he could also stake a claim to be one of the greatest social media users in sports. \n\n\"I think they're both playing their roles,\" says Sauerland, who promotes over 45 boxers. \"You've got the bad guy and the good guy, really. You've got the guy who throws the money around (Mayweather), that's his image, and Pacquiao, he's the hope of a nation.\" , \n\n Answer the question: Who are the two boxer featured in this article?", + "output": "1 is the money man", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "(CNN)A chiseled boxer's Instagram feed shows him making constant references to the Bible and enjoying gospel singing with his wife. \n\nAnother features his formidable opponent counting stacks of money, hanging out in strip clubs, and flashing diamond watches and Ferraris. \n\nWelcome to the world of boxing promotion, circa 2015. \n\nAmerican Floyd Mayweather and Filipino Manny Pacquiao are set to officially announce their heavily anticipated boxing match at a press conference in Los Angeles Wednesday. \n\nWith the combined purse for the May 2 bout in Las Vegas reported to touch $300 million pending viewership numbers, the incentives to self-promote could not be higher. \n\n\"Nowadays you have to be on social media to launch the fight and to build hype,\" says boxing promoter Nisse Sauerland, CEO of Team Sauerland. \"It couldn't be done without it.\" \n\nThirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. \n\nHe famously confirmed the fight via Shots, a photo sharing social media application that he's invested in, and displays links to his clothing brand, The Money Team, on all his accounts. \n\nAlong with professing to the be the best fighter of all time, he could also stake a claim to be one of the greatest social media users in sports. \n\n\"I think they're both playing their roles,\" says Sauerland, who promotes over 45 boxers. \"You've got the bad guy and the good guy, really. You've got the guy who throws the money around (Mayweather), that's his image, and Pacquiao, he's the hope of a nation.\" ", + "questions": [ + "Who are the two boxer featured in this article?", + "What is Mayweathers nick name?", + "what is the other", + "which stand for?", + "what is the name of his clothing line?", + "Who is Sauerland?", + "how many people does he promote", + "what is the combined purse for this match?", + "how old is mayweather?", + "what do they say about pacquiao and his following?" + ], + "answers": { + "input_text": [ + "Floyd Mayweather and Manny Pacquiao", + "1 is the money man", + "TBE", + "The Best Ever", + "The Money Team,", + "a boxing promoter", + "over 45 boxers.", + "$300 million pending viewership numbers", + "38", + "just that it has bible references and shows him enjoying gos[e; singing with his wife" + ], + "answer_start": [ + 330, + 851, + 851, + 945, + 1175, + 753, + 1472, + 504, + 851, + 6 + ], + "answer_end": [ + 383, + 1085, + 971, + 970, + 1253, + 791, + 1511, + 671, + 884, + 132 + ] + } + } + }, + { + "input": { + "input": "Given the following context: OCLC, currently incorporated as OCLC Online Computer Library Center, Incorporated, is an American nonprofit cooperative organization \"dedicated to the public purposes of furthering access to the world's information and reducing information costs\". It was founded in 1967 as the Ohio College Library Center. OCLC and its member libraries cooperatively produce and maintain WorldCat, the largest online public access catalog (OPAC) in the world. OCLC is funded mainly by the fees that libraries have to pay for its services (around $200 million annually ). \n\nOCLC began in 1967, as the Ohio College Library Center, through a collaboration of Ohio university presidents, vice presidents, and library directors who wanted to create a cooperative, computerized network for Ohio libraries. The group first met on July 5, 1967 on the campus of the Ohio State University to sign the articles of incorporation for the nonprofit organization. The group hired Frederick G. Kilgour, a former Yale University medical school librarian, to design the shared cataloging system. Kilgour wished to merge the latest information storage and retrieval system of the time, the computer, with the oldest, the library. The plan was to merge the catalogs of Ohio libraries electronically through a computer network and database to streamline operations, control costs, and increase efficiency in library management. The goal of this network and database was to bring libraries together to cooperatively keep track of the world's information to best serve researchers and scholars. The first library to do online cataloging through OCLC was the Alden Library at Ohio University on August 26, 1971. This was the first occurrence of online cataloging by any library worldwide., \n\n Answer the question: What is the main topic?", + "output": "OCLC", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "wikipedia", + "story": "OCLC, currently incorporated as OCLC Online Computer Library Center, Incorporated, is an American nonprofit cooperative organization \"dedicated to the public purposes of furthering access to the world's information and reducing information costs\". It was founded in 1967 as the Ohio College Library Center. OCLC and its member libraries cooperatively produce and maintain WorldCat, the largest online public access catalog (OPAC) in the world. OCLC is funded mainly by the fees that libraries have to pay for its services (around $200 million annually ). \n\nOCLC began in 1967, as the Ohio College Library Center, through a collaboration of Ohio university presidents, vice presidents, and library directors who wanted to create a cooperative, computerized network for Ohio libraries. The group first met on July 5, 1967 on the campus of the Ohio State University to sign the articles of incorporation for the nonprofit organization. The group hired Frederick G. Kilgour, a former Yale University medical school librarian, to design the shared cataloging system. Kilgour wished to merge the latest information storage and retrieval system of the time, the computer, with the oldest, the library. The plan was to merge the catalogs of Ohio libraries electronically through a computer network and database to streamline operations, control costs, and increase efficiency in library management. The goal of this network and database was to bring libraries together to cooperatively keep track of the world's information to best serve researchers and scholars. The first library to do online cataloging through OCLC was the Alden Library at Ohio University on August 26, 1971. This was the first occurrence of online cataloging by any library worldwide.", + "questions": [ + "What is the main topic?", + "What does it stand for?", + "When did it begin?", + "Was it founded the same year?", + "Where?", + "What location there?", + "What Yale student was hired by the organization?", + "Was he currently enrolled at the University?", + "What was his profession while there?", + "What does OCLC produce and maintain?", + "When did the group first gather?", + "Where?", + "Which was the first online library through them?", + "Where?", + "What could the site do?", + "On what date did this happen?", + "Had this been done before?" + ], + "answers": { + "input_text": [ + "OCLC", + "Online Computer Library Center", + "1967", + "Yes", + "Ohio", + "Ohio State University", + "Frederick G. Kilgour", + "He is not", + "medical school librarian", + "WorldCat", + "July 5, 1967", + "Ohio State University", + "Alden Library", + "Ohio University", + "online cataloging", + "August 26, 1971", + "no" + ], + "answer_start": [ + 32, + 37, + 571, + 806, + 278, + 841, + 949, + 971, + 995, + 372, + 806, + 841, + 1618, + 1636, + 1579, + 1654, + 1671 + ], + "answer_end": [ + 36, + 67, + 575, + 819, + 282, + 862, + 969, + 1020, + 1020, + 380, + 820, + 863, + 1632, + 1651, + 1597, + 1670, + 1746 + ] + } + } + }, + { + "input": { + "input": "Given the following context: OCLC, currently incorporated as OCLC Online Computer Library Center, Incorporated, is an American nonprofit cooperative organization \"dedicated to the public purposes of furthering access to the world's information and reducing information costs\". It was founded in 1967 as the Ohio College Library Center. OCLC and its member libraries cooperatively produce and maintain WorldCat, the largest online public access catalog (OPAC) in the world. OCLC is funded mainly by the fees that libraries have to pay for its services (around $200 million annually ). \n\nOCLC began in 1967, as the Ohio College Library Center, through a collaboration of Ohio university presidents, vice presidents, and library directors who wanted to create a cooperative, computerized network for Ohio libraries. The group first met on July 5, 1967 on the campus of the Ohio State University to sign the articles of incorporation for the nonprofit organization. The group hired Frederick G. Kilgour, a former Yale University medical school librarian, to design the shared cataloging system. Kilgour wished to merge the latest information storage and retrieval system of the time, the computer, with the oldest, the library. The plan was to merge the catalogs of Ohio libraries electronically through a computer network and database to streamline operations, control costs, and increase efficiency in library management. The goal of this network and database was to bring libraries together to cooperatively keep track of the world's information to best serve researchers and scholars. The first library to do online cataloging through OCLC was the Alden Library at Ohio University on August 26, 1971. This was the first occurrence of online cataloging by any library worldwide., \n\n Answer the question: What is the main topic?", + "output": "Online Computer Library Center", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "wikipedia", + "story": "OCLC, currently incorporated as OCLC Online Computer Library Center, Incorporated, is an American nonprofit cooperative organization \"dedicated to the public purposes of furthering access to the world's information and reducing information costs\". It was founded in 1967 as the Ohio College Library Center. OCLC and its member libraries cooperatively produce and maintain WorldCat, the largest online public access catalog (OPAC) in the world. OCLC is funded mainly by the fees that libraries have to pay for its services (around $200 million annually ). \n\nOCLC began in 1967, as the Ohio College Library Center, through a collaboration of Ohio university presidents, vice presidents, and library directors who wanted to create a cooperative, computerized network for Ohio libraries. The group first met on July 5, 1967 on the campus of the Ohio State University to sign the articles of incorporation for the nonprofit organization. The group hired Frederick G. Kilgour, a former Yale University medical school librarian, to design the shared cataloging system. Kilgour wished to merge the latest information storage and retrieval system of the time, the computer, with the oldest, the library. The plan was to merge the catalogs of Ohio libraries electronically through a computer network and database to streamline operations, control costs, and increase efficiency in library management. The goal of this network and database was to bring libraries together to cooperatively keep track of the world's information to best serve researchers and scholars. The first library to do online cataloging through OCLC was the Alden Library at Ohio University on August 26, 1971. This was the first occurrence of online cataloging by any library worldwide.", + "questions": [ + "What is the main topic?", + "What does it stand for?", + "When did it begin?", + "Was it founded the same year?", + "Where?", + "What location there?", + "What Yale student was hired by the organization?", + "Was he currently enrolled at the University?", + "What was his profession while there?", + "What does OCLC produce and maintain?", + "When did the group first gather?", + "Where?", + "Which was the first online library through them?", + "Where?", + "What could the site do?", + "On what date did this happen?", + "Had this been done before?" + ], + "answers": { + "input_text": [ + "OCLC", + "Online Computer Library Center", + "1967", + "Yes", + "Ohio", + "Ohio State University", + "Frederick G. Kilgour", + "He is not", + "medical school librarian", + "WorldCat", + "July 5, 1967", + "Ohio State University", + "Alden Library", + "Ohio University", + "online cataloging", + "August 26, 1971", + "no" + ], + "answer_start": [ + 32, + 37, + 571, + 806, + 278, + 841, + 949, + 971, + 995, + 372, + 806, + 841, + 1618, + 1636, + 1579, + 1654, + 1671 + ], + "answer_end": [ + 36, + 67, + 575, + 819, + 282, + 862, + 969, + 1020, + 1020, + 380, + 820, + 863, + 1632, + 1651, + 1597, + 1670, + 1746 + ] + } + } + }, + { + "input": { + "input": "Given the following context: John: Here's a good shop. Shall we buy mother's birthday present here? Mary: Yes, that's a good idea. Shall we go inside? Tom: No. Let's look in the window. Shall we buy her a sweater? Anne: Er, no. It'll soon be summer. Let's buy her a blouse to wear. There's a nice one in the window. John: No, she has two blouses. Let's buy a ring. Mary: Oh, no! They're diamond rings. Look at the price. The cheapest is $15. John: A real diamond ring is at least $500.They only look like diamonds. Tom: Shall we buy a table? It's only $15. Anne: It doesn't look good, just like a big box. Mum likes chairs. Tom: But they haven't any here. Mary: What about a pen? So cheap! Only $10. John: She has a lot of pens and pencils. All of them are new. Tom: Oh, look here. These flowers are beautiful. Mary: They aren't real and will never die. John: And they're the cheapest of all these things. Yes, let's buy them. Anne: All right., \n\n Answer the question: Did they go inside the shop?", + "output": "No", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "John: Here's a good shop. Shall we buy mother's birthday present here? Mary: Yes, that's a good idea. Shall we go inside? Tom: No. Let's look in the window. Shall we buy her a sweater? Anne: Er, no. It'll soon be summer. Let's buy her a blouse to wear. There's a nice one in the window. John: No, she has two blouses. Let's buy a ring. Mary: Oh, no! They're diamond rings. Look at the price. The cheapest is $15. John: A real diamond ring is at least $500.They only look like diamonds. Tom: Shall we buy a table? It's only $15. Anne: It doesn't look good, just like a big box. Mum likes chairs. Tom: But they haven't any here. Mary: What about a pen? So cheap! Only $10. John: She has a lot of pens and pencils. All of them are new. Tom: Oh, look here. These flowers are beautiful. Mary: They aren't real and will never die. John: And they're the cheapest of all these things. Yes, let's buy them. Anne: All right.", + "questions": [ + "Did they go inside the shop?", + "What did they end up buying?", + "How much was a table?", + "Did the purchase it?", + "Why not?", + "What season will it be soon?", + "How much was the cheap diamond?", + "Was it a real set?", + "What was $10?", + "Why didn't the children purchase her a nice shirt?", + "What was the occasion for buying a gift?", + "What is the cost of a real diamond?" + ], + "answers": { + "input_text": [ + "No", + "They bought flowers.", + "It's $15.", + "No", + "It doesn't look good.", + "summer", + "$15", + "No", + "a pen", + "She already has two blouses", + "Mother's birthday", + "at least $500" + ], + "answer_start": [ + 127, + 759, + 523, + 534, + 534, + 213, + 408, + 456, + 644, + 297, + 48, + 442 + ], + "answer_end": [ + 129, + 766, + 526, + 555, + 554, + 220, + 411, + 484, + 649, + 316, + 56, + 455 + ] + } + } + }, + { + "input": { + "input": "Given the following context: John: Here's a good shop. Shall we buy mother's birthday present here? Mary: Yes, that's a good idea. Shall we go inside? Tom: No. Let's look in the window. Shall we buy her a sweater? Anne: Er, no. It'll soon be summer. Let's buy her a blouse to wear. There's a nice one in the window. John: No, she has two blouses. Let's buy a ring. Mary: Oh, no! They're diamond rings. Look at the price. The cheapest is $15. John: A real diamond ring is at least $500.They only look like diamonds. Tom: Shall we buy a table? It's only $15. Anne: It doesn't look good, just like a big box. Mum likes chairs. Tom: But they haven't any here. Mary: What about a pen? So cheap! Only $10. John: She has a lot of pens and pencils. All of them are new. Tom: Oh, look here. These flowers are beautiful. Mary: They aren't real and will never die. John: And they're the cheapest of all these things. Yes, let's buy them. Anne: All right., \n\n Answer the question: Did they go inside the shop?", + "output": "They bought flowers.", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "John: Here's a good shop. Shall we buy mother's birthday present here? Mary: Yes, that's a good idea. Shall we go inside? Tom: No. Let's look in the window. Shall we buy her a sweater? Anne: Er, no. It'll soon be summer. Let's buy her a blouse to wear. There's a nice one in the window. John: No, she has two blouses. Let's buy a ring. Mary: Oh, no! They're diamond rings. Look at the price. The cheapest is $15. John: A real diamond ring is at least $500.They only look like diamonds. Tom: Shall we buy a table? It's only $15. Anne: It doesn't look good, just like a big box. Mum likes chairs. Tom: But they haven't any here. Mary: What about a pen? So cheap! Only $10. John: She has a lot of pens and pencils. All of them are new. Tom: Oh, look here. These flowers are beautiful. Mary: They aren't real and will never die. John: And they're the cheapest of all these things. Yes, let's buy them. Anne: All right.", + "questions": [ + "Did they go inside the shop?", + "What did they end up buying?", + "How much was a table?", + "Did the purchase it?", + "Why not?", + "What season will it be soon?", + "How much was the cheap diamond?", + "Was it a real set?", + "What was $10?", + "Why didn't the children purchase her a nice shirt?", + "What was the occasion for buying a gift?", + "What is the cost of a real diamond?" + ], + "answers": { + "input_text": [ + "No", + "They bought flowers.", + "It's $15.", + "No", + "It doesn't look good.", + "summer", + "$15", + "No", + "a pen", + "She already has two blouses", + "Mother's birthday", + "at least $500" + ], + "answer_start": [ + 127, + 759, + 523, + 534, + 534, + 213, + 408, + 456, + 644, + 297, + 48, + 442 + ], + "answer_end": [ + 129, + 766, + 526, + 555, + 554, + 220, + 411, + 484, + 649, + 316, + 56, + 455 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Tommy was a little boy who lived by a big lake by the woods. One day he saw two little mice looking at the water. They seemed very sad. \n\n\"What is wrong?\" Tommy asked. \n\nMary, one of the little mice, stood. \"My brother and I love to see new things. We want to see what is on the other side of the lake. But we do not know how to build a boat to get there.\" \n\nTommy smiled. \"I have plenty of toy boats,\" he said. \"They are your size!\" \n\n\"Oh, thank you!\" said Steve, the other little mouse. \"We would be very glad if we could borrow it!\" \n\nTommy went to his house and returned with a small toy boat. The boat had a big sail to make the boat go. Mary and Steve climbed on and Tommy put the boat into the water. \n\nThe boat sailed away across the water! Mary and Steve laughed with joy and had great fun riding the toy boat. \n\nSoon, they reached the other side of the lake. Many people were having fun swimming and splashing in the water. Steve and Mary loved seeing all the new things and people. \n\nA man threw a ball into the water. It landed by the toy boat. The man's big dog came splashing into the water to fetch it. The big waves splashed the little boat every which way! Mary and Steve got very wet. \n\nMary and Steve went back home after that. They told Tommy of what they saw, and they all laughed at the big dog's wave. Tomorrow the mice would see even more of the lake on Tommy's toy boat!, \n\n Answer the question: Where'd Tommy live?", + "output": "by a big lake by the woods", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Tommy was a little boy who lived by a big lake by the woods. One day he saw two little mice looking at the water. They seemed very sad. \n\n\"What is wrong?\" Tommy asked. \n\nMary, one of the little mice, stood. \"My brother and I love to see new things. We want to see what is on the other side of the lake. But we do not know how to build a boat to get there.\" \n\nTommy smiled. \"I have plenty of toy boats,\" he said. \"They are your size!\" \n\n\"Oh, thank you!\" said Steve, the other little mouse. \"We would be very glad if we could borrow it!\" \n\nTommy went to his house and returned with a small toy boat. The boat had a big sail to make the boat go. Mary and Steve climbed on and Tommy put the boat into the water. \n\nThe boat sailed away across the water! Mary and Steve laughed with joy and had great fun riding the toy boat. \n\nSoon, they reached the other side of the lake. Many people were having fun swimming and splashing in the water. Steve and Mary loved seeing all the new things and people. \n\nA man threw a ball into the water. It landed by the toy boat. The man's big dog came splashing into the water to fetch it. The big waves splashed the little boat every which way! Mary and Steve got very wet. \n\nMary and Steve went back home after that. They told Tommy of what they saw, and they all laughed at the big dog's wave. Tomorrow the mice would see even more of the lake on Tommy's toy boat!", + "questions": [ + "Where'd Tommy live?", + "what'd he see?", + "What does Tommy have?", + "Did the mice have names?", + "what were they?", + "where'd he get the boats?", + "What's the mice do?", + "What were people doing?", + "What did the man do?", + "What did the do do?" + ], + "answers": { + "input_text": [ + "by a big lake by the woods", + "mice", + "toy boats", + "yes", + "Mary and Steve", + "his house", + "climbed on", + "swimming and splashing", + "threw a ball into the water", + "got very wet" + ], + "answer_start": [ + 33, + 76, + 381, + 170, + 749, + 552, + 658, + 897, + 1001, + 1189 + ], + "answer_end": [ + 59, + 91, + 400, + 198, + 763, + 561, + 668, + 933, + 1028, + 1201 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Tommy was a little boy who lived by a big lake by the woods. One day he saw two little mice looking at the water. They seemed very sad. \n\n\"What is wrong?\" Tommy asked. \n\nMary, one of the little mice, stood. \"My brother and I love to see new things. We want to see what is on the other side of the lake. But we do not know how to build a boat to get there.\" \n\nTommy smiled. \"I have plenty of toy boats,\" he said. \"They are your size!\" \n\n\"Oh, thank you!\" said Steve, the other little mouse. \"We would be very glad if we could borrow it!\" \n\nTommy went to his house and returned with a small toy boat. The boat had a big sail to make the boat go. Mary and Steve climbed on and Tommy put the boat into the water. \n\nThe boat sailed away across the water! Mary and Steve laughed with joy and had great fun riding the toy boat. \n\nSoon, they reached the other side of the lake. Many people were having fun swimming and splashing in the water. Steve and Mary loved seeing all the new things and people. \n\nA man threw a ball into the water. It landed by the toy boat. The man's big dog came splashing into the water to fetch it. The big waves splashed the little boat every which way! Mary and Steve got very wet. \n\nMary and Steve went back home after that. They told Tommy of what they saw, and they all laughed at the big dog's wave. Tomorrow the mice would see even more of the lake on Tommy's toy boat!, \n\n Answer the question: Where'd Tommy live?", + "output": "mice", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Tommy was a little boy who lived by a big lake by the woods. One day he saw two little mice looking at the water. They seemed very sad. \n\n\"What is wrong?\" Tommy asked. \n\nMary, one of the little mice, stood. \"My brother and I love to see new things. We want to see what is on the other side of the lake. But we do not know how to build a boat to get there.\" \n\nTommy smiled. \"I have plenty of toy boats,\" he said. \"They are your size!\" \n\n\"Oh, thank you!\" said Steve, the other little mouse. \"We would be very glad if we could borrow it!\" \n\nTommy went to his house and returned with a small toy boat. The boat had a big sail to make the boat go. Mary and Steve climbed on and Tommy put the boat into the water. \n\nThe boat sailed away across the water! Mary and Steve laughed with joy and had great fun riding the toy boat. \n\nSoon, they reached the other side of the lake. Many people were having fun swimming and splashing in the water. Steve and Mary loved seeing all the new things and people. \n\nA man threw a ball into the water. It landed by the toy boat. The man's big dog came splashing into the water to fetch it. The big waves splashed the little boat every which way! Mary and Steve got very wet. \n\nMary and Steve went back home after that. They told Tommy of what they saw, and they all laughed at the big dog's wave. Tomorrow the mice would see even more of the lake on Tommy's toy boat!", + "questions": [ + "Where'd Tommy live?", + "what'd he see?", + "What does Tommy have?", + "Did the mice have names?", + "what were they?", + "where'd he get the boats?", + "What's the mice do?", + "What were people doing?", + "What did the man do?", + "What did the do do?" + ], + "answers": { + "input_text": [ + "by a big lake by the woods", + "mice", + "toy boats", + "yes", + "Mary and Steve", + "his house", + "climbed on", + "swimming and splashing", + "threw a ball into the water", + "got very wet" + ], + "answer_start": [ + 33, + 76, + 381, + 170, + 749, + 552, + 658, + 897, + 1001, + 1189 + ], + "answer_end": [ + 59, + 91, + 400, + 198, + 763, + 561, + 668, + 933, + 1028, + 1201 + ] + } + } + }, + { + "input": { + "input": "Given the following context: A German taxi-driver, Franz Bussman, recently found his brother who was thought to have been killed twenty years ago. \n\nWhile on a walking tour with his wife, he stopped to talk to a workman. After they had gone on, Mrs. Bussman said that the workman was closely like her husband and even suggested that he might be his brother. Franz laughed at the idea, pointing out that his brother had been killed in action during the war. Though Mrs. Busman knew this story quite well, she thought there was a chance in a million that she might be right. \n\nA few days later, she sent a boy to the workman to ask him if his name was Hans Bussman. Needless to say, the man's name was Hans Bussman. And he really was Franz's long-lost brother. \n\nWhen the brothers were reunited, Hans explained how it was that he was still alive. \n\nAfter having been wondered towards the end of the war, he had been sent to hospital and was separated from his unit . The hospital had been bombed and Hans had made his way back into Western Germany on foot. Meanwhile, his unit was lost and all records of him had been destroyed. Hans returned to his home, but the house had been bombed up. Guessing that his family had all been killed during an air-raid , Hans settled down in a village fifty miles away where he had remained ever since., \n\n Answer the question: What happened to the hospital where Hans was?", + "output": "The hospital had been bombed.", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "A German taxi-driver, Franz Bussman, recently found his brother who was thought to have been killed twenty years ago. \n\nWhile on a walking tour with his wife, he stopped to talk to a workman. After they had gone on, Mrs. Bussman said that the workman was closely like her husband and even suggested that he might be his brother. Franz laughed at the idea, pointing out that his brother had been killed in action during the war. Though Mrs. Busman knew this story quite well, she thought there was a chance in a million that she might be right. \n\nA few days later, she sent a boy to the workman to ask him if his name was Hans Bussman. Needless to say, the man's name was Hans Bussman. And he really was Franz's long-lost brother. \n\nWhen the brothers were reunited, Hans explained how it was that he was still alive. \n\nAfter having been wondered towards the end of the war, he had been sent to hospital and was separated from his unit . The hospital had been bombed and Hans had made his way back into Western Germany on foot. Meanwhile, his unit was lost and all records of him had been destroyed. Hans returned to his home, but the house had been bombed up. Guessing that his family had all been killed during an air-raid , Hans settled down in a village fifty miles away where he had remained ever since.", + "questions": [ + "What happened to the hospital where Hans was?", + "Was he with his unit at the time?", + "What country was he in?", + "Was he in the Eastern or Western part?", + "And which part did he need to get to?", + "Did he drive there?", + "Was the war nearly over by this time?", + "Was his house still standing?", + "Did he know what happened to his family?", + "What did he decide to do?", + "Did he stay there long?", + "What kind of job did he do?", + "Does he have a living brother?", + "What's his name?", + "Does he drive a car for a living?", + "Did the two brothers keep in contact the past twenty years?", + "Why didn't Franz stay in touch?", + "Who noticed the resemblance between the two men?", + "What did Franz think of that?", + "Did she give up at that point?" + ], + "answers": { + "input_text": [ + "The hospital had been bombed.", + "No.", + "Germany", + "Eastern Germany at the time of his hospital stay.", + "Western Germany", + "No", + "Yes", + "No", + "No, just guessed.", + "Hans settled down in a village fifty miles away.", + "Yes, for twenty years", + "a workman", + "Yes", + "Hans Bussman", + "Yes, Franz does.", + "No", + "He assumed Hans was dead.", + "Mrs. Bussman", + "Franz laughed at the idea", + "No" + ], + "answer_start": [ + 936, + 906, + 2, + 969, + 1001, + 1017, + 845, + 1129, + 1159, + 1225, + 100, + 181, + 689, + 671, + 2, + 732, + 373, + 215, + 329, + 546 + ], + "answer_end": [ + 964, + 933, + 9, + 1016, + 1016, + 1024, + 870, + 1157, + 1222, + 1267, + 112, + 190, + 728, + 683, + 35, + 763, + 474, + 280, + 355, + 634 + ] + } + } + }, + { + "input": { + "input": "Given the following context: A German taxi-driver, Franz Bussman, recently found his brother who was thought to have been killed twenty years ago. \n\nWhile on a walking tour with his wife, he stopped to talk to a workman. After they had gone on, Mrs. Bussman said that the workman was closely like her husband and even suggested that he might be his brother. Franz laughed at the idea, pointing out that his brother had been killed in action during the war. Though Mrs. Busman knew this story quite well, she thought there was a chance in a million that she might be right. \n\nA few days later, she sent a boy to the workman to ask him if his name was Hans Bussman. Needless to say, the man's name was Hans Bussman. And he really was Franz's long-lost brother. \n\nWhen the brothers were reunited, Hans explained how it was that he was still alive. \n\nAfter having been wondered towards the end of the war, he had been sent to hospital and was separated from his unit . The hospital had been bombed and Hans had made his way back into Western Germany on foot. Meanwhile, his unit was lost and all records of him had been destroyed. Hans returned to his home, but the house had been bombed up. Guessing that his family had all been killed during an air-raid , Hans settled down in a village fifty miles away where he had remained ever since., \n\n Answer the question: What happened to the hospital where Hans was?", + "output": "No.", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "A German taxi-driver, Franz Bussman, recently found his brother who was thought to have been killed twenty years ago. \n\nWhile on a walking tour with his wife, he stopped to talk to a workman. After they had gone on, Mrs. Bussman said that the workman was closely like her husband and even suggested that he might be his brother. Franz laughed at the idea, pointing out that his brother had been killed in action during the war. Though Mrs. Busman knew this story quite well, she thought there was a chance in a million that she might be right. \n\nA few days later, she sent a boy to the workman to ask him if his name was Hans Bussman. Needless to say, the man's name was Hans Bussman. And he really was Franz's long-lost brother. \n\nWhen the brothers were reunited, Hans explained how it was that he was still alive. \n\nAfter having been wondered towards the end of the war, he had been sent to hospital and was separated from his unit . The hospital had been bombed and Hans had made his way back into Western Germany on foot. Meanwhile, his unit was lost and all records of him had been destroyed. Hans returned to his home, but the house had been bombed up. Guessing that his family had all been killed during an air-raid , Hans settled down in a village fifty miles away where he had remained ever since.", + "questions": [ + "What happened to the hospital where Hans was?", + "Was he with his unit at the time?", + "What country was he in?", + "Was he in the Eastern or Western part?", + "And which part did he need to get to?", + "Did he drive there?", + "Was the war nearly over by this time?", + "Was his house still standing?", + "Did he know what happened to his family?", + "What did he decide to do?", + "Did he stay there long?", + "What kind of job did he do?", + "Does he have a living brother?", + "What's his name?", + "Does he drive a car for a living?", + "Did the two brothers keep in contact the past twenty years?", + "Why didn't Franz stay in touch?", + "Who noticed the resemblance between the two men?", + "What did Franz think of that?", + "Did she give up at that point?" + ], + "answers": { + "input_text": [ + "The hospital had been bombed.", + "No.", + "Germany", + "Eastern Germany at the time of his hospital stay.", + "Western Germany", + "No", + "Yes", + "No", + "No, just guessed.", + "Hans settled down in a village fifty miles away.", + "Yes, for twenty years", + "a workman", + "Yes", + "Hans Bussman", + "Yes, Franz does.", + "No", + "He assumed Hans was dead.", + "Mrs. Bussman", + "Franz laughed at the idea", + "No" + ], + "answer_start": [ + 936, + 906, + 2, + 969, + 1001, + 1017, + 845, + 1129, + 1159, + 1225, + 100, + 181, + 689, + 671, + 2, + 732, + 373, + 215, + 329, + 546 + ], + "answer_end": [ + 964, + 933, + 9, + 1016, + 1016, + 1024, + 870, + 1157, + 1222, + 1267, + 112, + 190, + 728, + 683, + 35, + 763, + 474, + 280, + 355, + 634 + ] + } + } + }, + { + "input": { + "input": "Given the following context: CHAPTER XXII \n\nNorthward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way, threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs, daring passages so narrow and coral-patched that Captain Winters averred each day added a thousand grey hairs to his head, and dropping anchor off every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life. For Harley and Villa Kennan were in no hurry. So long as the way was interesting, they dared not how long it proved from anywhere to anywhere. \n\nDuring this time Jerry learned a new name for himself--or, rather, an entire series of names for himself. This was because of an aversion on Harley Kennan's part against renaming a named thing. \n\n\"A name he must have had,\" he argued to Villa. \"Haggin must have named him before he sailed on the _Arangi_. Therefore, nameless he must be until we get back to Tulagi and find out his real name.\" \n\n\"What's in a name?\" Villa had begun to tease. \n\n\"Everything,\" her husband retorted. \"Think of yourself, shipwrecked, called by your rescuers 'Mrs. Riggs,' or 'Mademoiselle de Maupin,' or just plain 'Topsy.' And think of me being called 'Benedict Arnold,' or ' Judas,' or . . . or . . . 'Haman.' No, keep him nameless, until we find out his original name.\" \n\n\"Must call him something,\" she objected. \"Can't think of him without thinking something.\" \n\n\"Then call him many names, but never the same name twice. Call him 'Dog' to-day, and 'Mister Dog' to-morrow, and the next day something else.\" , \n\n Answer the question: What worked her way northward?", + "output": "The _Ariel_", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER XXII \n\nNorthward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way, threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs, daring passages so narrow and coral-patched that Captain Winters averred each day added a thousand grey hairs to his head, and dropping anchor off every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life. For Harley and Villa Kennan were in no hurry. So long as the way was interesting, they dared not how long it proved from anywhere to anywhere. \n\nDuring this time Jerry learned a new name for himself--or, rather, an entire series of names for himself. This was because of an aversion on Harley Kennan's part against renaming a named thing. \n\n\"A name he must have had,\" he argued to Villa. \"Haggin must have named him before he sailed on the _Arangi_. Therefore, nameless he must be until we get back to Tulagi and find out his real name.\" \n\n\"What's in a name?\" Villa had begun to tease. \n\n\"Everything,\" her husband retorted. \"Think of yourself, shipwrecked, called by your rescuers 'Mrs. Riggs,' or 'Mademoiselle de Maupin,' or just plain 'Topsy.' And think of me being called 'Benedict Arnold,' or ' Judas,' or . . . or . . . 'Haman.' No, keep him nameless, until we find out his original name.\" \n\n\"Must call him something,\" she objected. \"Can't think of him without thinking something.\" \n\n\"Then call him many names, but never the same name twice. Call him 'Dog' to-day, and 'Mister Dog' to-morrow, and the next day something else.\" ", + "questions": [ + "What worked her way northward?", + "What lay between the shore-reefs and outer-reefs?", + "Were the passages wide?", + "Who was the Captain?", + "Did he have red hair?", + "Were Harley and Villa in a hurry?", + "What coast did the Ariel work her way up leisurely?", + "Who argued to Villa that he must have a name?", + "Who began to tease Harley?", + "What ship had Haggin sailed on?", + "How long must he be nameless until?", + "Who was the husband she retorted something to?", + "Did she tell him to think of himself being in an airplane crash?", + "What would an awkward name to be called by rescuers be?", + "What's another one?", + "How about a third one?", + "Did she ask Villa to think of her being called Jesus?", + "Was there a lot of coral in the lagoon?", + "Where did the Ariel drop anchor off of?", + "Were there cannibals?" + ], + "answers": { + "input_text": [ + "The _Ariel_", + "Lagoon", + "No", + "Winters", + "No", + "No", + "Malaita", + "Harley Kennan", + "Villa", + "The Arangi", + "Until they get back to Tulagi", + "Harley Kennan", + "No", + "'Mrs. Riggs'", + "'Topsy'", + "'Mademoiselle de Maupin'", + "No", + "Yes", + "Every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life.", + "unknown" + ], + "answer_start": [ + 15, + 100, + 186, + 234, + 235, + 451, + 15, + 702, + 992, + 839, + 901, + 711, + 1, + 1039, + 1189, + 1149, + 1039, + 15, + 312, + -1 + ], + "answer_end": [ + 98, + 184, + 212, + 250, + 295, + 497, + 83, + 882, + 1037, + 900, + 988, + 1074, + 1583, + 1348, + 1197, + 1173, + 1348, + 229, + 450, + -1 + ] + } + } + }, + { + "input": { + "input": "Given the following context: CHAPTER XXII \n\nNorthward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way, threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs, daring passages so narrow and coral-patched that Captain Winters averred each day added a thousand grey hairs to his head, and dropping anchor off every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life. For Harley and Villa Kennan were in no hurry. So long as the way was interesting, they dared not how long it proved from anywhere to anywhere. \n\nDuring this time Jerry learned a new name for himself--or, rather, an entire series of names for himself. This was because of an aversion on Harley Kennan's part against renaming a named thing. \n\n\"A name he must have had,\" he argued to Villa. \"Haggin must have named him before he sailed on the _Arangi_. Therefore, nameless he must be until we get back to Tulagi and find out his real name.\" \n\n\"What's in a name?\" Villa had begun to tease. \n\n\"Everything,\" her husband retorted. \"Think of yourself, shipwrecked, called by your rescuers 'Mrs. Riggs,' or 'Mademoiselle de Maupin,' or just plain 'Topsy.' And think of me being called 'Benedict Arnold,' or ' Judas,' or . . . or . . . 'Haman.' No, keep him nameless, until we find out his original name.\" \n\n\"Must call him something,\" she objected. \"Can't think of him without thinking something.\" \n\n\"Then call him many names, but never the same name twice. Call him 'Dog' to-day, and 'Mister Dog' to-morrow, and the next day something else.\" , \n\n Answer the question: What worked her way northward?", + "output": "Lagoon", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER XXII \n\nNorthward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way, threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs, daring passages so narrow and coral-patched that Captain Winters averred each day added a thousand grey hairs to his head, and dropping anchor off every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life. For Harley and Villa Kennan were in no hurry. So long as the way was interesting, they dared not how long it proved from anywhere to anywhere. \n\nDuring this time Jerry learned a new name for himself--or, rather, an entire series of names for himself. This was because of an aversion on Harley Kennan's part against renaming a named thing. \n\n\"A name he must have had,\" he argued to Villa. \"Haggin must have named him before he sailed on the _Arangi_. Therefore, nameless he must be until we get back to Tulagi and find out his real name.\" \n\n\"What's in a name?\" Villa had begun to tease. \n\n\"Everything,\" her husband retorted. \"Think of yourself, shipwrecked, called by your rescuers 'Mrs. Riggs,' or 'Mademoiselle de Maupin,' or just plain 'Topsy.' And think of me being called 'Benedict Arnold,' or ' Judas,' or . . . or . . . 'Haman.' No, keep him nameless, until we find out his original name.\" \n\n\"Must call him something,\" she objected. \"Can't think of him without thinking something.\" \n\n\"Then call him many names, but never the same name twice. Call him 'Dog' to-day, and 'Mister Dog' to-morrow, and the next day something else.\" ", + "questions": [ + "What worked her way northward?", + "What lay between the shore-reefs and outer-reefs?", + "Were the passages wide?", + "Who was the Captain?", + "Did he have red hair?", + "Were Harley and Villa in a hurry?", + "What coast did the Ariel work her way up leisurely?", + "Who argued to Villa that he must have a name?", + "Who began to tease Harley?", + "What ship had Haggin sailed on?", + "How long must he be nameless until?", + "Who was the husband she retorted something to?", + "Did she tell him to think of himself being in an airplane crash?", + "What would an awkward name to be called by rescuers be?", + "What's another one?", + "How about a third one?", + "Did she ask Villa to think of her being called Jesus?", + "Was there a lot of coral in the lagoon?", + "Where did the Ariel drop anchor off of?", + "Were there cannibals?" + ], + "answers": { + "input_text": [ + "The _Ariel_", + "Lagoon", + "No", + "Winters", + "No", + "No", + "Malaita", + "Harley Kennan", + "Villa", + "The Arangi", + "Until they get back to Tulagi", + "Harley Kennan", + "No", + "'Mrs. Riggs'", + "'Topsy'", + "'Mademoiselle de Maupin'", + "No", + "Yes", + "Every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life.", + "unknown" + ], + "answer_start": [ + 15, + 100, + 186, + 234, + 235, + 451, + 15, + 702, + 992, + 839, + 901, + 711, + 1, + 1039, + 1189, + 1149, + 1039, + 15, + 312, + -1 + ], + "answer_end": [ + 98, + 184, + 212, + 250, + 295, + 497, + 83, + 882, + 1037, + 900, + 988, + 1074, + 1583, + 1348, + 1197, + 1173, + 1348, + 229, + 450, + -1 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Brownie and Spotty were neighbor dogs who met every day to play together. These two loved each other and played together so often that they had worn a path through the grass of the field between their respective houses. One evening, Brownie's family noticed that Brownie hadn't returned home. They went looking for him with no success and by the next week he was still missing. Curiously, Spotty showed up at Brownie's house alone. Barking, whining and generally pestering Brownie's human family. Busy with their own lives, they just ignored the nervous little neighbor dog. Continuously,Ted, Brownie's owner, was disturbed by the angry, determined little dog. Spotty followed Ted about, barking insistently, then rushing toward a nearby empty lot and back, as if to say, \"Follow me! It's urgent!\" Eventually, Ted followed Spotty to a deserted spot half a mile from the house. There Ted found his beloved Brownie alive, one of his hind legs crushed in a steel leghold trap. Horrified, Ted now wished he'd taken Spotty's earlier appeals seriously. Then Ted noticed something quite remarkable. Spotty had done more than simply led Brownie's human owner to his trapped friend. In a circle around the injured dog, Ted found an array of dog food and table scraps which were later identified as the remains of every meal Spotty had been fed that week! Spotty had been visiting Brownie regularly, in the hope of keeping his friend alive by sacrificing his own comfort. Spotty had evidently stayed with Brownie to protect him from hunger and other dangers, and keep his spirits up. Brownie's leg was treated by a veterinarian and he recovered. For many years thereafter, the two families watched the faithful friends chasing each other down that well worn path between their houses., \n\n Answer the question: Who were the two canines who lived next door to each other?", + "output": "Brownie and Spotty", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "Brownie and Spotty were neighbor dogs who met every day to play together. These two loved each other and played together so often that they had worn a path through the grass of the field between their respective houses. One evening, Brownie's family noticed that Brownie hadn't returned home. They went looking for him with no success and by the next week he was still missing. Curiously, Spotty showed up at Brownie's house alone. Barking, whining and generally pestering Brownie's human family. Busy with their own lives, they just ignored the nervous little neighbor dog. Continuously,Ted, Brownie's owner, was disturbed by the angry, determined little dog. Spotty followed Ted about, barking insistently, then rushing toward a nearby empty lot and back, as if to say, \"Follow me! It's urgent!\" Eventually, Ted followed Spotty to a deserted spot half a mile from the house. There Ted found his beloved Brownie alive, one of his hind legs crushed in a steel leghold trap. Horrified, Ted now wished he'd taken Spotty's earlier appeals seriously. Then Ted noticed something quite remarkable. Spotty had done more than simply led Brownie's human owner to his trapped friend. In a circle around the injured dog, Ted found an array of dog food and table scraps which were later identified as the remains of every meal Spotty had been fed that week! Spotty had been visiting Brownie regularly, in the hope of keeping his friend alive by sacrificing his own comfort. Spotty had evidently stayed with Brownie to protect him from hunger and other dangers, and keep his spirits up. Brownie's leg was treated by a veterinarian and he recovered. For many years thereafter, the two families watched the faithful friends chasing each other down that well worn path between their houses.", + "questions": [ + "Who were the two canines who lived next door to each other?", + "How often did they visit each other?", + "How did they feel about one another?", + "Where did they kill the grass?", + "Who did Brownie belong to?", + "Which dog had his leg injured?", + "Did Spotty go missing?", + "Did Spotty start annoying Ted?", + "Where did Spotty lead Ted to?", + "What's one thing Spotty did for Brownie while he was stuck?", + "What else did he do?", + "And one more?", + "Did Ted regret not paying more attention to Spotty?", + "What's something Spotty did to try to get his attention?", + "Did Brownie survive his ordeal?", + "Were the two able to continue playing together?", + "Did Brownie disappear at night?", + "Did his family hunt him?", + "Was he home by the end of the next week?", + "Why did the family ignore Spotty when he tried to get their attention?", + "What did it seem like Spotty was trying to tell them?" + ], + "answers": { + "input_text": [ + "Brownie and Spotty", + "every day", + "loved each other", + "worn a path through the grass of the field", + "Ted,", + "Brownie", + "yes", + "Yes", + "a spot half a mile from the house", + "brought him food", + "protect him from other dangers", + "keep his spirits up.", + "yes", + ". Spotty followed Ted about, barking insistently,", + "Yes", + "yes", + "No", + "yes, They went looking for him with no success", + "no", + "They were busy with their own lives,", + "\"Follow me! It's urgent!\"" + ], + "answer_start": [ + 0, + 0, + 74, + 134, + 588, + 883, + 220, + 389, + 678, + 1211, + 1462, + 1548, + 975, + 659, + 1574, + 1636, + 220, + 292, + 293, + 497, + 758 + ], + "answer_end": [ + 37, + 75, + 101, + 219, + 609, + 973, + 292, + 495, + 876, + 1346, + 1572, + 1573, + 1045, + 708, + 1636, + 1774, + 292, + 336, + 377, + 575, + 797 + ] + } + } + }, + { + "input": { + "input": "Given the following context: Brownie and Spotty were neighbor dogs who met every day to play together. These two loved each other and played together so often that they had worn a path through the grass of the field between their respective houses. One evening, Brownie's family noticed that Brownie hadn't returned home. They went looking for him with no success and by the next week he was still missing. Curiously, Spotty showed up at Brownie's house alone. Barking, whining and generally pestering Brownie's human family. Busy with their own lives, they just ignored the nervous little neighbor dog. Continuously,Ted, Brownie's owner, was disturbed by the angry, determined little dog. Spotty followed Ted about, barking insistently, then rushing toward a nearby empty lot and back, as if to say, \"Follow me! It's urgent!\" Eventually, Ted followed Spotty to a deserted spot half a mile from the house. There Ted found his beloved Brownie alive, one of his hind legs crushed in a steel leghold trap. Horrified, Ted now wished he'd taken Spotty's earlier appeals seriously. Then Ted noticed something quite remarkable. Spotty had done more than simply led Brownie's human owner to his trapped friend. In a circle around the injured dog, Ted found an array of dog food and table scraps which were later identified as the remains of every meal Spotty had been fed that week! Spotty had been visiting Brownie regularly, in the hope of keeping his friend alive by sacrificing his own comfort. Spotty had evidently stayed with Brownie to protect him from hunger and other dangers, and keep his spirits up. Brownie's leg was treated by a veterinarian and he recovered. For many years thereafter, the two families watched the faithful friends chasing each other down that well worn path between their houses., \n\n Answer the question: Who were the two canines who lived next door to each other?", + "output": "every day", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "Brownie and Spotty were neighbor dogs who met every day to play together. These two loved each other and played together so often that they had worn a path through the grass of the field between their respective houses. One evening, Brownie's family noticed that Brownie hadn't returned home. They went looking for him with no success and by the next week he was still missing. Curiously, Spotty showed up at Brownie's house alone. Barking, whining and generally pestering Brownie's human family. Busy with their own lives, they just ignored the nervous little neighbor dog. Continuously,Ted, Brownie's owner, was disturbed by the angry, determined little dog. Spotty followed Ted about, barking insistently, then rushing toward a nearby empty lot and back, as if to say, \"Follow me! It's urgent!\" Eventually, Ted followed Spotty to a deserted spot half a mile from the house. There Ted found his beloved Brownie alive, one of his hind legs crushed in a steel leghold trap. Horrified, Ted now wished he'd taken Spotty's earlier appeals seriously. Then Ted noticed something quite remarkable. Spotty had done more than simply led Brownie's human owner to his trapped friend. In a circle around the injured dog, Ted found an array of dog food and table scraps which were later identified as the remains of every meal Spotty had been fed that week! Spotty had been visiting Brownie regularly, in the hope of keeping his friend alive by sacrificing his own comfort. Spotty had evidently stayed with Brownie to protect him from hunger and other dangers, and keep his spirits up. Brownie's leg was treated by a veterinarian and he recovered. For many years thereafter, the two families watched the faithful friends chasing each other down that well worn path between their houses.", + "questions": [ + "Who were the two canines who lived next door to each other?", + "How often did they visit each other?", + "How did they feel about one another?", + "Where did they kill the grass?", + "Who did Brownie belong to?", + "Which dog had his leg injured?", + "Did Spotty go missing?", + "Did Spotty start annoying Ted?", + "Where did Spotty lead Ted to?", + "What's one thing Spotty did for Brownie while he was stuck?", + "What else did he do?", + "And one more?", + "Did Ted regret not paying more attention to Spotty?", + "What's something Spotty did to try to get his attention?", + "Did Brownie survive his ordeal?", + "Were the two able to continue playing together?", + "Did Brownie disappear at night?", + "Did his family hunt him?", + "Was he home by the end of the next week?", + "Why did the family ignore Spotty when he tried to get their attention?", + "What did it seem like Spotty was trying to tell them?" + ], + "answers": { + "input_text": [ + "Brownie and Spotty", + "every day", + "loved each other", + "worn a path through the grass of the field", + "Ted,", + "Brownie", + "yes", + "Yes", + "a spot half a mile from the house", + "brought him food", + "protect him from other dangers", + "keep his spirits up.", + "yes", + ". Spotty followed Ted about, barking insistently,", + "Yes", + "yes", + "No", + "yes, They went looking for him with no success", + "no", + "They were busy with their own lives,", + "\"Follow me! It's urgent!\"" + ], + "answer_start": [ + 0, + 0, + 74, + 134, + 588, + 883, + 220, + 389, + 678, + 1211, + 1462, + 1548, + 975, + 659, + 1574, + 1636, + 220, + 292, + 293, + 497, + 758 + ], + "answer_end": [ + 37, + 75, + 101, + 219, + 609, + 973, + 292, + 495, + 876, + 1346, + 1572, + 1573, + 1045, + 708, + 1636, + 1774, + 292, + 336, + 377, + 575, + 797 + ] + } + } + }, + { + "input": { + "input": "Given the following context: This is the story of a young girl and her dog. The young girl and her dog set out a trip into the woods one day. Upon entering the woods the girl and her dog found that the woods were dark and cold. The girl was a little scared and was thinking of turning back, but yet they went on. The girl's dog was acting very interested in what was in the bushes up ahead. To both the girl and the dog's surprise, there was a small brown bear resting in the bushes. The bear was not surprised and did not seem at all interested in the girl and her dog. The bear looked up at the girl and it was almost as if he was smiling at her. He then rested his head on his bear paws and went back to sleep. The girl and the dog kept walking and finally made it out of the woods. To this day the girl does not know why the bear was so friendly and to this day she has never told anyone about the meeting with the bear in the woods., \n\n Answer the question: What is the story about?", + "output": "A girl and a dog.", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "This is the story of a young girl and her dog. The young girl and her dog set out a trip into the woods one day. Upon entering the woods the girl and her dog found that the woods were dark and cold. The girl was a little scared and was thinking of turning back, but yet they went on. The girl's dog was acting very interested in what was in the bushes up ahead. To both the girl and the dog's surprise, there was a small brown bear resting in the bushes. The bear was not surprised and did not seem at all interested in the girl and her dog. The bear looked up at the girl and it was almost as if he was smiling at her. He then rested his head on his bear paws and went back to sleep. The girl and the dog kept walking and finally made it out of the woods. To this day the girl does not know why the bear was so friendly and to this day she has never told anyone about the meeting with the bear in the woods.", + "questions": [ + "What is the story about?", + "What were they doing?", + "where?", + "How did the girl feel?", + "How about the dog?", + "HOw did he feel?", + "in what?", + "What was it?", + "What did it do?", + "Did it notice the two?", + "How did the girl and the dog feel?", + "How did the bear react?", + "What did he do?", + "Was he mean?", + "Does she know why?", + "Who did she tell?", + "Was the woods open and light?", + "What was it like?", + "Was she thinking of turning back?", + "did she?" + ], + "answers": { + "input_text": [ + "A girl and a dog.", + "Set on on a trip", + "the woods", + "scared", + "He wasn't", + "He was interested", + "what was in the bushes", + "a bear", + "rested in the bushes", + "Not really", + "surprised", + "not surprised", + "Looked at the girl", + "He smiled", + "No", + "no one", + "No", + "dark and cold", + "yes", + "no" + ], + "answer_start": [ + 0, + 47, + 74, + 199, + 284, + 284, + 310, + 402, + 403, + 486, + 362, + 455, + 542, + 577, + 757, + 825, + 164, + 169, + 199, + 262 + ], + "answer_end": [ + 46, + 88, + 104, + 227, + 325, + 325, + 360, + 454, + 454, + 540, + 401, + 481, + 573, + 620, + 796, + 862, + 199, + 199, + 261, + 284 + ] + } + } + }, + { + "input": { + "input": "Given the following context: This is the story of a young girl and her dog. The young girl and her dog set out a trip into the woods one day. Upon entering the woods the girl and her dog found that the woods were dark and cold. The girl was a little scared and was thinking of turning back, but yet they went on. The girl's dog was acting very interested in what was in the bushes up ahead. To both the girl and the dog's surprise, there was a small brown bear resting in the bushes. The bear was not surprised and did not seem at all interested in the girl and her dog. The bear looked up at the girl and it was almost as if he was smiling at her. He then rested his head on his bear paws and went back to sleep. The girl and the dog kept walking and finally made it out of the woods. To this day the girl does not know why the bear was so friendly and to this day she has never told anyone about the meeting with the bear in the woods., \n\n Answer the question: What is the story about?", + "output": "Set on on a trip", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "This is the story of a young girl and her dog. The young girl and her dog set out a trip into the woods one day. Upon entering the woods the girl and her dog found that the woods were dark and cold. The girl was a little scared and was thinking of turning back, but yet they went on. The girl's dog was acting very interested in what was in the bushes up ahead. To both the girl and the dog's surprise, there was a small brown bear resting in the bushes. The bear was not surprised and did not seem at all interested in the girl and her dog. The bear looked up at the girl and it was almost as if he was smiling at her. He then rested his head on his bear paws and went back to sleep. The girl and the dog kept walking and finally made it out of the woods. To this day the girl does not know why the bear was so friendly and to this day she has never told anyone about the meeting with the bear in the woods.", + "questions": [ + "What is the story about?", + "What were they doing?", + "where?", + "How did the girl feel?", + "How about the dog?", + "HOw did he feel?", + "in what?", + "What was it?", + "What did it do?", + "Did it notice the two?", + "How did the girl and the dog feel?", + "How did the bear react?", + "What did he do?", + "Was he mean?", + "Does she know why?", + "Who did she tell?", + "Was the woods open and light?", + "What was it like?", + "Was she thinking of turning back?", + "did she?" + ], + "answers": { + "input_text": [ + "A girl and a dog.", + "Set on on a trip", + "the woods", + "scared", + "He wasn't", + "He was interested", + "what was in the bushes", + "a bear", + "rested in the bushes", + "Not really", + "surprised", + "not surprised", + "Looked at the girl", + "He smiled", + "No", + "no one", + "No", + "dark and cold", + "yes", + "no" + ], + "answer_start": [ + 0, + 47, + 74, + 199, + 284, + 284, + 310, + 402, + 403, + 486, + 362, + 455, + 542, + 577, + 757, + 825, + 164, + 169, + 199, + 262 + ], + "answer_end": [ + 46, + 88, + 104, + 227, + 325, + 325, + 360, + 454, + 454, + 540, + 401, + 481, + 573, + 620, + 796, + 862, + 199, + 199, + 261, + 284 + ] + } + } + }, + { + "input": { + "input": "Given the following context: HOUSTON (AP) --- A 10-year-old boy fatally shot his father Friday, striking him several times as he sat in the front seat of a SUV to pick up the boy from his mother's home for a weekend visit. \n\nThe incident happened about 3pm on a cul-desac in the 1700 block of Cedar Cove Court, said Sgt. Williams of the Harris County Sheriff's Department. \n\nAn investigation found that Rick James Lohstroh, 41, was shot by his son, who was sitting in the back seat of the man's Toyota 4-Runner, said Sgt. Williams. The shooting took place outside the home of Lohstroh's ex-wife, where the boy lives with his mother and a 7-year-old brother. \n\n\"We're not certain of anything until we finish our investigation,\" Williams said. \"The information we have at this time is that the 10-year-old did fire the weapon.\" \n\nThe mother and the 7-year-old were inside the house when the shooting occurred, said Williams. \n\nWilliams said the gun belonged to the boy's mother. After firing shots through the back seat, the boy exited the back of the vehicle and continued to fire at the car. \n\nThe man died on the way to Memorial Herman Hospital. \n\nLohstroh was a doctor at the University of Texas Medical Branch. \n\nThe man and woman shared custody of the children. \n\nWilliams said the mother and the boy were still in the home talking to investigators Friday night. \n\nNeighbors described the family as being quiet and keeping to themselves. \n\nJustin Gray, 17, was walking in the neighborhood when he heard gunshots. \"We've had a suicide in this neighborhood once, but never anything like this,\" Gray said., \n\n Answer the question: What happened Friday?", + "output": "10-year-old boy fatally shot his father", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "HOUSTON (AP) --- A 10-year-old boy fatally shot his father Friday, striking him several times as he sat in the front seat of a SUV to pick up the boy from his mother's home for a weekend visit. \n\nThe incident happened about 3pm on a cul-desac in the 1700 block of Cedar Cove Court, said Sgt. Williams of the Harris County Sheriff's Department. \n\nAn investigation found that Rick James Lohstroh, 41, was shot by his son, who was sitting in the back seat of the man's Toyota 4-Runner, said Sgt. Williams. The shooting took place outside the home of Lohstroh's ex-wife, where the boy lives with his mother and a 7-year-old brother. \n\n\"We're not certain of anything until we finish our investigation,\" Williams said. \"The information we have at this time is that the 10-year-old did fire the weapon.\" \n\nThe mother and the 7-year-old were inside the house when the shooting occurred, said Williams. \n\nWilliams said the gun belonged to the boy's mother. After firing shots through the back seat, the boy exited the back of the vehicle and continued to fire at the car. \n\nThe man died on the way to Memorial Herman Hospital. \n\nLohstroh was a doctor at the University of Texas Medical Branch. \n\nThe man and woman shared custody of the children. \n\nWilliams said the mother and the boy were still in the home talking to investigators Friday night. \n\nNeighbors described the family as being quiet and keeping to themselves. \n\nJustin Gray, 17, was walking in the neighborhood when he heard gunshots. \"We've had a suicide in this neighborhood once, but never anything like this,\" Gray said.", + "questions": [ + "What happened Friday?", + "Where was he at?", + "At his dad's house?", + "Where?", + "when?", + "What time?", + "whose gun was it?", + "What did the child do after he shot his dad?", + "DId he live?", + "Where did he work?", + "Where was the mother?", + "was anyone with her?", + "who?" + ], + "answers": { + "input_text": [ + "10-year-old boy fatally shot his father", + "in the front seat of a SUV", + "no", + "outside the home of Lohstroh's ex-wife", + "Friday", + "3pm", + "belonged to the boy's mother", + "He exited the back of the vehicle and continued to fire at the car", + "No", + "at the University of Texas Medical Branch", + "inside the house", + "Yes", + "the 7-year-old" + ], + "answer_start": [ + 19, + 103, + 538, + 527, + 58, + 223, + 917, + 990, + 1065, + 1141, + 834, + 813, + 813 + ], + "answer_end": [ + 59, + 130, + 565, + 565, + 65, + 227, + 946, + 1061, + 1078, + 1183, + 850, + 828, + 829 + ] + } + } + }, + { + "input": { + "input": "Given the following context: HOUSTON (AP) --- A 10-year-old boy fatally shot his father Friday, striking him several times as he sat in the front seat of a SUV to pick up the boy from his mother's home for a weekend visit. \n\nThe incident happened about 3pm on a cul-desac in the 1700 block of Cedar Cove Court, said Sgt. Williams of the Harris County Sheriff's Department. \n\nAn investigation found that Rick James Lohstroh, 41, was shot by his son, who was sitting in the back seat of the man's Toyota 4-Runner, said Sgt. Williams. The shooting took place outside the home of Lohstroh's ex-wife, where the boy lives with his mother and a 7-year-old brother. \n\n\"We're not certain of anything until we finish our investigation,\" Williams said. \"The information we have at this time is that the 10-year-old did fire the weapon.\" \n\nThe mother and the 7-year-old were inside the house when the shooting occurred, said Williams. \n\nWilliams said the gun belonged to the boy's mother. After firing shots through the back seat, the boy exited the back of the vehicle and continued to fire at the car. \n\nThe man died on the way to Memorial Herman Hospital. \n\nLohstroh was a doctor at the University of Texas Medical Branch. \n\nThe man and woman shared custody of the children. \n\nWilliams said the mother and the boy were still in the home talking to investigators Friday night. \n\nNeighbors described the family as being quiet and keeping to themselves. \n\nJustin Gray, 17, was walking in the neighborhood when he heard gunshots. \"We've had a suicide in this neighborhood once, but never anything like this,\" Gray said., \n\n Answer the question: What happened Friday?", + "output": "in the front seat of a SUV", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "HOUSTON (AP) --- A 10-year-old boy fatally shot his father Friday, striking him several times as he sat in the front seat of a SUV to pick up the boy from his mother's home for a weekend visit. \n\nThe incident happened about 3pm on a cul-desac in the 1700 block of Cedar Cove Court, said Sgt. Williams of the Harris County Sheriff's Department. \n\nAn investigation found that Rick James Lohstroh, 41, was shot by his son, who was sitting in the back seat of the man's Toyota 4-Runner, said Sgt. Williams. The shooting took place outside the home of Lohstroh's ex-wife, where the boy lives with his mother and a 7-year-old brother. \n\n\"We're not certain of anything until we finish our investigation,\" Williams said. \"The information we have at this time is that the 10-year-old did fire the weapon.\" \n\nThe mother and the 7-year-old were inside the house when the shooting occurred, said Williams. \n\nWilliams said the gun belonged to the boy's mother. After firing shots through the back seat, the boy exited the back of the vehicle and continued to fire at the car. \n\nThe man died on the way to Memorial Herman Hospital. \n\nLohstroh was a doctor at the University of Texas Medical Branch. \n\nThe man and woman shared custody of the children. \n\nWilliams said the mother and the boy were still in the home talking to investigators Friday night. \n\nNeighbors described the family as being quiet and keeping to themselves. \n\nJustin Gray, 17, was walking in the neighborhood when he heard gunshots. \"We've had a suicide in this neighborhood once, but never anything like this,\" Gray said.", + "questions": [ + "What happened Friday?", + "Where was he at?", + "At his dad's house?", + "Where?", + "when?", + "What time?", + "whose gun was it?", + "What did the child do after he shot his dad?", + "DId he live?", + "Where did he work?", + "Where was the mother?", + "was anyone with her?", + "who?" + ], + "answers": { + "input_text": [ + "10-year-old boy fatally shot his father", + "in the front seat of a SUV", + "no", + "outside the home of Lohstroh's ex-wife", + "Friday", + "3pm", + "belonged to the boy's mother", + "He exited the back of the vehicle and continued to fire at the car", + "No", + "at the University of Texas Medical Branch", + "inside the house", + "Yes", + "the 7-year-old" + ], + "answer_start": [ + 19, + 103, + 538, + 527, + 58, + 223, + 917, + 990, + 1065, + 1141, + 834, + 813, + 813 + ], + "answer_end": [ + 59, + 130, + 565, + 565, + 65, + 227, + 946, + 1061, + 1078, + 1183, + 850, + 828, + 829 + ] + } + } + }, + { + "input": { + "input": "Given the following context: CHAPTER FIFTY FIVE. \n\nWAITING. \n\nThe lengthening sunny days went on without bringing either what Romola most desired or what she most dreaded. They brought no sign from Baldassarre, and, in spite of special watch on the part of the Government, no revelation of the suspected conspiracy. But they brought other things which touched her closely, and bridged the phantom-crowded space of anxiety with active sympathy in immediate trial. They brought the spreading Plague and the Excommunication of Savonarola. \n\nBoth these events tended to arrest her incipient alienation from the Frate, and to rivet again her attachment to the man who had opened to her the new life of duty, and who seemed now to be worsted in the fight for principle against profligacy. For Romola could not carry from day to day into the abodes of pestilence and misery the sublime excitement of a gladness that, since such anguish existed, she too existed to make some of the anguish less bitter, without remembering that she owed this transcendent moral life to Fra Girolamo. She could not witness the silencing and excommunication of a man whose distinction from the great mass of the clergy lay, not in any heretical belief, not in his superstitions, but in the energy with which he sought to make the Christian life a reality, without feeling herself drawn strongly to his side. \n\nFar on in the hot days of June the Excommunication, for some weeks arrived from Rome, was solemnly published in the Duomo. Romola went to witness the scene, that the resistance it inspired might invigorate that sympathy with Savonarola which was one source of her strength. It was in memorable contrast with the scene she had been accustomed to witness there. , \n\n Answer the question: Who was excommunicated?", + "output": "Fra Girolamo", + "criteria": "Is the answer correct?" + }, + "expected": 1, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER FIFTY FIVE. \n\nWAITING. \n\nThe lengthening sunny days went on without bringing either what Romola most desired or what she most dreaded. They brought no sign from Baldassarre, and, in spite of special watch on the part of the Government, no revelation of the suspected conspiracy. But they brought other things which touched her closely, and bridged the phantom-crowded space of anxiety with active sympathy in immediate trial. They brought the spreading Plague and the Excommunication of Savonarola. \n\nBoth these events tended to arrest her incipient alienation from the Frate, and to rivet again her attachment to the man who had opened to her the new life of duty, and who seemed now to be worsted in the fight for principle against profligacy. For Romola could not carry from day to day into the abodes of pestilence and misery the sublime excitement of a gladness that, since such anguish existed, she too existed to make some of the anguish less bitter, without remembering that she owed this transcendent moral life to Fra Girolamo. She could not witness the silencing and excommunication of a man whose distinction from the great mass of the clergy lay, not in any heretical belief, not in his superstitions, but in the energy with which he sought to make the Christian life a reality, without feeling herself drawn strongly to his side. \n\nFar on in the hot days of June the Excommunication, for some weeks arrived from Rome, was solemnly published in the Duomo. Romola went to witness the scene, that the resistance it inspired might invigorate that sympathy with Savonarola which was one source of her strength. It was in memorable contrast with the scene she had been accustomed to witness there. ", + "questions": [ + "Who was excommunicated?", + "Was he a heretic?", + "Was he superstitious?", + "Why was he excommunicated then?", + "Who was inspired by this man?", + "Where was the Excommunication published?", + "When?", + "How long was it published?", + "What was Romola looking for?", + "What else was she looking for?", + "What did the summer days bring?", + "Who was she alienated from?", + "Did Romola fight the plague?" + ], + "answers": { + "input_text": [ + "Fra Girolamo", + "no", + "no", + "unknown", + "Romola", + "in the Duomo", + "June", + "for some weeks", + "a sign from Baldassarre", + "sympathy with Savonarola", + "Plague", + "the Frate", + "no" + ], + "answer_start": [ + 1032, + 1168, + 1197, + -1, + 991, + 1385, + 1361, + 1405, + 144, + 1511, + 434, + 544, + 714 + ], + "answer_end": [ + 1110, + 1195, + 1221, + -1, + 1044, + 1475, + 1476, + 1437, + 180, + 1590, + 505, + 583, + 753 + ] + } + } + }, + { + "input": { + "input": "Given the following context: CHAPTER FIFTY FIVE. \n\nWAITING. \n\nThe lengthening sunny days went on without bringing either what Romola most desired or what she most dreaded. They brought no sign from Baldassarre, and, in spite of special watch on the part of the Government, no revelation of the suspected conspiracy. But they brought other things which touched her closely, and bridged the phantom-crowded space of anxiety with active sympathy in immediate trial. They brought the spreading Plague and the Excommunication of Savonarola. \n\nBoth these events tended to arrest her incipient alienation from the Frate, and to rivet again her attachment to the man who had opened to her the new life of duty, and who seemed now to be worsted in the fight for principle against profligacy. For Romola could not carry from day to day into the abodes of pestilence and misery the sublime excitement of a gladness that, since such anguish existed, she too existed to make some of the anguish less bitter, without remembering that she owed this transcendent moral life to Fra Girolamo. She could not witness the silencing and excommunication of a man whose distinction from the great mass of the clergy lay, not in any heretical belief, not in his superstitions, but in the energy with which he sought to make the Christian life a reality, without feeling herself drawn strongly to his side. \n\nFar on in the hot days of June the Excommunication, for some weeks arrived from Rome, was solemnly published in the Duomo. Romola went to witness the scene, that the resistance it inspired might invigorate that sympathy with Savonarola which was one source of her strength. It was in memorable contrast with the scene she had been accustomed to witness there. , \n\n Answer the question: Who was excommunicated?", + "output": "no", + "criteria": "Is the answer correct?" + }, + "expected": 0, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER FIFTY FIVE. \n\nWAITING. \n\nThe lengthening sunny days went on without bringing either what Romola most desired or what she most dreaded. They brought no sign from Baldassarre, and, in spite of special watch on the part of the Government, no revelation of the suspected conspiracy. But they brought other things which touched her closely, and bridged the phantom-crowded space of anxiety with active sympathy in immediate trial. They brought the spreading Plague and the Excommunication of Savonarola. \n\nBoth these events tended to arrest her incipient alienation from the Frate, and to rivet again her attachment to the man who had opened to her the new life of duty, and who seemed now to be worsted in the fight for principle against profligacy. For Romola could not carry from day to day into the abodes of pestilence and misery the sublime excitement of a gladness that, since such anguish existed, she too existed to make some of the anguish less bitter, without remembering that she owed this transcendent moral life to Fra Girolamo. She could not witness the silencing and excommunication of a man whose distinction from the great mass of the clergy lay, not in any heretical belief, not in his superstitions, but in the energy with which he sought to make the Christian life a reality, without feeling herself drawn strongly to his side. \n\nFar on in the hot days of June the Excommunication, for some weeks arrived from Rome, was solemnly published in the Duomo. Romola went to witness the scene, that the resistance it inspired might invigorate that sympathy with Savonarola which was one source of her strength. It was in memorable contrast with the scene she had been accustomed to witness there. ", + "questions": [ + "Who was excommunicated?", + "Was he a heretic?", + "Was he superstitious?", + "Why was he excommunicated then?", + "Who was inspired by this man?", + "Where was the Excommunication published?", + "When?", + "How long was it published?", + "What was Romola looking for?", + "What else was she looking for?", + "What did the summer days bring?", + "Who was she alienated from?", + "Did Romola fight the plague?" + ], + "answers": { + "input_text": [ + "Fra Girolamo", + "no", + "no", + "unknown", + "Romola", + "in the Duomo", + "June", + "for some weeks", + "a sign from Baldassarre", + "sympathy with Savonarola", + "Plague", + "the Frate", + "no" + ], + "answer_start": [ + 1032, + 1168, + 1197, + -1, + 991, + 1385, + 1361, + 1405, + 144, + 1511, + 434, + 544, + 714 + ], + "answer_end": [ + 1110, + 1195, + 1221, + -1, + 1044, + 1475, + 1476, + 1437, + 180, + 1590, + 505, + 583, + 753 + ] + } + } + } +] diff --git a/evals/datasets/coqa-context-relevancy.json b/evals/datasets/coqa-context-relevancy.json new file mode 100644 index 0000000..ac72863 --- /dev/null +++ b/evals/datasets/coqa-context-relevancy.json @@ -0,0 +1,4826 @@ +[ + { + "input": { + "input": "What color was Cotton?", + "context": "a little white kitten named Cotton" + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Once upon a time, in a barn near a farm house, there lived a little white kitten named Cotton. Cotton lived high up in a nice warm place above the barn where all of the farmer's horses slept. But Cotton wasn't alone in her little home above the barn, oh no. She shared her hay bed with her mommy and 5 other sisters. All of her sisters were cute and fluffy, like Cotton. But she was the only white one in the bunch. The rest of her sisters were all orange with beautiful white tiger stripes like Cotton's mommy. Being different made Cotton quite sad. She often wished she looked like the rest of her family. So one day, when Cotton found a can of the old farmer's orange paint, she used it to paint herself like them. When her mommy and sisters found her they started laughing. \n\n\"What are you doing, Cotton?!\" \n\n\"I only wanted to be more like you\". \n\nCotton's mommy rubbed her face on Cotton's and said \"Oh Cotton, but your fur is so pretty and special, like you. We would never want you to be any other way\". And with that, Cotton's mommy picked her up and dropped her into a big bucket of water. When Cotton came out she was herself again. Her sisters licked her face until Cotton's fur was all all dry. \n\n\"Don't ever do that again, Cotton!\" they all cried. \"Next time you might mess up that pretty white fur of yours and we wouldn't want that!\" \n\nThen Cotton thought, \"I change my mind. I like being special\".", + "questions": [ + "What color was Cotton?", + "Where did she live?", + "Did she live alone?", + "Who did she live with?", + "What color were her sisters?", + "Was Cotton happy that she looked different than the rest of her family?", + "What did she do to try to make herself the same color as her sisters?", + "Whose paint was it?", + "What did Cotton's mother and siblings do when they saw her painted orange?", + "Where did Cotton's mother put her to clean the paint off?", + "What did the other cats do when Cotton emerged from the bucket of water?", + "Did they want Cotton to change the color of her fur?" + ], + "answers": { + "input_text": [ + "white", + "in a barn", + "no", + "with her mommy and 5 sisters", + "orange and white", + "no", + "she painted herself", + "the farmer", + "they started laughing", + "a bucket of water", + "licked her face", + "no" + ], + "answer_start": [ + 59, + 18, + 196, + 281, + 428, + 512, + 678, + 647, + 718, + 1035, + 1143, + 965 + ], + "answer_end": [ + 93, + 80, + 215, + 315, + 490, + 549, + 716, + 676, + 776, + 1097, + 1170, + 1008 + ] + } + } + }, + { + "input": { + "input": "What color was Cotton?", + "context": "in a barn near a farm house, there lived a little white kitten" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Once upon a time, in a barn near a farm house, there lived a little white kitten named Cotton. Cotton lived high up in a nice warm place above the barn where all of the farmer's horses slept. But Cotton wasn't alone in her little home above the barn, oh no. She shared her hay bed with her mommy and 5 other sisters. All of her sisters were cute and fluffy, like Cotton. But she was the only white one in the bunch. The rest of her sisters were all orange with beautiful white tiger stripes like Cotton's mommy. Being different made Cotton quite sad. She often wished she looked like the rest of her family. So one day, when Cotton found a can of the old farmer's orange paint, she used it to paint herself like them. When her mommy and sisters found her they started laughing. \n\n\"What are you doing, Cotton?!\" \n\n\"I only wanted to be more like you\". \n\nCotton's mommy rubbed her face on Cotton's and said \"Oh Cotton, but your fur is so pretty and special, like you. We would never want you to be any other way\". And with that, Cotton's mommy picked her up and dropped her into a big bucket of water. When Cotton came out she was herself again. Her sisters licked her face until Cotton's fur was all all dry. \n\n\"Don't ever do that again, Cotton!\" they all cried. \"Next time you might mess up that pretty white fur of yours and we wouldn't want that!\" \n\nThen Cotton thought, \"I change my mind. I like being special\".", + "questions": [ + "What color was Cotton?", + "Where did she live?", + "Did she live alone?", + "Who did she live with?", + "What color were her sisters?", + "Was Cotton happy that she looked different than the rest of her family?", + "What did she do to try to make herself the same color as her sisters?", + "Whose paint was it?", + "What did Cotton's mother and siblings do when they saw her painted orange?", + "Where did Cotton's mother put her to clean the paint off?", + "What did the other cats do when Cotton emerged from the bucket of water?", + "Did they want Cotton to change the color of her fur?" + ], + "answers": { + "input_text": [ + "white", + "in a barn", + "no", + "with her mommy and 5 sisters", + "orange and white", + "no", + "she painted herself", + "the farmer", + "they started laughing", + "a bucket of water", + "licked her face", + "no" + ], + "answer_start": [ + 59, + 18, + 196, + 281, + 428, + 512, + 678, + 647, + 718, + 1035, + 1143, + 965 + ], + "answer_end": [ + 93, + 80, + 215, + 315, + 490, + 549, + 716, + 676, + 776, + 1097, + 1170, + 1008 + ] + } + } + }, + { + "input": { + "input": "What color was Cotton?", + "context": "a little white kitten named Cotton in a barn near a farm house, there lived a little white kitten" + }, + "expected": 0.35051546391752575, + "metadata": { + "source": "mctest", + "story": "Once upon a time, in a barn near a farm house, there lived a little white kitten named Cotton. Cotton lived high up in a nice warm place above the barn where all of the farmer's horses slept. But Cotton wasn't alone in her little home above the barn, oh no. She shared her hay bed with her mommy and 5 other sisters. All of her sisters were cute and fluffy, like Cotton. But she was the only white one in the bunch. The rest of her sisters were all orange with beautiful white tiger stripes like Cotton's mommy. Being different made Cotton quite sad. She often wished she looked like the rest of her family. So one day, when Cotton found a can of the old farmer's orange paint, she used it to paint herself like them. When her mommy and sisters found her they started laughing. \n\n\"What are you doing, Cotton?!\" \n\n\"I only wanted to be more like you\". \n\nCotton's mommy rubbed her face on Cotton's and said \"Oh Cotton, but your fur is so pretty and special, like you. We would never want you to be any other way\". And with that, Cotton's mommy picked her up and dropped her into a big bucket of water. When Cotton came out she was herself again. Her sisters licked her face until Cotton's fur was all all dry. \n\n\"Don't ever do that again, Cotton!\" they all cried. \"Next time you might mess up that pretty white fur of yours and we wouldn't want that!\" \n\nThen Cotton thought, \"I change my mind. I like being special\".", + "questions": [ + "What color was Cotton?", + "Where did she live?", + "Did she live alone?", + "Who did she live with?", + "What color were her sisters?", + "Was Cotton happy that she looked different than the rest of her family?", + "What did she do to try to make herself the same color as her sisters?", + "Whose paint was it?", + "What did Cotton's mother and siblings do when they saw her painted orange?", + "Where did Cotton's mother put her to clean the paint off?", + "What did the other cats do when Cotton emerged from the bucket of water?", + "Did they want Cotton to change the color of her fur?" + ], + "answers": { + "input_text": [ + "white", + "in a barn", + "no", + "with her mommy and 5 sisters", + "orange and white", + "no", + "she painted herself", + "the farmer", + "they started laughing", + "a bucket of water", + "licked her face", + "no" + ], + "answer_start": [ + 59, + 18, + 196, + 281, + 428, + 512, + 678, + 647, + 718, + 1035, + 1143, + 965 + ], + "answer_end": [ + 93, + 80, + 215, + 315, + 490, + 549, + 716, + 676, + 776, + 1097, + 1170, + 1008 + ] + } + } + }, + { + "input": { + "input": "what was the name of the fish", + "context": " Asta." + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Once there was a beautiful fish named Asta. Asta lived in the ocean. There were lots of other fish in the ocean where Asta lived. They played all day long. \n\nOne day, a bottle floated by over the heads of Asta and his friends. They looked up and saw the bottle. \"What is it?\" said Asta's friend Sharkie. \"It looks like a bird's belly,\" said Asta. But when they swam closer, it was not a bird's belly. It was hard and clear, and there was something inside it. \n\nThe bottle floated above them. They wanted to open it. They wanted to see what was inside. So they caught the bottle and carried it down to the bottom of the ocean. They cracked it open on a rock. When they got it open, they found what was inside. It was a note. The note was written in orange crayon on white paper. Asta could not read the note. Sharkie could not read the note. They took the note to Asta's papa. \"What does it say?\" they asked. \n\nAsta's papa read the note. He told Asta and Sharkie, \"This note is from a little girl. She wants to be your friend. If you want to be her friend, we can write a note to her. But you have to find another bottle so we can send it to her.\" And that is what they did.", + "questions": [ + "what was the name of the fish", + "What looked like a birds belly", + "who said that", + "Was Sharkie a friend?", + "did they get the bottle?", + "What was in it", + "Did a little boy write the note", + "Who could read the note", + "What did they do with the note", + "did they write back", + "were they excited" + ], + "answers": { + "input_text": [ + "Asta.", + "a bottle", + "Asta.", + "Yes", + "Yes", + "a note", + "No", + "Asta's papa", + "unknown", + "yes", + "unknown" + ], + "answer_start": [ + 37, + 167, + 303, + 281, + 552, + 708, + 964, + 910, + -1, + 1056, + -1 + ], + "answer_end": [ + 43, + 175, + 346, + 302, + 577, + 723, + 995, + 935, + -1, + 1173, + -1 + ] + } + } + }, + { + "input": { + "input": "what was the name of the fish", + "context": "a bottle" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Once there was a beautiful fish named Asta. Asta lived in the ocean. There were lots of other fish in the ocean where Asta lived. They played all day long. \n\nOne day, a bottle floated by over the heads of Asta and his friends. They looked up and saw the bottle. \"What is it?\" said Asta's friend Sharkie. \"It looks like a bird's belly,\" said Asta. But when they swam closer, it was not a bird's belly. It was hard and clear, and there was something inside it. \n\nThe bottle floated above them. They wanted to open it. They wanted to see what was inside. So they caught the bottle and carried it down to the bottom of the ocean. They cracked it open on a rock. When they got it open, they found what was inside. It was a note. The note was written in orange crayon on white paper. Asta could not read the note. Sharkie could not read the note. They took the note to Asta's papa. \"What does it say?\" they asked. \n\nAsta's papa read the note. He told Asta and Sharkie, \"This note is from a little girl. She wants to be your friend. If you want to be her friend, we can write a note to her. But you have to find another bottle so we can send it to her.\" And that is what they did.", + "questions": [ + "what was the name of the fish", + "What looked like a birds belly", + "who said that", + "Was Sharkie a friend?", + "did they get the bottle?", + "What was in it", + "Did a little boy write the note", + "Who could read the note", + "What did they do with the note", + "did they write back", + "were they excited" + ], + "answers": { + "input_text": [ + "Asta.", + "a bottle", + "Asta.", + "Yes", + "Yes", + "a note", + "No", + "Asta's papa", + "unknown", + "yes", + "unknown" + ], + "answer_start": [ + 37, + 167, + 303, + 281, + 552, + 708, + 964, + 910, + -1, + 1056, + -1 + ], + "answer_end": [ + 43, + 175, + 346, + 302, + 577, + 723, + 995, + 935, + -1, + 1173, + -1 + ] + } + } + }, + { + "input": { + "input": "what was the name of the fish", + "context": " Asta. a bottle" + }, + "expected": 0.4, + "metadata": { + "source": "mctest", + "story": "Once there was a beautiful fish named Asta. Asta lived in the ocean. There were lots of other fish in the ocean where Asta lived. They played all day long. \n\nOne day, a bottle floated by over the heads of Asta and his friends. They looked up and saw the bottle. \"What is it?\" said Asta's friend Sharkie. \"It looks like a bird's belly,\" said Asta. But when they swam closer, it was not a bird's belly. It was hard and clear, and there was something inside it. \n\nThe bottle floated above them. They wanted to open it. They wanted to see what was inside. So they caught the bottle and carried it down to the bottom of the ocean. They cracked it open on a rock. When they got it open, they found what was inside. It was a note. The note was written in orange crayon on white paper. Asta could not read the note. Sharkie could not read the note. They took the note to Asta's papa. \"What does it say?\" they asked. \n\nAsta's papa read the note. He told Asta and Sharkie, \"This note is from a little girl. She wants to be your friend. If you want to be her friend, we can write a note to her. But you have to find another bottle so we can send it to her.\" And that is what they did.", + "questions": [ + "what was the name of the fish", + "What looked like a birds belly", + "who said that", + "Was Sharkie a friend?", + "did they get the bottle?", + "What was in it", + "Did a little boy write the note", + "Who could read the note", + "What did they do with the note", + "did they write back", + "were they excited" + ], + "answers": { + "input_text": [ + "Asta.", + "a bottle", + "Asta.", + "Yes", + "Yes", + "a note", + "No", + "Asta's papa", + "unknown", + "yes", + "unknown" + ], + "answer_start": [ + 37, + 167, + 303, + 281, + 552, + 708, + 964, + 910, + -1, + 1056, + -1 + ], + "answer_end": [ + 43, + 175, + 346, + 302, + 577, + 723, + 995, + 935, + -1, + 1173, + -1 + ] + } + } + }, + { + "input": { + "input": "Who is at the door?", + "context": "On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "My doorbell rings. On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy. In her other hand, she holds a paper carrier bag. \n\nI know this lady. It is not her first visit. She is the boy's grandmother, and her daughter bought the house next door last October. \n\nHer daughter, Nicole, speaks fluent English. But she is now in Shanghai, and her parents are here with the little boy. Nicole has obviously told her mother that I am having heart surgery soon, so her mother has decided I need more nutrients. \n\nI know what is inside the bag--a thermos with hot soup and a stainless-steel container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake. This has become an almost-daily practice. \n\nCommunication between us is somewhat affected by the fact that she doesn't speak English and all I can say in Chinese is hello. Once, she brought an iPad as well as the food. She pointed to the screen, which displayed a message from her daughter telling me that her mother wanted to know if the food was all right and whether it was too salty. I am not used to iPads, so she indicated I should go with her to her house. Then, she handed the iPad to her husband and almost immediately I found myself looking at Nicole in Shanghai and discussing her mother's cooking and salt intake. Instantly, tears welled in my eyes. \n\n\"Your mother just can't be bringing me meals like this all the time,\" I insisted. \"I can hardly do dishes in return.\" \n\n\"Oh, no, Lucy.\" Nicole said. \"Mum doesn't like western food. Don't worry about it; she has to cook for the three of them anyway, and she wants to do it.\" \n\nThe doorbell keeps ringing and there is the familiar brown paper carrier bag, handed smilingly to me. \n\nI am now working on some more Chinese words--it's the least I can do after such display of kindness. \n\n\"Thank you\" is, of course, the first one. Somehow, it seems inadequate.", + "questions": [ + "Who is at the door?", + "Is she carrying something?", + "What?", + "Do I know her?", + "Who is her daughter?", + "Where does Nicole live?", + "How is she related to the boy?", + "What is in the bag?", + "Has she done this before?", + "Why?", + "What has helped us communicate?", + "What kind of dishes does she bring?", + "What do I do to help communicate with her?", + "Do she continue bringing the bag?", + "What is the first phrase I learn?" + ], + "answers": { + "input_text": [ + "An elderly Chinese lady and a little boy", + "Yes", + "a paper carrier bag", + "Yes", + "Nicole", + "Shanghai", + "mother", + "food", + "Yes", + "I am having heart surgery soon, so her mother has decided I need more nutrients", + "an iPad", + "hot soup and a container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake", + "I am now working on some more Chinese words", + "Yes", + "\"Thank you\"" + ], + "answer_start": [ + 19, + 136, + 146, + 169, + 304, + 348, + 214, + 579, + 727, + 423, + 917, + 594, + 1771, + 1667, + 1874 + ], + "answer_end": [ + 115, + 165, + 165, + 185, + 324, + 375, + 302, + 725, + 769, + 544, + 924, + 725, + 1814, + 1769, + 1885 + ] + } + } + }, + { + "input": { + "input": "Who is at the door?", + "context": "she holds a paper carrier bag" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "My doorbell rings. On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy. In her other hand, she holds a paper carrier bag. \n\nI know this lady. It is not her first visit. She is the boy's grandmother, and her daughter bought the house next door last October. \n\nHer daughter, Nicole, speaks fluent English. But she is now in Shanghai, and her parents are here with the little boy. Nicole has obviously told her mother that I am having heart surgery soon, so her mother has decided I need more nutrients. \n\nI know what is inside the bag--a thermos with hot soup and a stainless-steel container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake. This has become an almost-daily practice. \n\nCommunication between us is somewhat affected by the fact that she doesn't speak English and all I can say in Chinese is hello. Once, she brought an iPad as well as the food. She pointed to the screen, which displayed a message from her daughter telling me that her mother wanted to know if the food was all right and whether it was too salty. I am not used to iPads, so she indicated I should go with her to her house. Then, she handed the iPad to her husband and almost immediately I found myself looking at Nicole in Shanghai and discussing her mother's cooking and salt intake. Instantly, tears welled in my eyes. \n\n\"Your mother just can't be bringing me meals like this all the time,\" I insisted. \"I can hardly do dishes in return.\" \n\n\"Oh, no, Lucy.\" Nicole said. \"Mum doesn't like western food. Don't worry about it; she has to cook for the three of them anyway, and she wants to do it.\" \n\nThe doorbell keeps ringing and there is the familiar brown paper carrier bag, handed smilingly to me. \n\nI am now working on some more Chinese words--it's the least I can do after such display of kindness. \n\n\"Thank you\" is, of course, the first one. Somehow, it seems inadequate.", + "questions": [ + "Who is at the door?", + "Is she carrying something?", + "What?", + "Do I know her?", + "Who is her daughter?", + "Where does Nicole live?", + "How is she related to the boy?", + "What is in the bag?", + "Has she done this before?", + "Why?", + "What has helped us communicate?", + "What kind of dishes does she bring?", + "What do I do to help communicate with her?", + "Do she continue bringing the bag?", + "What is the first phrase I learn?" + ], + "answers": { + "input_text": [ + "An elderly Chinese lady and a little boy", + "Yes", + "a paper carrier bag", + "Yes", + "Nicole", + "Shanghai", + "mother", + "food", + "Yes", + "I am having heart surgery soon, so her mother has decided I need more nutrients", + "an iPad", + "hot soup and a container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake", + "I am now working on some more Chinese words", + "Yes", + "\"Thank you\"" + ], + "answer_start": [ + 19, + 136, + 146, + 169, + 304, + 348, + 214, + 579, + 727, + 423, + 917, + 594, + 1771, + 1667, + 1874 + ], + "answer_end": [ + 115, + 165, + 165, + 185, + 324, + 375, + 302, + 725, + 769, + 544, + 924, + 725, + 1814, + 1769, + 1885 + ] + } + } + }, + { + "input": { + "input": "Who is at the door?", + "context": "On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy she holds a paper carrier bag" + }, + "expected": 0.7619047619047619, + "metadata": { + "source": "race", + "story": "My doorbell rings. On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy. In her other hand, she holds a paper carrier bag. \n\nI know this lady. It is not her first visit. She is the boy's grandmother, and her daughter bought the house next door last October. \n\nHer daughter, Nicole, speaks fluent English. But she is now in Shanghai, and her parents are here with the little boy. Nicole has obviously told her mother that I am having heart surgery soon, so her mother has decided I need more nutrients. \n\nI know what is inside the bag--a thermos with hot soup and a stainless-steel container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake. This has become an almost-daily practice. \n\nCommunication between us is somewhat affected by the fact that she doesn't speak English and all I can say in Chinese is hello. Once, she brought an iPad as well as the food. She pointed to the screen, which displayed a message from her daughter telling me that her mother wanted to know if the food was all right and whether it was too salty. I am not used to iPads, so she indicated I should go with her to her house. Then, she handed the iPad to her husband and almost immediately I found myself looking at Nicole in Shanghai and discussing her mother's cooking and salt intake. Instantly, tears welled in my eyes. \n\n\"Your mother just can't be bringing me meals like this all the time,\" I insisted. \"I can hardly do dishes in return.\" \n\n\"Oh, no, Lucy.\" Nicole said. \"Mum doesn't like western food. Don't worry about it; she has to cook for the three of them anyway, and she wants to do it.\" \n\nThe doorbell keeps ringing and there is the familiar brown paper carrier bag, handed smilingly to me. \n\nI am now working on some more Chinese words--it's the least I can do after such display of kindness. \n\n\"Thank you\" is, of course, the first one. Somehow, it seems inadequate.", + "questions": [ + "Who is at the door?", + "Is she carrying something?", + "What?", + "Do I know her?", + "Who is her daughter?", + "Where does Nicole live?", + "How is she related to the boy?", + "What is in the bag?", + "Has she done this before?", + "Why?", + "What has helped us communicate?", + "What kind of dishes does she bring?", + "What do I do to help communicate with her?", + "Do she continue bringing the bag?", + "What is the first phrase I learn?" + ], + "answers": { + "input_text": [ + "An elderly Chinese lady and a little boy", + "Yes", + "a paper carrier bag", + "Yes", + "Nicole", + "Shanghai", + "mother", + "food", + "Yes", + "I am having heart surgery soon, so her mother has decided I need more nutrients", + "an iPad", + "hot soup and a container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake", + "I am now working on some more Chinese words", + "Yes", + "\"Thank you\"" + ], + "answer_start": [ + 19, + 136, + 146, + 169, + 304, + 348, + 214, + 579, + 727, + 423, + 917, + 594, + 1771, + 1667, + 1874 + ], + "answer_end": [ + 115, + 165, + 165, + 185, + 324, + 375, + 302, + 725, + 769, + 544, + 924, + 725, + 1814, + 1769, + 1885 + ] + } + } + }, + { + "input": { + "input": "Is someone in showbiz?", + "context": " Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died" + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "(CNN) -- Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. He was 69. \n\n\"We are deeply saddened by the loss of a great actor and a wonderful man,\" said his publicist, Lori De Waal, in a statement Monday. \"Dennis Farina was always warmhearted and professional, with a great sense of humor and passion for his profession. He will be greatly missed by his family, friends and colleagues.\" \n\nFarina, who had a long career as a police officer in Chicago, got into acting through director Michael Mann, who used him as a consultant and cast him in his 1981 movie, \"Thief.\" That role led to others in such Mann-created shows as \"Miami Vice\" (in which Farina played a mobster) and \"Crime Story\" (in which he starred as Lt. Mike Torello). \n\nFarina also had roles, generally as either cops or gangsters, in a number of movies, including \"Midnight Run\" (1988), \"Get Shorty\" (1995), \"The Mod Squad\" (1999) and \"Snatch\" (2000). \n\nIn 2004, he joined the cast of the long-running \"Law & Order\" after Jerry Orbach's departure, playing Detective Joe Fontana, a role he reprised on the spinoff \"Trial by Jury.\" Fontana was known for flashy clothes and an expensive car, a distinct counterpoint to Orbach's rumpled Lennie Briscoe. \n\nFarina was on \"Law & Order\" for two years, partnered with Jesse L. Martin's Ed Green. Martin's character became a senior detective after Farina left the show. ", + "questions": [ + "Is someone in showbiz?", + "Whom?", + "What did he do?", + "Is he still alive?", + "Was he in movies?", + "Anything recent?", + "What happened in the early 80's?", + "Who cast him?", + "What was the title of the movie?", + "What parts did he usually get?", + "What happened in 2004?", + "Which one?", + "Who did he portray?", + "Did he have a beater for a car?", + "What did he have?", + "Were the characters clothes frumpy?", + "What were they like?", + "Was he on the show for five years?", + "Was he always an actor?", + "What had he been before?" + ], + "answers": { + "input_text": [ + "Yes.", + "Dennis Farina", + "Actor", + "No", + "Yes", + "No", + "Farina was cast in a film", + "Michael Mann", + "\"Thief\"", + "cops or gangsters", + "He joined a TV show cast.", + "\"Law & Order\"", + "Detective Joe Fontana", + "No", + "An expensive car", + "No", + "Flashy", + "No", + "No", + "A cop" + ], + "answer_start": [ + 8, + 8, + 8, + 9, + 512, + 856, + 573, + 512, + 512, + 856, + 1041, + 1041, + 1041, + 1217, + 1216, + 1217, + 1217, + 1338, + 8, + 8 + ], + "answer_end": [ + 181, + 183, + 66, + 181, + 690, + 1039, + 690, + 662, + 690, + 1039, + 1103, + 1134, + 1165, + 1336, + 1336, + 1336, + 1336, + 1381, + 138, + 65 + ] + } + } + }, + { + "input": { + "input": "Is someone in showbiz?", + "context": " Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. " + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "(CNN) -- Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. He was 69. \n\n\"We are deeply saddened by the loss of a great actor and a wonderful man,\" said his publicist, Lori De Waal, in a statement Monday. \"Dennis Farina was always warmhearted and professional, with a great sense of humor and passion for his profession. He will be greatly missed by his family, friends and colleagues.\" \n\nFarina, who had a long career as a police officer in Chicago, got into acting through director Michael Mann, who used him as a consultant and cast him in his 1981 movie, \"Thief.\" That role led to others in such Mann-created shows as \"Miami Vice\" (in which Farina played a mobster) and \"Crime Story\" (in which he starred as Lt. Mike Torello). \n\nFarina also had roles, generally as either cops or gangsters, in a number of movies, including \"Midnight Run\" (1988), \"Get Shorty\" (1995), \"The Mod Squad\" (1999) and \"Snatch\" (2000). \n\nIn 2004, he joined the cast of the long-running \"Law & Order\" after Jerry Orbach's departure, playing Detective Joe Fontana, a role he reprised on the spinoff \"Trial by Jury.\" Fontana was known for flashy clothes and an expensive car, a distinct counterpoint to Orbach's rumpled Lennie Briscoe. \n\nFarina was on \"Law & Order\" for two years, partnered with Jesse L. Martin's Ed Green. Martin's character became a senior detective after Farina left the show. ", + "questions": [ + "Is someone in showbiz?", + "Whom?", + "What did he do?", + "Is he still alive?", + "Was he in movies?", + "Anything recent?", + "What happened in the early 80's?", + "Who cast him?", + "What was the title of the movie?", + "What parts did he usually get?", + "What happened in 2004?", + "Which one?", + "Who did he portray?", + "Did he have a beater for a car?", + "What did he have?", + "Were the characters clothes frumpy?", + "What were they like?", + "Was he on the show for five years?", + "Was he always an actor?", + "What had he been before?" + ], + "answers": { + "input_text": [ + "Yes.", + "Dennis Farina", + "Actor", + "No", + "Yes", + "No", + "Farina was cast in a film", + "Michael Mann", + "\"Thief\"", + "cops or gangsters", + "He joined a TV show cast.", + "\"Law & Order\"", + "Detective Joe Fontana", + "No", + "An expensive car", + "No", + "Flashy", + "No", + "No", + "A cop" + ], + "answer_start": [ + 8, + 8, + 8, + 9, + 512, + 856, + 573, + 512, + 512, + 856, + 1041, + 1041, + 1041, + 1217, + 1216, + 1217, + 1217, + 1338, + 8, + 8 + ], + "answer_end": [ + 181, + 183, + 66, + 181, + 690, + 1039, + 690, + 662, + 690, + 1039, + 1103, + 1134, + 1165, + 1336, + 1336, + 1336, + 1336, + 1381, + 138, + 65 + ] + } + } + }, + { + "input": { + "input": "Is someone in showbiz?", + "context": " Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. " + }, + "expected": 0.49570200573065903, + "metadata": { + "source": "cnn", + "story": "(CNN) -- Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. He was 69. \n\n\"We are deeply saddened by the loss of a great actor and a wonderful man,\" said his publicist, Lori De Waal, in a statement Monday. \"Dennis Farina was always warmhearted and professional, with a great sense of humor and passion for his profession. He will be greatly missed by his family, friends and colleagues.\" \n\nFarina, who had a long career as a police officer in Chicago, got into acting through director Michael Mann, who used him as a consultant and cast him in his 1981 movie, \"Thief.\" That role led to others in such Mann-created shows as \"Miami Vice\" (in which Farina played a mobster) and \"Crime Story\" (in which he starred as Lt. Mike Torello). \n\nFarina also had roles, generally as either cops or gangsters, in a number of movies, including \"Midnight Run\" (1988), \"Get Shorty\" (1995), \"The Mod Squad\" (1999) and \"Snatch\" (2000). \n\nIn 2004, he joined the cast of the long-running \"Law & Order\" after Jerry Orbach's departure, playing Detective Joe Fontana, a role he reprised on the spinoff \"Trial by Jury.\" Fontana was known for flashy clothes and an expensive car, a distinct counterpoint to Orbach's rumpled Lennie Briscoe. \n\nFarina was on \"Law & Order\" for two years, partnered with Jesse L. Martin's Ed Green. Martin's character became a senior detective after Farina left the show. ", + "questions": [ + "Is someone in showbiz?", + "Whom?", + "What did he do?", + "Is he still alive?", + "Was he in movies?", + "Anything recent?", + "What happened in the early 80's?", + "Who cast him?", + "What was the title of the movie?", + "What parts did he usually get?", + "What happened in 2004?", + "Which one?", + "Who did he portray?", + "Did he have a beater for a car?", + "What did he have?", + "Were the characters clothes frumpy?", + "What were they like?", + "Was he on the show for five years?", + "Was he always an actor?", + "What had he been before?" + ], + "answers": { + "input_text": [ + "Yes.", + "Dennis Farina", + "Actor", + "No", + "Yes", + "No", + "Farina was cast in a film", + "Michael Mann", + "\"Thief\"", + "cops or gangsters", + "He joined a TV show cast.", + "\"Law & Order\"", + "Detective Joe Fontana", + "No", + "An expensive car", + "No", + "Flashy", + "No", + "No", + "A cop" + ], + "answer_start": [ + 8, + 8, + 8, + 9, + 512, + 856, + 573, + 512, + 512, + 856, + 1041, + 1041, + 1041, + 1217, + 1216, + 1217, + 1217, + 1338, + 8, + 8 + ], + "answer_end": [ + 181, + 183, + 66, + 181, + 690, + 1039, + 690, + 662, + 690, + 1039, + 1103, + 1134, + 1165, + 1336, + 1336, + 1336, + 1336, + 1381, + 138, + 65 + ] + } + } + }, + { + "input": { + "input": "Where do Quinton and Kendra travel to and from every day?", + "context": "Kendra and Quinton travel to and from school every day" + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Kendra and Quinton travel to and from school every day. Kendra lives further from the bus stop than Quinton does, stops every morning at Quinton's house to join him to walk to the bus stop. Every afternoon, after school, when walking home from the bus stop they go in for cookies and milk that Quinton's mother has ready and waiting for them. Quinton can't eat cheese or cake so they had the same snack every day. They both work together on their homework and when they are done they play together. Kendra always makes sure to leave in time to get home for dinner. She doesn't want to miss story time which was right before bedtime. \n\nOne morning Kendra walked up to Quinton's house, she thought something might be wrong because normally Quinton was waiting outside for her and on this morning he was not to be found. Kendra went up to the door and knocked. She waited and waited and yet no one answered. She saw that Quinton's mother's car wasn't in their driveway which was weird. She waited for a few bit looking up and down the block and getting worried when Quinton was nowhere to be found. \n\nKendra didn't want to miss the bus to school and hurried off to make it in time. The bus driver saw that she was upset and that Quinton was not with her that morning. She told him what happened and he said that he was sure that everything would be okay. \n\nKendra got to school, ran to her teacher and told him what happened that morning. The teacher smiled and told her not to worry, Quinton's mother had called and he was going to the dentist and would be at school after lunch and that she would see him at the bus stop like normal tomorrow.", + "questions": [ + "Where do Quinton and Kendra travel to and from every day?", + "Does Quinton live further from the bus stop?", + "What do they do every afternoon after school?", + "Does Quinton eat cheese?", + "Do they play before their homework?", + "What does Kendra not want to miss?", + "When is that?", + "What happened when Kendra knocked on Quinton's door?", + "Did she see the car?", + "Did she miss the bus?", + "What did the bus driver see?", + "Did Kendra tell him why?", + "What did he say?", + "When she got to school, who did she tell?", + "Did he frown?", + "Who had called?", + "Where did he go?", + "When would he be back?" + ], + "answers": { + "input_text": [ + "school", + "No", + "go to Quentin's house", + "No", + "No", + "story time", + "right before bedtime", + "no one answered", + "No", + "No", + "that she was upset", + "yes", + "everything would be okay", + "her teacher", + "No", + "Quinton's mother", + "to the dentist", + "yes" + ], + "answer_start": [ + 0, + 56, + 190, + 343, + 414, + 565, + 601, + 888, + 906, + 1098, + 1179, + 1265, + 1296, + 1382, + 1436, + 1481, + 1514, + 1546 + ], + "answer_end": [ + 54, + 107, + 341, + 367, + 497, + 600, + 631, + 903, + 965, + 1177, + 1216, + 1291, + 1350, + 1434, + 1454, + 1509, + 1541, + 1576 + ] + } + } + }, + { + "input": { + "input": "Where do Quinton and Kendra travel to and from every day?", + "context": "Kendra lives further from the bus stop than Quinton" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Kendra and Quinton travel to and from school every day. Kendra lives further from the bus stop than Quinton does, stops every morning at Quinton's house to join him to walk to the bus stop. Every afternoon, after school, when walking home from the bus stop they go in for cookies and milk that Quinton's mother has ready and waiting for them. Quinton can't eat cheese or cake so they had the same snack every day. They both work together on their homework and when they are done they play together. Kendra always makes sure to leave in time to get home for dinner. She doesn't want to miss story time which was right before bedtime. \n\nOne morning Kendra walked up to Quinton's house, she thought something might be wrong because normally Quinton was waiting outside for her and on this morning he was not to be found. Kendra went up to the door and knocked. She waited and waited and yet no one answered. She saw that Quinton's mother's car wasn't in their driveway which was weird. She waited for a few bit looking up and down the block and getting worried when Quinton was nowhere to be found. \n\nKendra didn't want to miss the bus to school and hurried off to make it in time. The bus driver saw that she was upset and that Quinton was not with her that morning. She told him what happened and he said that he was sure that everything would be okay. \n\nKendra got to school, ran to her teacher and told him what happened that morning. The teacher smiled and told her not to worry, Quinton's mother had called and he was going to the dentist and would be at school after lunch and that she would see him at the bus stop like normal tomorrow.", + "questions": [ + "Where do Quinton and Kendra travel to and from every day?", + "Does Quinton live further from the bus stop?", + "What do they do every afternoon after school?", + "Does Quinton eat cheese?", + "Do they play before their homework?", + "What does Kendra not want to miss?", + "When is that?", + "What happened when Kendra knocked on Quinton's door?", + "Did she see the car?", + "Did she miss the bus?", + "What did the bus driver see?", + "Did Kendra tell him why?", + "What did he say?", + "When she got to school, who did she tell?", + "Did he frown?", + "Who had called?", + "Where did he go?", + "When would he be back?" + ], + "answers": { + "input_text": [ + "school", + "No", + "go to Quentin's house", + "No", + "No", + "story time", + "right before bedtime", + "no one answered", + "No", + "No", + "that she was upset", + "yes", + "everything would be okay", + "her teacher", + "No", + "Quinton's mother", + "to the dentist", + "yes" + ], + "answer_start": [ + 0, + 56, + 190, + 343, + 414, + 565, + 601, + 888, + 906, + 1098, + 1179, + 1265, + 1296, + 1382, + 1436, + 1481, + 1514, + 1546 + ], + "answer_end": [ + 54, + 107, + 341, + 367, + 497, + 600, + 631, + 903, + 965, + 1177, + 1216, + 1291, + 1350, + 1434, + 1454, + 1509, + 1541, + 1576 + ] + } + } + }, + { + "input": { + "input": "Where do Quinton and Kendra travel to and from every day?", + "context": "Kendra and Quinton travel to and from school every day Kendra lives further from the bus stop than Quinton" + }, + "expected": 0.5094339622641509, + "metadata": { + "source": "mctest", + "story": "Kendra and Quinton travel to and from school every day. Kendra lives further from the bus stop than Quinton does, stops every morning at Quinton's house to join him to walk to the bus stop. Every afternoon, after school, when walking home from the bus stop they go in for cookies and milk that Quinton's mother has ready and waiting for them. Quinton can't eat cheese or cake so they had the same snack every day. They both work together on their homework and when they are done they play together. Kendra always makes sure to leave in time to get home for dinner. She doesn't want to miss story time which was right before bedtime. \n\nOne morning Kendra walked up to Quinton's house, she thought something might be wrong because normally Quinton was waiting outside for her and on this morning he was not to be found. Kendra went up to the door and knocked. She waited and waited and yet no one answered. She saw that Quinton's mother's car wasn't in their driveway which was weird. She waited for a few bit looking up and down the block and getting worried when Quinton was nowhere to be found. \n\nKendra didn't want to miss the bus to school and hurried off to make it in time. The bus driver saw that she was upset and that Quinton was not with her that morning. She told him what happened and he said that he was sure that everything would be okay. \n\nKendra got to school, ran to her teacher and told him what happened that morning. The teacher smiled and told her not to worry, Quinton's mother had called and he was going to the dentist and would be at school after lunch and that she would see him at the bus stop like normal tomorrow.", + "questions": [ + "Where do Quinton and Kendra travel to and from every day?", + "Does Quinton live further from the bus stop?", + "What do they do every afternoon after school?", + "Does Quinton eat cheese?", + "Do they play before their homework?", + "What does Kendra not want to miss?", + "When is that?", + "What happened when Kendra knocked on Quinton's door?", + "Did she see the car?", + "Did she miss the bus?", + "What did the bus driver see?", + "Did Kendra tell him why?", + "What did he say?", + "When she got to school, who did she tell?", + "Did he frown?", + "Who had called?", + "Where did he go?", + "When would he be back?" + ], + "answers": { + "input_text": [ + "school", + "No", + "go to Quentin's house", + "No", + "No", + "story time", + "right before bedtime", + "no one answered", + "No", + "No", + "that she was upset", + "yes", + "everything would be okay", + "her teacher", + "No", + "Quinton's mother", + "to the dentist", + "yes" + ], + "answer_start": [ + 0, + 56, + 190, + 343, + 414, + 565, + 601, + 888, + 906, + 1098, + 1179, + 1265, + 1296, + 1382, + 1436, + 1481, + 1514, + 1546 + ], + "answer_end": [ + 54, + 107, + 341, + 367, + 497, + 600, + 631, + 903, + 965, + 1177, + 1216, + 1291, + 1350, + 1434, + 1454, + 1509, + 1541, + 1576 + ] + } + } + }, + { + "input": { + "input": "How many burroughs are there?", + "context": "five" + }, + "expected": 1, + "metadata": { + "source": "wikipedia", + "story": "Staten Island is one of the five boroughs of New York City in the U.S. state of New York. In the southwest of the city, Staten Island is the southernmost part of both the city and state of New York, with Conference House Park at the southern tip of the island and the state. The borough is separated from New Jersey by the Arthur Kill and the Kill Van Kull, and from the rest of New York by New York Bay. With a 2016 Census-estimated population of 476,015, Staten Island is the least populated of the boroughs but is the third-largest in area at . Staten Island is the only borough of New York with a non-Hispanic White majority. The borough is coextensive with Richmond County, and until 1975 was the Borough of Richmond. Its flag was later changed to reflect this. Staten Island has been sometimes called \"the forgotten borough\" by inhabitants who feel neglected by the city government. \n\nThe North Shore—especially the neighborhoods of St. George, Tompkinsville, Clifton, and Stapleton—is the most urban part of the island; it contains the designated St. George Historic District and the St. Paul's Avenue-Stapleton Heights Historic District, which feature large Victorian houses. The East Shore is home to the F.D.R. Boardwalk, the fourth-longest in the world. The South Shore, site of the 17th-century Dutch and French Huguenot settlement, developed rapidly beginning in the 1960s and 1970s and is now mostly suburban in character. The West Shore is the least populated and most industrial part of the island.", + "questions": [ + "How many burroughs are there?", + "in what city?", + "and state?", + "Is staten island one?", + "Where is it?", + "What separates it from new jersey?", + "What is its population?", + "Is it the most populated?", + "what ethnicity is the majority?", + "What is it sometimes called?", + "why?", + "what is the most urban part?", + "which neighborhoods?" + ], + "answers": { + "input_text": [ + "five", + "New York City", + "New York", + "Yes", + "In the southwest of the city", + "Arthur Kill and the Kill Van Kull", + "476,015", + "no", + "non-Hispanic White", + "the forgotten borough", + "because the inhabitants feel neglected by the city government", + "North Shore", + "St. George, Tompkinsville, Clifton, and Stapleton" + ], + "answer_start": [ + 28, + 45, + 80, + 17, + 88, + 322, + 448, + 477, + 600, + 808, + 831, + 894, + 939 + ], + "answer_end": [ + 32, + 58, + 88, + 21, + 119, + 356, + 455, + 493, + 620, + 829, + 890, + 906, + 988 + ] + } + } + }, + { + "input": { + "input": "How many burroughs are there?", + "context": "New York City" + }, + "expected": 0, + "metadata": { + "source": "wikipedia", + "story": "Staten Island is one of the five boroughs of New York City in the U.S. state of New York. In the southwest of the city, Staten Island is the southernmost part of both the city and state of New York, with Conference House Park at the southern tip of the island and the state. The borough is separated from New Jersey by the Arthur Kill and the Kill Van Kull, and from the rest of New York by New York Bay. With a 2016 Census-estimated population of 476,015, Staten Island is the least populated of the boroughs but is the third-largest in area at . Staten Island is the only borough of New York with a non-Hispanic White majority. The borough is coextensive with Richmond County, and until 1975 was the Borough of Richmond. Its flag was later changed to reflect this. Staten Island has been sometimes called \"the forgotten borough\" by inhabitants who feel neglected by the city government. \n\nThe North Shore—especially the neighborhoods of St. George, Tompkinsville, Clifton, and Stapleton—is the most urban part of the island; it contains the designated St. George Historic District and the St. Paul's Avenue-Stapleton Heights Historic District, which feature large Victorian houses. The East Shore is home to the F.D.R. Boardwalk, the fourth-longest in the world. The South Shore, site of the 17th-century Dutch and French Huguenot settlement, developed rapidly beginning in the 1960s and 1970s and is now mostly suburban in character. The West Shore is the least populated and most industrial part of the island.", + "questions": [ + "How many burroughs are there?", + "in what city?", + "and state?", + "Is staten island one?", + "Where is it?", + "What separates it from new jersey?", + "What is its population?", + "Is it the most populated?", + "what ethnicity is the majority?", + "What is it sometimes called?", + "why?", + "what is the most urban part?", + "which neighborhoods?" + ], + "answers": { + "input_text": [ + "five", + "New York City", + "New York", + "Yes", + "In the southwest of the city", + "Arthur Kill and the Kill Van Kull", + "476,015", + "no", + "non-Hispanic White", + "the forgotten borough", + "because the inhabitants feel neglected by the city government", + "North Shore", + "St. George, Tompkinsville, Clifton, and Stapleton" + ], + "answer_start": [ + 28, + 45, + 80, + 17, + 88, + 322, + 448, + 477, + 600, + 808, + 831, + 894, + 939 + ], + "answer_end": [ + 32, + 58, + 88, + 21, + 119, + 356, + 455, + 493, + 620, + 829, + 890, + 906, + 988 + ] + } + } + }, + { + "input": { + "input": "How many burroughs are there?", + "context": "five New York City" + }, + "expected": 0.2222222222222222, + "metadata": { + "source": "wikipedia", + "story": "Staten Island is one of the five boroughs of New York City in the U.S. state of New York. In the southwest of the city, Staten Island is the southernmost part of both the city and state of New York, with Conference House Park at the southern tip of the island and the state. The borough is separated from New Jersey by the Arthur Kill and the Kill Van Kull, and from the rest of New York by New York Bay. With a 2016 Census-estimated population of 476,015, Staten Island is the least populated of the boroughs but is the third-largest in area at . Staten Island is the only borough of New York with a non-Hispanic White majority. The borough is coextensive with Richmond County, and until 1975 was the Borough of Richmond. Its flag was later changed to reflect this. Staten Island has been sometimes called \"the forgotten borough\" by inhabitants who feel neglected by the city government. \n\nThe North Shore—especially the neighborhoods of St. George, Tompkinsville, Clifton, and Stapleton—is the most urban part of the island; it contains the designated St. George Historic District and the St. Paul's Avenue-Stapleton Heights Historic District, which feature large Victorian houses. The East Shore is home to the F.D.R. Boardwalk, the fourth-longest in the world. The South Shore, site of the 17th-century Dutch and French Huguenot settlement, developed rapidly beginning in the 1960s and 1970s and is now mostly suburban in character. The West Shore is the least populated and most industrial part of the island.", + "questions": [ + "How many burroughs are there?", + "in what city?", + "and state?", + "Is staten island one?", + "Where is it?", + "What separates it from new jersey?", + "What is its population?", + "Is it the most populated?", + "what ethnicity is the majority?", + "What is it sometimes called?", + "why?", + "what is the most urban part?", + "which neighborhoods?" + ], + "answers": { + "input_text": [ + "five", + "New York City", + "New York", + "Yes", + "In the southwest of the city", + "Arthur Kill and the Kill Van Kull", + "476,015", + "no", + "non-Hispanic White", + "the forgotten borough", + "because the inhabitants feel neglected by the city government", + "North Shore", + "St. George, Tompkinsville, Clifton, and Stapleton" + ], + "answer_start": [ + 28, + 45, + 80, + 17, + 88, + 322, + 448, + 477, + 600, + 808, + 831, + 894, + 939 + ], + "answer_end": [ + 32, + 58, + 88, + 21, + 119, + 356, + 455, + 493, + 620, + 829, + 890, + 906, + 988 + ] + } + } + }, + { + "input": { + "input": "When did Reginald Eppes wake up?", + "context": "Reginald Eppes woke up at five in the morning" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "Thunder was coming when Reginald Eppes woke up at five in the morning. He checked the weather forecast. A violent storm was coming ,but it sounded like his small town wouldn't be hit too hard. But Eppes, a firefighter, had clearly known the power of these huge storms from experiences. \"Do you know where the flashlights are?\" he asked his wife. Danielle. Just then, thunder was all-around them. The moment he turned the flashlight on. The house lights went off. A second later, the kitchen windows were broken. Eppes and Danielle ran to their boys who were still sleeping in their bedroom. \n\n\"Get up, get up, R.J.! \" Eppes shouted, waving his flashlight. The sleepy boy moved to the edge of the bed. Eppes held out his arms and ordered his son to jump. He was too late. The roof was torn down. R.J. was buried ,under the pieces. \n\n\"I've lost him,\" Eppes thought. Quickly, he hurried to Joel to shield him. Glass, wood, and plaster ( ) hit them. Then something huge, heavy-maybe the washing machine-knocked into him. He hurt his arms, but he still held the flashlight in one hand. \n\nAfter a long period, the wind began to die down. Eppes found himself standing in the ruins of his home. Darkness lay all about him. Then he thought he saw a shape moving straight toward him. It was R.J., guided home by the light of his father's flashlight. \n\nAt the hospital later, R.J. described what had happened to him. \"I rushed out when the wall started moving I was scared. My mom and dad were gone. Pieces of glass hit my back, and something hit my neck really hard. \" \n\nR.J. had been raised up into the air by the wind and dropped back to the ground. Amazingly, R.J. was not hurt badly. Of all his family, Eppes was hurt most seriously.", + "questions": [ + "When did Reginald Eppes wake up?", + "What was the first thing he checked?", + "Was there a storm headed that way?", + "What was his profession?", + "Did the house lights go out?", + "What device did they use when the power went out?", + "Who was buried under the roof?", + "Who did he need to shield?", + "What were they hit by?", + "Was RJ badly hurt?", + "Who was hurt the worst?", + "What guided RJ home?" + ], + "answers": { + "input_text": [ + "Five in the morning", + "Weather forecast", + "Yes", + "Firefighter", + "Yes", + "Flashlight", + "R.J.", + "Joel", + "Glass, wood, plaster, and maybe the washing machine", + "No", + "Eppes", + "The flashlight" + ], + "answer_start": [ + 24, + 71, + 104, + 193, + 396, + 396, + 771, + 864, + 907, + 1641, + 1696, + 1274 + ], + "answer_end": [ + 69, + 102, + 130, + 217, + 461, + 461, + 829, + 906, + 1016, + 1677, + 1726, + 1339 + ] + } + } + }, + { + "input": { + "input": "When did Reginald Eppes wake up?", + "context": "He checked the weather forecast" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "Thunder was coming when Reginald Eppes woke up at five in the morning. He checked the weather forecast. A violent storm was coming ,but it sounded like his small town wouldn't be hit too hard. But Eppes, a firefighter, had clearly known the power of these huge storms from experiences. \"Do you know where the flashlights are?\" he asked his wife. Danielle. Just then, thunder was all-around them. The moment he turned the flashlight on. The house lights went off. A second later, the kitchen windows were broken. Eppes and Danielle ran to their boys who were still sleeping in their bedroom. \n\n\"Get up, get up, R.J.! \" Eppes shouted, waving his flashlight. The sleepy boy moved to the edge of the bed. Eppes held out his arms and ordered his son to jump. He was too late. The roof was torn down. R.J. was buried ,under the pieces. \n\n\"I've lost him,\" Eppes thought. Quickly, he hurried to Joel to shield him. Glass, wood, and plaster ( ) hit them. Then something huge, heavy-maybe the washing machine-knocked into him. He hurt his arms, but he still held the flashlight in one hand. \n\nAfter a long period, the wind began to die down. Eppes found himself standing in the ruins of his home. Darkness lay all about him. Then he thought he saw a shape moving straight toward him. It was R.J., guided home by the light of his father's flashlight. \n\nAt the hospital later, R.J. described what had happened to him. \"I rushed out when the wall started moving I was scared. My mom and dad were gone. Pieces of glass hit my back, and something hit my neck really hard. \" \n\nR.J. had been raised up into the air by the wind and dropped back to the ground. Amazingly, R.J. was not hurt badly. Of all his family, Eppes was hurt most seriously.", + "questions": [ + "When did Reginald Eppes wake up?", + "What was the first thing he checked?", + "Was there a storm headed that way?", + "What was his profession?", + "Did the house lights go out?", + "What device did they use when the power went out?", + "Who was buried under the roof?", + "Who did he need to shield?", + "What were they hit by?", + "Was RJ badly hurt?", + "Who was hurt the worst?", + "What guided RJ home?" + ], + "answers": { + "input_text": [ + "Five in the morning", + "Weather forecast", + "Yes", + "Firefighter", + "Yes", + "Flashlight", + "R.J.", + "Joel", + "Glass, wood, plaster, and maybe the washing machine", + "No", + "Eppes", + "The flashlight" + ], + "answer_start": [ + 24, + 71, + 104, + 193, + 396, + 396, + 771, + 864, + 907, + 1641, + 1696, + 1274 + ], + "answer_end": [ + 69, + 102, + 130, + 217, + 461, + 461, + 829, + 906, + 1016, + 1677, + 1726, + 1339 + ] + } + } + }, + { + "input": { + "input": "When did Reginald Eppes wake up?", + "context": "Reginald Eppes woke up at five in the morning He checked the weather forecast" + }, + "expected": 0.5844155844155844, + "metadata": { + "source": "race", + "story": "Thunder was coming when Reginald Eppes woke up at five in the morning. He checked the weather forecast. A violent storm was coming ,but it sounded like his small town wouldn't be hit too hard. But Eppes, a firefighter, had clearly known the power of these huge storms from experiences. \"Do you know where the flashlights are?\" he asked his wife. Danielle. Just then, thunder was all-around them. The moment he turned the flashlight on. The house lights went off. A second later, the kitchen windows were broken. Eppes and Danielle ran to their boys who were still sleeping in their bedroom. \n\n\"Get up, get up, R.J.! \" Eppes shouted, waving his flashlight. The sleepy boy moved to the edge of the bed. Eppes held out his arms and ordered his son to jump. He was too late. The roof was torn down. R.J. was buried ,under the pieces. \n\n\"I've lost him,\" Eppes thought. Quickly, he hurried to Joel to shield him. Glass, wood, and plaster ( ) hit them. Then something huge, heavy-maybe the washing machine-knocked into him. He hurt his arms, but he still held the flashlight in one hand. \n\nAfter a long period, the wind began to die down. Eppes found himself standing in the ruins of his home. Darkness lay all about him. Then he thought he saw a shape moving straight toward him. It was R.J., guided home by the light of his father's flashlight. \n\nAt the hospital later, R.J. described what had happened to him. \"I rushed out when the wall started moving I was scared. My mom and dad were gone. Pieces of glass hit my back, and something hit my neck really hard. \" \n\nR.J. had been raised up into the air by the wind and dropped back to the ground. Amazingly, R.J. was not hurt badly. Of all his family, Eppes was hurt most seriously.", + "questions": [ + "When did Reginald Eppes wake up?", + "What was the first thing he checked?", + "Was there a storm headed that way?", + "What was his profession?", + "Did the house lights go out?", + "What device did they use when the power went out?", + "Who was buried under the roof?", + "Who did he need to shield?", + "What were they hit by?", + "Was RJ badly hurt?", + "Who was hurt the worst?", + "What guided RJ home?" + ], + "answers": { + "input_text": [ + "Five in the morning", + "Weather forecast", + "Yes", + "Firefighter", + "Yes", + "Flashlight", + "R.J.", + "Joel", + "Glass, wood, plaster, and maybe the washing machine", + "No", + "Eppes", + "The flashlight" + ], + "answer_start": [ + 24, + 71, + 104, + 193, + 396, + 396, + 771, + 864, + 907, + 1641, + 1696, + 1274 + ], + "answer_end": [ + 69, + 102, + 130, + 217, + 461, + 461, + 829, + 906, + 1016, + 1677, + 1726, + 1339 + ] + } + } + }, + { + "input": { + "input": "Whose house was searched?", + "context": "Gary Giordano" + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "(CNN) -- FBI agents on Friday night searched the Maryland home of the suspect in the recent disappearance of an American woman in Aruba, an agent said. \n\nThe search is occurring in the Gaithersburg residence of Gary Giordano, who is currently being held in an Aruban jail, FBI Special Agent Rich Wolf told CNN. \n\nAgents, wearing vests that said FBI and carrying empty cardboard and plastic boxes, arrived about 8:40 p.m. Friday. About 15 unmarked cars could be seen on the street, as well as a Montgomery County police vehicle. \n\nSupervisory Special Agent Philip Celestini, who was at the residence, declined to comment further on the search, citing the active investigation. \n\nAruban Solicitor General Taco Stein said earlier Friday that the suspect will appear in court Monday, where an investigating magistrate could order him held for at least eight more days, order him to remain on the island or release him outright due to a lack of evidence. \n\nGiordano was arrested by Aruban police on August 5, three days after Robyn Gardner was last seen near Baby Beach on the western tip of the Caribbean island. \n\nGiordano told authorities that he had been snorkeling with Gardner when he signaled to her to swim back, according to a statement. When he reached the beach, Gardner was nowhere to be found, Giordano allegedly said. \n\nThe area that Giordano led authorities to is a rocky, unsightly location that locals say is not a popular snorkeling spot. \n\nAlthough prosecutors have continued to identify the 50-year-old American man by his initials, GVG, they also released a photo of a man who appears to be Giordano. His attorney, Michael Lopez, also has said that his client is being held as a suspect in Gardner's death. Lopez has not returned telephone calls seeking comment. ", + "questions": [ + "Whose house was searched?", + "In what city?", + "County?", + "State?", + "Where is he now?", + "Why?", + "What organization is doing the search?", + "How many unmarked vehicles were there?", + "Who spoke for the Aruban government?", + "When will Giordano go to court?", + "How many days could he be held?", + "Who went missing?", + "Where?", + "What was she doing?", + "With whom?", + "Did she return safely?", + "Is the beach a good snorkeling place?", + "How old is he?", + "When was he arrested?", + "How many were snorkeling?" + ], + "answers": { + "input_text": [ + "Gary Giordano", + "Gaithersburg", + "Montgomery County", + "Maryland", + "Aruban jail", + "suspect in the recent disappearance of an American woman", + "FBI", + "15", + "Aruban Solicitor General Taco Stein", + "Monday", + "at least eight more days", + "Robyn Gardne", + "ast seen near Baby Beach", + "snorkeling", + "Giordano", + "No, Gardner was nowhere to be found", + "locals say is not a popular snorkeling spot.", + "50", + "August 5", + "2, Giordano told authorities that he had been snorkeling with Gardner" + ], + "answer_start": [ + 211, + 184, + 494, + 48, + 260, + 70, + 345, + 435, + 678, + 772, + 839, + 1021, + 1040, + 1154, + 1111, + 1269, + 1407, + 1506, + 993, + 1111 + ], + "answer_end": [ + 224, + 197, + 511, + 57, + 271, + 126, + 348, + 437, + 713, + 778, + 863, + 1033, + 1064, + 1164, + 1119, + 1300, + 1452, + 1508, + 1002, + 1177 + ] + } + } + }, + { + "input": { + "input": "Whose house was searched?", + "context": " Gaithersburg" + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "(CNN) -- FBI agents on Friday night searched the Maryland home of the suspect in the recent disappearance of an American woman in Aruba, an agent said. \n\nThe search is occurring in the Gaithersburg residence of Gary Giordano, who is currently being held in an Aruban jail, FBI Special Agent Rich Wolf told CNN. \n\nAgents, wearing vests that said FBI and carrying empty cardboard and plastic boxes, arrived about 8:40 p.m. Friday. About 15 unmarked cars could be seen on the street, as well as a Montgomery County police vehicle. \n\nSupervisory Special Agent Philip Celestini, who was at the residence, declined to comment further on the search, citing the active investigation. \n\nAruban Solicitor General Taco Stein said earlier Friday that the suspect will appear in court Monday, where an investigating magistrate could order him held for at least eight more days, order him to remain on the island or release him outright due to a lack of evidence. \n\nGiordano was arrested by Aruban police on August 5, three days after Robyn Gardner was last seen near Baby Beach on the western tip of the Caribbean island. \n\nGiordano told authorities that he had been snorkeling with Gardner when he signaled to her to swim back, according to a statement. When he reached the beach, Gardner was nowhere to be found, Giordano allegedly said. \n\nThe area that Giordano led authorities to is a rocky, unsightly location that locals say is not a popular snorkeling spot. \n\nAlthough prosecutors have continued to identify the 50-year-old American man by his initials, GVG, they also released a photo of a man who appears to be Giordano. His attorney, Michael Lopez, also has said that his client is being held as a suspect in Gardner's death. Lopez has not returned telephone calls seeking comment. ", + "questions": [ + "Whose house was searched?", + "In what city?", + "County?", + "State?", + "Where is he now?", + "Why?", + "What organization is doing the search?", + "How many unmarked vehicles were there?", + "Who spoke for the Aruban government?", + "When will Giordano go to court?", + "How many days could he be held?", + "Who went missing?", + "Where?", + "What was she doing?", + "With whom?", + "Did she return safely?", + "Is the beach a good snorkeling place?", + "How old is he?", + "When was he arrested?", + "How many were snorkeling?" + ], + "answers": { + "input_text": [ + "Gary Giordano", + "Gaithersburg", + "Montgomery County", + "Maryland", + "Aruban jail", + "suspect in the recent disappearance of an American woman", + "FBI", + "15", + "Aruban Solicitor General Taco Stein", + "Monday", + "at least eight more days", + "Robyn Gardne", + "ast seen near Baby Beach", + "snorkeling", + "Giordano", + "No, Gardner was nowhere to be found", + "locals say is not a popular snorkeling spot.", + "50", + "August 5", + "2, Giordano told authorities that he had been snorkeling with Gardner" + ], + "answer_start": [ + 211, + 184, + 494, + 48, + 260, + 70, + 345, + 435, + 678, + 772, + 839, + 1021, + 1040, + 1154, + 1111, + 1269, + 1407, + 1506, + 993, + 1111 + ], + "answer_end": [ + 224, + 197, + 511, + 57, + 271, + 126, + 348, + 437, + 713, + 778, + 863, + 1033, + 1064, + 1164, + 1119, + 1300, + 1452, + 1508, + 1002, + 1177 + ] + } + } + }, + { + "input": { + "input": "Whose house was searched?", + "context": "Gary Giordano Gaithersburg" + }, + "expected": 0.48148148148148145, + "metadata": { + "source": "cnn", + "story": "(CNN) -- FBI agents on Friday night searched the Maryland home of the suspect in the recent disappearance of an American woman in Aruba, an agent said. \n\nThe search is occurring in the Gaithersburg residence of Gary Giordano, who is currently being held in an Aruban jail, FBI Special Agent Rich Wolf told CNN. \n\nAgents, wearing vests that said FBI and carrying empty cardboard and plastic boxes, arrived about 8:40 p.m. Friday. About 15 unmarked cars could be seen on the street, as well as a Montgomery County police vehicle. \n\nSupervisory Special Agent Philip Celestini, who was at the residence, declined to comment further on the search, citing the active investigation. \n\nAruban Solicitor General Taco Stein said earlier Friday that the suspect will appear in court Monday, where an investigating magistrate could order him held for at least eight more days, order him to remain on the island or release him outright due to a lack of evidence. \n\nGiordano was arrested by Aruban police on August 5, three days after Robyn Gardner was last seen near Baby Beach on the western tip of the Caribbean island. \n\nGiordano told authorities that he had been snorkeling with Gardner when he signaled to her to swim back, according to a statement. When he reached the beach, Gardner was nowhere to be found, Giordano allegedly said. \n\nThe area that Giordano led authorities to is a rocky, unsightly location that locals say is not a popular snorkeling spot. \n\nAlthough prosecutors have continued to identify the 50-year-old American man by his initials, GVG, they also released a photo of a man who appears to be Giordano. His attorney, Michael Lopez, also has said that his client is being held as a suspect in Gardner's death. Lopez has not returned telephone calls seeking comment. ", + "questions": [ + "Whose house was searched?", + "In what city?", + "County?", + "State?", + "Where is he now?", + "Why?", + "What organization is doing the search?", + "How many unmarked vehicles were there?", + "Who spoke for the Aruban government?", + "When will Giordano go to court?", + "How many days could he be held?", + "Who went missing?", + "Where?", + "What was she doing?", + "With whom?", + "Did she return safely?", + "Is the beach a good snorkeling place?", + "How old is he?", + "When was he arrested?", + "How many were snorkeling?" + ], + "answers": { + "input_text": [ + "Gary Giordano", + "Gaithersburg", + "Montgomery County", + "Maryland", + "Aruban jail", + "suspect in the recent disappearance of an American woman", + "FBI", + "15", + "Aruban Solicitor General Taco Stein", + "Monday", + "at least eight more days", + "Robyn Gardne", + "ast seen near Baby Beach", + "snorkeling", + "Giordano", + "No, Gardner was nowhere to be found", + "locals say is not a popular snorkeling spot.", + "50", + "August 5", + "2, Giordano told authorities that he had been snorkeling with Gardner" + ], + "answer_start": [ + 211, + 184, + 494, + 48, + 260, + 70, + 345, + 435, + 678, + 772, + 839, + 1021, + 1040, + 1154, + 1111, + 1269, + 1407, + 1506, + 993, + 1111 + ], + "answer_end": [ + 224, + 197, + 511, + 57, + 271, + 126, + 348, + 437, + 713, + 778, + 863, + 1033, + 1064, + 1164, + 1119, + 1300, + 1452, + 1508, + 1002, + 1177 + ] + } + } + }, + { + "input": { + "input": "Which country consumes tea the most?", + "context": "It's Great Britain" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "Which country grows the most tea? The answer is India. It grows three times as much as China. Which country drinks the most tea? It's neither China nor Japan. It's Great Britain. In the wild, tea plants may be 30 feet tall. But a plant grown for market is pruned. Pruning keeps the plant only three or four feet tall. This is an easy height for tea picking. Only the two top leaves and bud of each new shoot are picked. So to make money, tea plantations must be huge. In general, there are two kinds of tea. Black tea and green tea. Black tea is fermented. In the process, the tea loses nearly all of its healthy qualities. Green tea is steamed right after the leaves are picked. Green tea _ its healthy qualities. For example, it may prevent heart disease. How did we get tea bag? The answer: by accident. Tea merchants used to send samples in tin boxes. This was costly. One merchant thought of a cheaper way. He sent samples in small silk bags. Customers would cut open the bag. They would brew the leaves as usual. One customer put the bag into a pot. Then he just poured hot water over it. And the tea bag was born. Shen Nong was the first to drink tea. (Shen was a Chinese emperor.) This was about 2737 B.C. Shen had bad digestion. So he drank several cups of hot water daily. One day something happened. Leaves from a wild tea tree fell into the hot water pot. The next cup was poured. The water was now colored. Shen sipped it. He liked it. He drank it all. Shen was proud of his new drink. He served it to his guests. Word spread. People thought this way. Tea is good enough for the Emperor. So it must be good enough for the people. Tea became the drink of China.", + "questions": [ + "Which country consumes tea the most?", + "Which country grows it the most?", + "How tall is the tea plant?", + "What did they do to green tea after picking it?", + "What good thing do the tea do to the health?", + "How was the tea created?", + "Who took the tea first?", + "When did he take it?", + "Was he happy with it?", + "How did his body react to the tea?" + ], + "answers": { + "input_text": [ + "Great Britain", + "India.", + "may be 30 feet tall", + "prune it", + "may prevent heart disease.", + "by accident", + "Shen Nong", + "about 2737 B.C", + "yes", + "unknown" + ], + "answer_start": [ + 159, + 34, + 196, + 224, + 731, + 794, + 1120, + 1190, + 1436, + -1 + ], + "answer_end": [ + 177, + 54, + 222, + 264, + 757, + 805, + 1158, + 1212, + 1448, + -1 + ] + } + } + }, + { + "input": { + "input": "Which country consumes tea the most?", + "context": "The answer is India." + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "Which country grows the most tea? The answer is India. It grows three times as much as China. Which country drinks the most tea? It's neither China nor Japan. It's Great Britain. In the wild, tea plants may be 30 feet tall. But a plant grown for market is pruned. Pruning keeps the plant only three or four feet tall. This is an easy height for tea picking. Only the two top leaves and bud of each new shoot are picked. So to make money, tea plantations must be huge. In general, there are two kinds of tea. Black tea and green tea. Black tea is fermented. In the process, the tea loses nearly all of its healthy qualities. Green tea is steamed right after the leaves are picked. Green tea _ its healthy qualities. For example, it may prevent heart disease. How did we get tea bag? The answer: by accident. Tea merchants used to send samples in tin boxes. This was costly. One merchant thought of a cheaper way. He sent samples in small silk bags. Customers would cut open the bag. They would brew the leaves as usual. One customer put the bag into a pot. Then he just poured hot water over it. And the tea bag was born. Shen Nong was the first to drink tea. (Shen was a Chinese emperor.) This was about 2737 B.C. Shen had bad digestion. So he drank several cups of hot water daily. One day something happened. Leaves from a wild tea tree fell into the hot water pot. The next cup was poured. The water was now colored. Shen sipped it. He liked it. He drank it all. Shen was proud of his new drink. He served it to his guests. Word spread. People thought this way. Tea is good enough for the Emperor. So it must be good enough for the people. Tea became the drink of China.", + "questions": [ + "Which country consumes tea the most?", + "Which country grows it the most?", + "How tall is the tea plant?", + "What did they do to green tea after picking it?", + "What good thing do the tea do to the health?", + "How was the tea created?", + "Who took the tea first?", + "When did he take it?", + "Was he happy with it?", + "How did his body react to the tea?" + ], + "answers": { + "input_text": [ + "Great Britain", + "India.", + "may be 30 feet tall", + "prune it", + "may prevent heart disease.", + "by accident", + "Shen Nong", + "about 2737 B.C", + "yes", + "unknown" + ], + "answer_start": [ + 159, + 34, + 196, + 224, + 731, + 794, + 1120, + 1190, + 1436, + -1 + ], + "answer_end": [ + 177, + 54, + 222, + 264, + 757, + 805, + 1158, + 1212, + 1448, + -1 + ] + } + } + }, + { + "input": { + "input": "Which country consumes tea the most?", + "context": "It's Great Britain The answer is India." + }, + "expected": 0.46153846153846156, + "metadata": { + "source": "race", + "story": "Which country grows the most tea? The answer is India. It grows three times as much as China. Which country drinks the most tea? It's neither China nor Japan. It's Great Britain. In the wild, tea plants may be 30 feet tall. But a plant grown for market is pruned. Pruning keeps the plant only three or four feet tall. This is an easy height for tea picking. Only the two top leaves and bud of each new shoot are picked. So to make money, tea plantations must be huge. In general, there are two kinds of tea. Black tea and green tea. Black tea is fermented. In the process, the tea loses nearly all of its healthy qualities. Green tea is steamed right after the leaves are picked. Green tea _ its healthy qualities. For example, it may prevent heart disease. How did we get tea bag? The answer: by accident. Tea merchants used to send samples in tin boxes. This was costly. One merchant thought of a cheaper way. He sent samples in small silk bags. Customers would cut open the bag. They would brew the leaves as usual. One customer put the bag into a pot. Then he just poured hot water over it. And the tea bag was born. Shen Nong was the first to drink tea. (Shen was a Chinese emperor.) This was about 2737 B.C. Shen had bad digestion. So he drank several cups of hot water daily. One day something happened. Leaves from a wild tea tree fell into the hot water pot. The next cup was poured. The water was now colored. Shen sipped it. He liked it. He drank it all. Shen was proud of his new drink. He served it to his guests. Word spread. People thought this way. Tea is good enough for the Emperor. So it must be good enough for the people. Tea became the drink of China.", + "questions": [ + "Which country consumes tea the most?", + "Which country grows it the most?", + "How tall is the tea plant?", + "What did they do to green tea after picking it?", + "What good thing do the tea do to the health?", + "How was the tea created?", + "Who took the tea first?", + "When did he take it?", + "Was he happy with it?", + "How did his body react to the tea?" + ], + "answers": { + "input_text": [ + "Great Britain", + "India.", + "may be 30 feet tall", + "prune it", + "may prevent heart disease.", + "by accident", + "Shen Nong", + "about 2737 B.C", + "yes", + "unknown" + ], + "answer_start": [ + 159, + 34, + 196, + 224, + 731, + 794, + 1120, + 1190, + 1436, + -1 + ], + "answer_end": [ + 177, + 54, + 222, + 264, + 757, + 805, + 1158, + 1212, + 1448, + -1 + ] + } + } + }, + { + "input": { + "input": "What news agency showed photos of American soldiers?", + "context": "The German news outlet Der Spiegel" + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "Kabul, Afghanistan (CNN) -- The German news outlet Der Spiegel has published photographs of what appear to be two U.S. soldiers in Afghanistan posing over the bodies of dead Afghans -- images which threaten to further complicate the American military effort there. \n\nTwo images show the soldiers kneeling by a bloody body sprawled over a patch of sand and grass. A third shows what appears to be two bodies propped up, back to back, against a post in front of a military vehicle. \n\nDer Spiegel identifies the soldiers as Spc. Jeremy Morlock and Pfc. Andrew Holmes, who are both facing charges relating to the wrongful deaths of Afghan civilians. \n\nSpecifically, Holmes is charged with the premeditated deaths of three civilians, possessing a dismembered human finger, wrongfully possessing photographs of human casualties, and smoking hashish. \n\nHe is also accused of conspiring with Morlock to shoot at a civilian and then toss a grenade so it would look like the soldiers were under attack. \n\nMorlock is charged with three counts of murder. He is accused of killing one Afghan civilian in January 2010 with a grenade and rifle; killing another in May 2010 in a similar manner; and shooting a third to death in February 2010. \n\nU.S. military rules also prohibit \"taking or retaining individual souvenirs or trophies,\" which the photographs may be construed as. \n\nThe trial for the two soldiers is being conducted at Joint Base Lewis-McChord in Washington. Morlock's court martial is slated to begin Wednesday, while the start date for Holmes' court martial has not been publicly announced. ", + "questions": [ + "What news agency showed photos of American soldiers?", + "From what country?", + "What were the soldiers doing in the photos?", + "What was the condition of the body?", + "What does another photo show?", + "Near what?", + "What could the photos be construed as?", + "What is the name of one of the soldiers?", + "The other?", + "What is Holmes being charged with?" + ], + "answers": { + "input_text": [ + "Der Spiegel", + "Germany", + "posing over the bodies of dead Afghans", + "bloody", + "propped up, back to back", + "military vehicle.", + "taking or retaining individual souvenirs or trophies", + "Jeremy Morlock", + "Pfc. Andrew Holmes", + "Holmes is charged with the premeditated deaths of three civilians" + ], + "answer_start": [ + 28, + 28, + 77, + 267, + 363, + 362, + 1229, + 482, + 545, + 662 + ], + "answer_end": [ + 62, + 62, + 181, + 361, + 430, + 481, + 1362, + 541, + 563, + 727 + ] + } + } + }, + { + "input": { + "input": "What news agency showed photos of American soldiers?", + "context": "The German news outlet Der Spiegel" + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "Kabul, Afghanistan (CNN) -- The German news outlet Der Spiegel has published photographs of what appear to be two U.S. soldiers in Afghanistan posing over the bodies of dead Afghans -- images which threaten to further complicate the American military effort there. \n\nTwo images show the soldiers kneeling by a bloody body sprawled over a patch of sand and grass. A third shows what appears to be two bodies propped up, back to back, against a post in front of a military vehicle. \n\nDer Spiegel identifies the soldiers as Spc. Jeremy Morlock and Pfc. Andrew Holmes, who are both facing charges relating to the wrongful deaths of Afghan civilians. \n\nSpecifically, Holmes is charged with the premeditated deaths of three civilians, possessing a dismembered human finger, wrongfully possessing photographs of human casualties, and smoking hashish. \n\nHe is also accused of conspiring with Morlock to shoot at a civilian and then toss a grenade so it would look like the soldiers were under attack. \n\nMorlock is charged with three counts of murder. He is accused of killing one Afghan civilian in January 2010 with a grenade and rifle; killing another in May 2010 in a similar manner; and shooting a third to death in February 2010. \n\nU.S. military rules also prohibit \"taking or retaining individual souvenirs or trophies,\" which the photographs may be construed as. \n\nThe trial for the two soldiers is being conducted at Joint Base Lewis-McChord in Washington. Morlock's court martial is slated to begin Wednesday, while the start date for Holmes' court martial has not been publicly announced. ", + "questions": [ + "What news agency showed photos of American soldiers?", + "From what country?", + "What were the soldiers doing in the photos?", + "What was the condition of the body?", + "What does another photo show?", + "Near what?", + "What could the photos be construed as?", + "What is the name of one of the soldiers?", + "The other?", + "What is Holmes being charged with?" + ], + "answers": { + "input_text": [ + "Der Spiegel", + "Germany", + "posing over the bodies of dead Afghans", + "bloody", + "propped up, back to back", + "military vehicle.", + "taking or retaining individual souvenirs or trophies", + "Jeremy Morlock", + "Pfc. Andrew Holmes", + "Holmes is charged with the premeditated deaths of three civilians" + ], + "answer_start": [ + 28, + 28, + 77, + 267, + 363, + 362, + 1229, + 482, + 545, + 662 + ], + "answer_end": [ + 62, + 62, + 181, + 361, + 430, + 481, + 1362, + 541, + 563, + 727 + ] + } + } + }, + { + "input": { + "input": "What news agency showed photos of American soldiers?", + "context": "The German news outlet Der Spiegel The German news outlet Der Spiegel" + }, + "expected": 0.4927536231884058, + "metadata": { + "source": "cnn", + "story": "Kabul, Afghanistan (CNN) -- The German news outlet Der Spiegel has published photographs of what appear to be two U.S. soldiers in Afghanistan posing over the bodies of dead Afghans -- images which threaten to further complicate the American military effort there. \n\nTwo images show the soldiers kneeling by a bloody body sprawled over a patch of sand and grass. A third shows what appears to be two bodies propped up, back to back, against a post in front of a military vehicle. \n\nDer Spiegel identifies the soldiers as Spc. Jeremy Morlock and Pfc. Andrew Holmes, who are both facing charges relating to the wrongful deaths of Afghan civilians. \n\nSpecifically, Holmes is charged with the premeditated deaths of three civilians, possessing a dismembered human finger, wrongfully possessing photographs of human casualties, and smoking hashish. \n\nHe is also accused of conspiring with Morlock to shoot at a civilian and then toss a grenade so it would look like the soldiers were under attack. \n\nMorlock is charged with three counts of murder. He is accused of killing one Afghan civilian in January 2010 with a grenade and rifle; killing another in May 2010 in a similar manner; and shooting a third to death in February 2010. \n\nU.S. military rules also prohibit \"taking or retaining individual souvenirs or trophies,\" which the photographs may be construed as. \n\nThe trial for the two soldiers is being conducted at Joint Base Lewis-McChord in Washington. Morlock's court martial is slated to begin Wednesday, while the start date for Holmes' court martial has not been publicly announced. ", + "questions": [ + "What news agency showed photos of American soldiers?", + "From what country?", + "What were the soldiers doing in the photos?", + "What was the condition of the body?", + "What does another photo show?", + "Near what?", + "What could the photos be construed as?", + "What is the name of one of the soldiers?", + "The other?", + "What is Holmes being charged with?" + ], + "answers": { + "input_text": [ + "Der Spiegel", + "Germany", + "posing over the bodies of dead Afghans", + "bloody", + "propped up, back to back", + "military vehicle.", + "taking or retaining individual souvenirs or trophies", + "Jeremy Morlock", + "Pfc. Andrew Holmes", + "Holmes is charged with the premeditated deaths of three civilians" + ], + "answer_start": [ + 28, + 28, + 77, + 267, + 363, + 362, + 1229, + 482, + 545, + 662 + ], + "answer_end": [ + 62, + 62, + 181, + 361, + 430, + 481, + 1362, + 541, + 563, + 727 + ] + } + } + }, + { + "input": { + "input": "Who are the two boxer featured in this article?", + "context": "American Floyd Mayweather and Filipino Manny Pacquiao" + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "(CNN)A chiseled boxer's Instagram feed shows him making constant references to the Bible and enjoying gospel singing with his wife. \n\nAnother features his formidable opponent counting stacks of money, hanging out in strip clubs, and flashing diamond watches and Ferraris. \n\nWelcome to the world of boxing promotion, circa 2015. \n\nAmerican Floyd Mayweather and Filipino Manny Pacquiao are set to officially announce their heavily anticipated boxing match at a press conference in Los Angeles Wednesday. \n\nWith the combined purse for the May 2 bout in Las Vegas reported to touch $300 million pending viewership numbers, the incentives to self-promote could not be higher. \n\n\"Nowadays you have to be on social media to launch the fight and to build hype,\" says boxing promoter Nisse Sauerland, CEO of Team Sauerland. \"It couldn't be done without it.\" \n\nThirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. \n\nHe famously confirmed the fight via Shots, a photo sharing social media application that he's invested in, and displays links to his clothing brand, The Money Team, on all his accounts. \n\nAlong with professing to the be the best fighter of all time, he could also stake a claim to be one of the greatest social media users in sports. \n\n\"I think they're both playing their roles,\" says Sauerland, who promotes over 45 boxers. \"You've got the bad guy and the good guy, really. You've got the guy who throws the money around (Mayweather), that's his image, and Pacquiao, he's the hope of a nation.\" ", + "questions": [ + "Who are the two boxer featured in this article?", + "What is Mayweathers nick name?", + "what is the other", + "which stand for?", + "what is the name of his clothing line?", + "Who is Sauerland?", + "how many people does he promote", + "what is the combined purse for this match?", + "how old is mayweather?", + "what do they say about pacquiao and his following?" + ], + "answers": { + "input_text": [ + "Floyd Mayweather and Manny Pacquiao", + "1 is the money man", + "TBE", + "The Best Ever", + "The Money Team,", + "a boxing promoter", + "over 45 boxers.", + "$300 million pending viewership numbers", + "38", + "just that it has bible references and shows him enjoying gos[e; singing with his wife" + ], + "answer_start": [ + 330, + 851, + 851, + 945, + 1175, + 753, + 1472, + 504, + 851, + 6 + ], + "answer_end": [ + 383, + 1085, + 971, + 970, + 1253, + 791, + 1511, + 671, + 884, + 132 + ] + } + } + }, + { + "input": { + "input": "Who are the two boxer featured in this article?", + "context": "Thirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. " + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "(CNN)A chiseled boxer's Instagram feed shows him making constant references to the Bible and enjoying gospel singing with his wife. \n\nAnother features his formidable opponent counting stacks of money, hanging out in strip clubs, and flashing diamond watches and Ferraris. \n\nWelcome to the world of boxing promotion, circa 2015. \n\nAmerican Floyd Mayweather and Filipino Manny Pacquiao are set to officially announce their heavily anticipated boxing match at a press conference in Los Angeles Wednesday. \n\nWith the combined purse for the May 2 bout in Las Vegas reported to touch $300 million pending viewership numbers, the incentives to self-promote could not be higher. \n\n\"Nowadays you have to be on social media to launch the fight and to build hype,\" says boxing promoter Nisse Sauerland, CEO of Team Sauerland. \"It couldn't be done without it.\" \n\nThirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. \n\nHe famously confirmed the fight via Shots, a photo sharing social media application that he's invested in, and displays links to his clothing brand, The Money Team, on all his accounts. \n\nAlong with professing to the be the best fighter of all time, he could also stake a claim to be one of the greatest social media users in sports. \n\n\"I think they're both playing their roles,\" says Sauerland, who promotes over 45 boxers. \"You've got the bad guy and the good guy, really. You've got the guy who throws the money around (Mayweather), that's his image, and Pacquiao, he's the hope of a nation.\" ", + "questions": [ + "Who are the two boxer featured in this article?", + "What is Mayweathers nick name?", + "what is the other", + "which stand for?", + "what is the name of his clothing line?", + "Who is Sauerland?", + "how many people does he promote", + "what is the combined purse for this match?", + "how old is mayweather?", + "what do they say about pacquiao and his following?" + ], + "answers": { + "input_text": [ + "Floyd Mayweather and Manny Pacquiao", + "1 is the money man", + "TBE", + "The Best Ever", + "The Money Team,", + "a boxing promoter", + "over 45 boxers.", + "$300 million pending viewership numbers", + "38", + "just that it has bible references and shows him enjoying gos[e; singing with his wife" + ], + "answer_start": [ + 330, + 851, + 851, + 945, + 1175, + 753, + 1472, + 504, + 851, + 6 + ], + "answer_end": [ + 383, + 1085, + 971, + 970, + 1253, + 791, + 1511, + 671, + 884, + 132 + ] + } + } + }, + { + "input": { + "input": "Who are the two boxer featured in this article?", + "context": "American Floyd Mayweather and Filipino Manny Pacquiao Thirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. " + }, + "expected": 0.1840277777777778, + "metadata": { + "source": "cnn", + "story": "(CNN)A chiseled boxer's Instagram feed shows him making constant references to the Bible and enjoying gospel singing with his wife. \n\nAnother features his formidable opponent counting stacks of money, hanging out in strip clubs, and flashing diamond watches and Ferraris. \n\nWelcome to the world of boxing promotion, circa 2015. \n\nAmerican Floyd Mayweather and Filipino Manny Pacquiao are set to officially announce their heavily anticipated boxing match at a press conference in Los Angeles Wednesday. \n\nWith the combined purse for the May 2 bout in Las Vegas reported to touch $300 million pending viewership numbers, the incentives to self-promote could not be higher. \n\n\"Nowadays you have to be on social media to launch the fight and to build hype,\" says boxing promoter Nisse Sauerland, CEO of Team Sauerland. \"It couldn't be done without it.\" \n\nThirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. \n\nHe famously confirmed the fight via Shots, a photo sharing social media application that he's invested in, and displays links to his clothing brand, The Money Team, on all his accounts. \n\nAlong with professing to the be the best fighter of all time, he could also stake a claim to be one of the greatest social media users in sports. \n\n\"I think they're both playing their roles,\" says Sauerland, who promotes over 45 boxers. \"You've got the bad guy and the good guy, really. You've got the guy who throws the money around (Mayweather), that's his image, and Pacquiao, he's the hope of a nation.\" ", + "questions": [ + "Who are the two boxer featured in this article?", + "What is Mayweathers nick name?", + "what is the other", + "which stand for?", + "what is the name of his clothing line?", + "Who is Sauerland?", + "how many people does he promote", + "what is the combined purse for this match?", + "how old is mayweather?", + "what do they say about pacquiao and his following?" + ], + "answers": { + "input_text": [ + "Floyd Mayweather and Manny Pacquiao", + "1 is the money man", + "TBE", + "The Best Ever", + "The Money Team,", + "a boxing promoter", + "over 45 boxers.", + "$300 million pending viewership numbers", + "38", + "just that it has bible references and shows him enjoying gos[e; singing with his wife" + ], + "answer_start": [ + 330, + 851, + 851, + 945, + 1175, + 753, + 1472, + 504, + 851, + 6 + ], + "answer_end": [ + 383, + 1085, + 971, + 970, + 1253, + 791, + 1511, + 671, + 884, + 132 + ] + } + } + }, + { + "input": { + "input": "What is the main topic?", + "context": "OCLC" + }, + "expected": 1, + "metadata": { + "source": "wikipedia", + "story": "OCLC, currently incorporated as OCLC Online Computer Library Center, Incorporated, is an American nonprofit cooperative organization \"dedicated to the public purposes of furthering access to the world's information and reducing information costs\". It was founded in 1967 as the Ohio College Library Center. OCLC and its member libraries cooperatively produce and maintain WorldCat, the largest online public access catalog (OPAC) in the world. OCLC is funded mainly by the fees that libraries have to pay for its services (around $200 million annually ). \n\nOCLC began in 1967, as the Ohio College Library Center, through a collaboration of Ohio university presidents, vice presidents, and library directors who wanted to create a cooperative, computerized network for Ohio libraries. The group first met on July 5, 1967 on the campus of the Ohio State University to sign the articles of incorporation for the nonprofit organization. The group hired Frederick G. Kilgour, a former Yale University medical school librarian, to design the shared cataloging system. Kilgour wished to merge the latest information storage and retrieval system of the time, the computer, with the oldest, the library. The plan was to merge the catalogs of Ohio libraries electronically through a computer network and database to streamline operations, control costs, and increase efficiency in library management. The goal of this network and database was to bring libraries together to cooperatively keep track of the world's information to best serve researchers and scholars. The first library to do online cataloging through OCLC was the Alden Library at Ohio University on August 26, 1971. This was the first occurrence of online cataloging by any library worldwide.", + "questions": [ + "What is the main topic?", + "What does it stand for?", + "When did it begin?", + "Was it founded the same year?", + "Where?", + "What location there?", + "What Yale student was hired by the organization?", + "Was he currently enrolled at the University?", + "What was his profession while there?", + "What does OCLC produce and maintain?", + "When did the group first gather?", + "Where?", + "Which was the first online library through them?", + "Where?", + "What could the site do?", + "On what date did this happen?", + "Had this been done before?" + ], + "answers": { + "input_text": [ + "OCLC", + "Online Computer Library Center", + "1967", + "Yes", + "Ohio", + "Ohio State University", + "Frederick G. Kilgour", + "He is not", + "medical school librarian", + "WorldCat", + "July 5, 1967", + "Ohio State University", + "Alden Library", + "Ohio University", + "online cataloging", + "August 26, 1971", + "no" + ], + "answer_start": [ + 32, + 37, + 571, + 806, + 278, + 841, + 949, + 971, + 995, + 372, + 806, + 841, + 1618, + 1636, + 1579, + 1654, + 1671 + ], + "answer_end": [ + 36, + 67, + 575, + 819, + 282, + 862, + 969, + 1020, + 1020, + 380, + 820, + 863, + 1632, + 1651, + 1597, + 1670, + 1746 + ] + } + } + }, + { + "input": { + "input": "What is the main topic?", + "context": "Online Computer Library Center" + }, + "expected": 0, + "metadata": { + "source": "wikipedia", + "story": "OCLC, currently incorporated as OCLC Online Computer Library Center, Incorporated, is an American nonprofit cooperative organization \"dedicated to the public purposes of furthering access to the world's information and reducing information costs\". It was founded in 1967 as the Ohio College Library Center. OCLC and its member libraries cooperatively produce and maintain WorldCat, the largest online public access catalog (OPAC) in the world. OCLC is funded mainly by the fees that libraries have to pay for its services (around $200 million annually ). \n\nOCLC began in 1967, as the Ohio College Library Center, through a collaboration of Ohio university presidents, vice presidents, and library directors who wanted to create a cooperative, computerized network for Ohio libraries. The group first met on July 5, 1967 on the campus of the Ohio State University to sign the articles of incorporation for the nonprofit organization. The group hired Frederick G. Kilgour, a former Yale University medical school librarian, to design the shared cataloging system. Kilgour wished to merge the latest information storage and retrieval system of the time, the computer, with the oldest, the library. The plan was to merge the catalogs of Ohio libraries electronically through a computer network and database to streamline operations, control costs, and increase efficiency in library management. The goal of this network and database was to bring libraries together to cooperatively keep track of the world's information to best serve researchers and scholars. The first library to do online cataloging through OCLC was the Alden Library at Ohio University on August 26, 1971. This was the first occurrence of online cataloging by any library worldwide.", + "questions": [ + "What is the main topic?", + "What does it stand for?", + "When did it begin?", + "Was it founded the same year?", + "Where?", + "What location there?", + "What Yale student was hired by the organization?", + "Was he currently enrolled at the University?", + "What was his profession while there?", + "What does OCLC produce and maintain?", + "When did the group first gather?", + "Where?", + "Which was the first online library through them?", + "Where?", + "What could the site do?", + "On what date did this happen?", + "Had this been done before?" + ], + "answers": { + "input_text": [ + "OCLC", + "Online Computer Library Center", + "1967", + "Yes", + "Ohio", + "Ohio State University", + "Frederick G. Kilgour", + "He is not", + "medical school librarian", + "WorldCat", + "July 5, 1967", + "Ohio State University", + "Alden Library", + "Ohio University", + "online cataloging", + "August 26, 1971", + "no" + ], + "answer_start": [ + 32, + 37, + 571, + 806, + 278, + 841, + 949, + 971, + 995, + 372, + 806, + 841, + 1618, + 1636, + 1579, + 1654, + 1671 + ], + "answer_end": [ + 36, + 67, + 575, + 819, + 282, + 862, + 969, + 1020, + 1020, + 380, + 820, + 863, + 1632, + 1651, + 1597, + 1670, + 1746 + ] + } + } + }, + { + "input": { + "input": "What is the main topic?", + "context": "OCLC Online Computer Library Center" + }, + "expected": 0.11428571428571428, + "metadata": { + "source": "wikipedia", + "story": "OCLC, currently incorporated as OCLC Online Computer Library Center, Incorporated, is an American nonprofit cooperative organization \"dedicated to the public purposes of furthering access to the world's information and reducing information costs\". It was founded in 1967 as the Ohio College Library Center. OCLC and its member libraries cooperatively produce and maintain WorldCat, the largest online public access catalog (OPAC) in the world. OCLC is funded mainly by the fees that libraries have to pay for its services (around $200 million annually ). \n\nOCLC began in 1967, as the Ohio College Library Center, through a collaboration of Ohio university presidents, vice presidents, and library directors who wanted to create a cooperative, computerized network for Ohio libraries. The group first met on July 5, 1967 on the campus of the Ohio State University to sign the articles of incorporation for the nonprofit organization. The group hired Frederick G. Kilgour, a former Yale University medical school librarian, to design the shared cataloging system. Kilgour wished to merge the latest information storage and retrieval system of the time, the computer, with the oldest, the library. The plan was to merge the catalogs of Ohio libraries electronically through a computer network and database to streamline operations, control costs, and increase efficiency in library management. The goal of this network and database was to bring libraries together to cooperatively keep track of the world's information to best serve researchers and scholars. The first library to do online cataloging through OCLC was the Alden Library at Ohio University on August 26, 1971. This was the first occurrence of online cataloging by any library worldwide.", + "questions": [ + "What is the main topic?", + "What does it stand for?", + "When did it begin?", + "Was it founded the same year?", + "Where?", + "What location there?", + "What Yale student was hired by the organization?", + "Was he currently enrolled at the University?", + "What was his profession while there?", + "What does OCLC produce and maintain?", + "When did the group first gather?", + "Where?", + "Which was the first online library through them?", + "Where?", + "What could the site do?", + "On what date did this happen?", + "Had this been done before?" + ], + "answers": { + "input_text": [ + "OCLC", + "Online Computer Library Center", + "1967", + "Yes", + "Ohio", + "Ohio State University", + "Frederick G. Kilgour", + "He is not", + "medical school librarian", + "WorldCat", + "July 5, 1967", + "Ohio State University", + "Alden Library", + "Ohio University", + "online cataloging", + "August 26, 1971", + "no" + ], + "answer_start": [ + 32, + 37, + 571, + 806, + 278, + 841, + 949, + 971, + 995, + 372, + 806, + 841, + 1618, + 1636, + 1579, + 1654, + 1671 + ], + "answer_end": [ + 36, + 67, + 575, + 819, + 282, + 862, + 969, + 1020, + 1020, + 380, + 820, + 863, + 1632, + 1651, + 1597, + 1670, + 1746 + ] + } + } + }, + { + "input": { + "input": "Did they go inside the shop?", + "context": "No" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "John: Here's a good shop. Shall we buy mother's birthday present here? Mary: Yes, that's a good idea. Shall we go inside? Tom: No. Let's look in the window. Shall we buy her a sweater? Anne: Er, no. It'll soon be summer. Let's buy her a blouse to wear. There's a nice one in the window. John: No, she has two blouses. Let's buy a ring. Mary: Oh, no! They're diamond rings. Look at the price. The cheapest is $15. John: A real diamond ring is at least $500.They only look like diamonds. Tom: Shall we buy a table? It's only $15. Anne: It doesn't look good, just like a big box. Mum likes chairs. Tom: But they haven't any here. Mary: What about a pen? So cheap! Only $10. John: She has a lot of pens and pencils. All of them are new. Tom: Oh, look here. These flowers are beautiful. Mary: They aren't real and will never die. John: And they're the cheapest of all these things. Yes, let's buy them. Anne: All right.", + "questions": [ + "Did they go inside the shop?", + "What did they end up buying?", + "How much was a table?", + "Did the purchase it?", + "Why not?", + "What season will it be soon?", + "How much was the cheap diamond?", + "Was it a real set?", + "What was $10?", + "Why didn't the children purchase her a nice shirt?", + "What was the occasion for buying a gift?", + "What is the cost of a real diamond?" + ], + "answers": { + "input_text": [ + "No", + "They bought flowers.", + "It's $15.", + "No", + "It doesn't look good.", + "summer", + "$15", + "No", + "a pen", + "She already has two blouses", + "Mother's birthday", + "at least $500" + ], + "answer_start": [ + 127, + 759, + 523, + 534, + 534, + 213, + 408, + 456, + 644, + 297, + 48, + 442 + ], + "answer_end": [ + 129, + 766, + 526, + 555, + 554, + 220, + 411, + 484, + 649, + 316, + 56, + 455 + ] + } + } + }, + { + "input": { + "input": "Did they go inside the shop?", + "context": "flowers" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "John: Here's a good shop. Shall we buy mother's birthday present here? Mary: Yes, that's a good idea. Shall we go inside? Tom: No. Let's look in the window. Shall we buy her a sweater? Anne: Er, no. It'll soon be summer. Let's buy her a blouse to wear. There's a nice one in the window. John: No, she has two blouses. Let's buy a ring. Mary: Oh, no! They're diamond rings. Look at the price. The cheapest is $15. John: A real diamond ring is at least $500.They only look like diamonds. Tom: Shall we buy a table? It's only $15. Anne: It doesn't look good, just like a big box. Mum likes chairs. Tom: But they haven't any here. Mary: What about a pen? So cheap! Only $10. John: She has a lot of pens and pencils. All of them are new. Tom: Oh, look here. These flowers are beautiful. Mary: They aren't real and will never die. John: And they're the cheapest of all these things. Yes, let's buy them. Anne: All right.", + "questions": [ + "Did they go inside the shop?", + "What did they end up buying?", + "How much was a table?", + "Did the purchase it?", + "Why not?", + "What season will it be soon?", + "How much was the cheap diamond?", + "Was it a real set?", + "What was $10?", + "Why didn't the children purchase her a nice shirt?", + "What was the occasion for buying a gift?", + "What is the cost of a real diamond?" + ], + "answers": { + "input_text": [ + "No", + "They bought flowers.", + "It's $15.", + "No", + "It doesn't look good.", + "summer", + "$15", + "No", + "a pen", + "She already has two blouses", + "Mother's birthday", + "at least $500" + ], + "answer_start": [ + 127, + 759, + 523, + 534, + 534, + 213, + 408, + 456, + 644, + 297, + 48, + 442 + ], + "answer_end": [ + 129, + 766, + 526, + 555, + 554, + 220, + 411, + 484, + 649, + 316, + 56, + 455 + ] + } + } + }, + { + "input": { + "input": "Did they go inside the shop?", + "context": "No flowers" + }, + "expected": 0.2, + "metadata": { + "source": "race", + "story": "John: Here's a good shop. Shall we buy mother's birthday present here? Mary: Yes, that's a good idea. Shall we go inside? Tom: No. Let's look in the window. Shall we buy her a sweater? Anne: Er, no. It'll soon be summer. Let's buy her a blouse to wear. There's a nice one in the window. John: No, she has two blouses. Let's buy a ring. Mary: Oh, no! They're diamond rings. Look at the price. The cheapest is $15. John: A real diamond ring is at least $500.They only look like diamonds. Tom: Shall we buy a table? It's only $15. Anne: It doesn't look good, just like a big box. Mum likes chairs. Tom: But they haven't any here. Mary: What about a pen? So cheap! Only $10. John: She has a lot of pens and pencils. All of them are new. Tom: Oh, look here. These flowers are beautiful. Mary: They aren't real and will never die. John: And they're the cheapest of all these things. Yes, let's buy them. Anne: All right.", + "questions": [ + "Did they go inside the shop?", + "What did they end up buying?", + "How much was a table?", + "Did the purchase it?", + "Why not?", + "What season will it be soon?", + "How much was the cheap diamond?", + "Was it a real set?", + "What was $10?", + "Why didn't the children purchase her a nice shirt?", + "What was the occasion for buying a gift?", + "What is the cost of a real diamond?" + ], + "answers": { + "input_text": [ + "No", + "They bought flowers.", + "It's $15.", + "No", + "It doesn't look good.", + "summer", + "$15", + "No", + "a pen", + "She already has two blouses", + "Mother's birthday", + "at least $500" + ], + "answer_start": [ + 127, + 759, + 523, + 534, + 534, + 213, + 408, + 456, + 644, + 297, + 48, + 442 + ], + "answer_end": [ + 129, + 766, + 526, + 555, + 554, + 220, + 411, + 484, + 649, + 316, + 56, + 455 + ] + } + } + }, + { + "input": { + "input": "Where'd Tommy live?", + "context": "by a big lake by the woods" + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Tommy was a little boy who lived by a big lake by the woods. One day he saw two little mice looking at the water. They seemed very sad. \n\n\"What is wrong?\" Tommy asked. \n\nMary, one of the little mice, stood. \"My brother and I love to see new things. We want to see what is on the other side of the lake. But we do not know how to build a boat to get there.\" \n\nTommy smiled. \"I have plenty of toy boats,\" he said. \"They are your size!\" \n\n\"Oh, thank you!\" said Steve, the other little mouse. \"We would be very glad if we could borrow it!\" \n\nTommy went to his house and returned with a small toy boat. The boat had a big sail to make the boat go. Mary and Steve climbed on and Tommy put the boat into the water. \n\nThe boat sailed away across the water! Mary and Steve laughed with joy and had great fun riding the toy boat. \n\nSoon, they reached the other side of the lake. Many people were having fun swimming and splashing in the water. Steve and Mary loved seeing all the new things and people. \n\nA man threw a ball into the water. It landed by the toy boat. The man's big dog came splashing into the water to fetch it. The big waves splashed the little boat every which way! Mary and Steve got very wet. \n\nMary and Steve went back home after that. They told Tommy of what they saw, and they all laughed at the big dog's wave. Tomorrow the mice would see even more of the lake on Tommy's toy boat!", + "questions": [ + "Where'd Tommy live?", + "what'd he see?", + "What does Tommy have?", + "Did the mice have names?", + "what were they?", + "where'd he get the boats?", + "What's the mice do?", + "What were people doing?", + "What did the man do?", + "What did the do do?" + ], + "answers": { + "input_text": [ + "by a big lake by the woods", + "mice", + "toy boats", + "yes", + "Mary and Steve", + "his house", + "climbed on", + "swimming and splashing", + "threw a ball into the water", + "got very wet" + ], + "answer_start": [ + 33, + 76, + 381, + 170, + 749, + 552, + 658, + 897, + 1001, + 1189 + ], + "answer_end": [ + 59, + 91, + 400, + 198, + 763, + 561, + 668, + 933, + 1028, + 1201 + ] + } + } + }, + { + "input": { + "input": "Where'd Tommy live?", + "context": "two little mice" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Tommy was a little boy who lived by a big lake by the woods. One day he saw two little mice looking at the water. They seemed very sad. \n\n\"What is wrong?\" Tommy asked. \n\nMary, one of the little mice, stood. \"My brother and I love to see new things. We want to see what is on the other side of the lake. But we do not know how to build a boat to get there.\" \n\nTommy smiled. \"I have plenty of toy boats,\" he said. \"They are your size!\" \n\n\"Oh, thank you!\" said Steve, the other little mouse. \"We would be very glad if we could borrow it!\" \n\nTommy went to his house and returned with a small toy boat. The boat had a big sail to make the boat go. Mary and Steve climbed on and Tommy put the boat into the water. \n\nThe boat sailed away across the water! Mary and Steve laughed with joy and had great fun riding the toy boat. \n\nSoon, they reached the other side of the lake. Many people were having fun swimming and splashing in the water. Steve and Mary loved seeing all the new things and people. \n\nA man threw a ball into the water. It landed by the toy boat. The man's big dog came splashing into the water to fetch it. The big waves splashed the little boat every which way! Mary and Steve got very wet. \n\nMary and Steve went back home after that. They told Tommy of what they saw, and they all laughed at the big dog's wave. Tomorrow the mice would see even more of the lake on Tommy's toy boat!", + "questions": [ + "Where'd Tommy live?", + "what'd he see?", + "What does Tommy have?", + "Did the mice have names?", + "what were they?", + "where'd he get the boats?", + "What's the mice do?", + "What were people doing?", + "What did the man do?", + "What did the do do?" + ], + "answers": { + "input_text": [ + "by a big lake by the woods", + "mice", + "toy boats", + "yes", + "Mary and Steve", + "his house", + "climbed on", + "swimming and splashing", + "threw a ball into the water", + "got very wet" + ], + "answer_start": [ + 33, + 76, + 381, + 170, + 749, + 552, + 658, + 897, + 1001, + 1189 + ], + "answer_end": [ + 59, + 91, + 400, + 198, + 763, + 561, + 668, + 933, + 1028, + 1201 + ] + } + } + }, + { + "input": { + "input": "Where'd Tommy live?", + "context": "by a big lake by the woods two little mice" + }, + "expected": 0.6190476190476191, + "metadata": { + "source": "mctest", + "story": "Tommy was a little boy who lived by a big lake by the woods. One day he saw two little mice looking at the water. They seemed very sad. \n\n\"What is wrong?\" Tommy asked. \n\nMary, one of the little mice, stood. \"My brother and I love to see new things. We want to see what is on the other side of the lake. But we do not know how to build a boat to get there.\" \n\nTommy smiled. \"I have plenty of toy boats,\" he said. \"They are your size!\" \n\n\"Oh, thank you!\" said Steve, the other little mouse. \"We would be very glad if we could borrow it!\" \n\nTommy went to his house and returned with a small toy boat. The boat had a big sail to make the boat go. Mary and Steve climbed on and Tommy put the boat into the water. \n\nThe boat sailed away across the water! Mary and Steve laughed with joy and had great fun riding the toy boat. \n\nSoon, they reached the other side of the lake. Many people were having fun swimming and splashing in the water. Steve and Mary loved seeing all the new things and people. \n\nA man threw a ball into the water. It landed by the toy boat. The man's big dog came splashing into the water to fetch it. The big waves splashed the little boat every which way! Mary and Steve got very wet. \n\nMary and Steve went back home after that. They told Tommy of what they saw, and they all laughed at the big dog's wave. Tomorrow the mice would see even more of the lake on Tommy's toy boat!", + "questions": [ + "Where'd Tommy live?", + "what'd he see?", + "What does Tommy have?", + "Did the mice have names?", + "what were they?", + "where'd he get the boats?", + "What's the mice do?", + "What were people doing?", + "What did the man do?", + "What did the do do?" + ], + "answers": { + "input_text": [ + "by a big lake by the woods", + "mice", + "toy boats", + "yes", + "Mary and Steve", + "his house", + "climbed on", + "swimming and splashing", + "threw a ball into the water", + "got very wet" + ], + "answer_start": [ + 33, + 76, + 381, + 170, + 749, + 552, + 658, + 897, + 1001, + 1189 + ], + "answer_end": [ + 59, + 91, + 400, + 198, + 763, + 561, + 668, + 933, + 1028, + 1201 + ] + } + } + }, + { + "input": { + "input": "What happened to the hospital where Hans was?", + "context": "The hospital had been bombed" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "A German taxi-driver, Franz Bussman, recently found his brother who was thought to have been killed twenty years ago. \n\nWhile on a walking tour with his wife, he stopped to talk to a workman. After they had gone on, Mrs. Bussman said that the workman was closely like her husband and even suggested that he might be his brother. Franz laughed at the idea, pointing out that his brother had been killed in action during the war. Though Mrs. Busman knew this story quite well, she thought there was a chance in a million that she might be right. \n\nA few days later, she sent a boy to the workman to ask him if his name was Hans Bussman. Needless to say, the man's name was Hans Bussman. And he really was Franz's long-lost brother. \n\nWhen the brothers were reunited, Hans explained how it was that he was still alive. \n\nAfter having been wondered towards the end of the war, he had been sent to hospital and was separated from his unit . The hospital had been bombed and Hans had made his way back into Western Germany on foot. Meanwhile, his unit was lost and all records of him had been destroyed. Hans returned to his home, but the house had been bombed up. Guessing that his family had all been killed during an air-raid , Hans settled down in a village fifty miles away where he had remained ever since.", + "questions": [ + "What happened to the hospital where Hans was?", + "Was he with his unit at the time?", + "What country was he in?", + "Was he in the Eastern or Western part?", + "And which part did he need to get to?", + "Did he drive there?", + "Was the war nearly over by this time?", + "Was his house still standing?", + "Did he know what happened to his family?", + "What did he decide to do?", + "Did he stay there long?", + "What kind of job did he do?", + "Does he have a living brother?", + "What's his name?", + "Does he drive a car for a living?", + "Did the two brothers keep in contact the past twenty years?", + "Why didn't Franz stay in touch?", + "Who noticed the resemblance between the two men?", + "What did Franz think of that?", + "Did she give up at that point?" + ], + "answers": { + "input_text": [ + "The hospital had been bombed.", + "No.", + "Germany", + "Eastern Germany at the time of his hospital stay.", + "Western Germany", + "No", + "Yes", + "No", + "No, just guessed.", + "Hans settled down in a village fifty miles away.", + "Yes, for twenty years", + "a workman", + "Yes", + "Hans Bussman", + "Yes, Franz does.", + "No", + "He assumed Hans was dead.", + "Mrs. Bussman", + "Franz laughed at the idea", + "No" + ], + "answer_start": [ + 936, + 906, + 2, + 969, + 1001, + 1017, + 845, + 1129, + 1159, + 1225, + 100, + 181, + 689, + 671, + 2, + 732, + 373, + 215, + 329, + 546 + ], + "answer_end": [ + 964, + 933, + 9, + 1016, + 1016, + 1024, + 870, + 1157, + 1222, + 1267, + 112, + 190, + 728, + 683, + 35, + 763, + 474, + 280, + 355, + 634 + ] + } + } + }, + { + "input": { + "input": "What happened to the hospital where Hans was?", + "context": "was separated from his unit" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "A German taxi-driver, Franz Bussman, recently found his brother who was thought to have been killed twenty years ago. \n\nWhile on a walking tour with his wife, he stopped to talk to a workman. After they had gone on, Mrs. Bussman said that the workman was closely like her husband and even suggested that he might be his brother. Franz laughed at the idea, pointing out that his brother had been killed in action during the war. Though Mrs. Busman knew this story quite well, she thought there was a chance in a million that she might be right. \n\nA few days later, she sent a boy to the workman to ask him if his name was Hans Bussman. Needless to say, the man's name was Hans Bussman. And he really was Franz's long-lost brother. \n\nWhen the brothers were reunited, Hans explained how it was that he was still alive. \n\nAfter having been wondered towards the end of the war, he had been sent to hospital and was separated from his unit . The hospital had been bombed and Hans had made his way back into Western Germany on foot. Meanwhile, his unit was lost and all records of him had been destroyed. Hans returned to his home, but the house had been bombed up. Guessing that his family had all been killed during an air-raid , Hans settled down in a village fifty miles away where he had remained ever since.", + "questions": [ + "What happened to the hospital where Hans was?", + "Was he with his unit at the time?", + "What country was he in?", + "Was he in the Eastern or Western part?", + "And which part did he need to get to?", + "Did he drive there?", + "Was the war nearly over by this time?", + "Was his house still standing?", + "Did he know what happened to his family?", + "What did he decide to do?", + "Did he stay there long?", + "What kind of job did he do?", + "Does he have a living brother?", + "What's his name?", + "Does he drive a car for a living?", + "Did the two brothers keep in contact the past twenty years?", + "Why didn't Franz stay in touch?", + "Who noticed the resemblance between the two men?", + "What did Franz think of that?", + "Did she give up at that point?" + ], + "answers": { + "input_text": [ + "The hospital had been bombed.", + "No.", + "Germany", + "Eastern Germany at the time of his hospital stay.", + "Western Germany", + "No", + "Yes", + "No", + "No, just guessed.", + "Hans settled down in a village fifty miles away.", + "Yes, for twenty years", + "a workman", + "Yes", + "Hans Bussman", + "Yes, Franz does.", + "No", + "He assumed Hans was dead.", + "Mrs. Bussman", + "Franz laughed at the idea", + "No" + ], + "answer_start": [ + 936, + 906, + 2, + 969, + 1001, + 1017, + 845, + 1129, + 1159, + 1225, + 100, + 181, + 689, + 671, + 2, + 732, + 373, + 215, + 329, + 546 + ], + "answer_end": [ + 964, + 933, + 9, + 1016, + 1016, + 1024, + 870, + 1157, + 1222, + 1267, + 112, + 190, + 728, + 683, + 35, + 763, + 474, + 280, + 355, + 634 + ] + } + } + }, + { + "input": { + "input": "What happened to the hospital where Hans was?", + "context": "The hospital had been bombed was separated from his unit" + }, + "expected": 0.5, + "metadata": { + "source": "race", + "story": "A German taxi-driver, Franz Bussman, recently found his brother who was thought to have been killed twenty years ago. \n\nWhile on a walking tour with his wife, he stopped to talk to a workman. After they had gone on, Mrs. Bussman said that the workman was closely like her husband and even suggested that he might be his brother. Franz laughed at the idea, pointing out that his brother had been killed in action during the war. Though Mrs. Busman knew this story quite well, she thought there was a chance in a million that she might be right. \n\nA few days later, she sent a boy to the workman to ask him if his name was Hans Bussman. Needless to say, the man's name was Hans Bussman. And he really was Franz's long-lost brother. \n\nWhen the brothers were reunited, Hans explained how it was that he was still alive. \n\nAfter having been wondered towards the end of the war, he had been sent to hospital and was separated from his unit . The hospital had been bombed and Hans had made his way back into Western Germany on foot. Meanwhile, his unit was lost and all records of him had been destroyed. Hans returned to his home, but the house had been bombed up. Guessing that his family had all been killed during an air-raid , Hans settled down in a village fifty miles away where he had remained ever since.", + "questions": [ + "What happened to the hospital where Hans was?", + "Was he with his unit at the time?", + "What country was he in?", + "Was he in the Eastern or Western part?", + "And which part did he need to get to?", + "Did he drive there?", + "Was the war nearly over by this time?", + "Was his house still standing?", + "Did he know what happened to his family?", + "What did he decide to do?", + "Did he stay there long?", + "What kind of job did he do?", + "Does he have a living brother?", + "What's his name?", + "Does he drive a car for a living?", + "Did the two brothers keep in contact the past twenty years?", + "Why didn't Franz stay in touch?", + "Who noticed the resemblance between the two men?", + "What did Franz think of that?", + "Did she give up at that point?" + ], + "answers": { + "input_text": [ + "The hospital had been bombed.", + "No.", + "Germany", + "Eastern Germany at the time of his hospital stay.", + "Western Germany", + "No", + "Yes", + "No", + "No, just guessed.", + "Hans settled down in a village fifty miles away.", + "Yes, for twenty years", + "a workman", + "Yes", + "Hans Bussman", + "Yes, Franz does.", + "No", + "He assumed Hans was dead.", + "Mrs. Bussman", + "Franz laughed at the idea", + "No" + ], + "answer_start": [ + 936, + 906, + 2, + 969, + 1001, + 1017, + 845, + 1129, + 1159, + 1225, + 100, + 181, + 689, + 671, + 2, + 732, + 373, + 215, + 329, + 546 + ], + "answer_end": [ + 964, + 933, + 9, + 1016, + 1016, + 1024, + 870, + 1157, + 1222, + 1267, + 112, + 190, + 728, + 683, + 35, + 763, + 474, + 280, + 355, + 634 + ] + } + } + }, + { + "input": { + "input": "What worked her way northward?", + "context": "Northward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way" + }, + "expected": 1, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER XXII \n\nNorthward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way, threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs, daring passages so narrow and coral-patched that Captain Winters averred each day added a thousand grey hairs to his head, and dropping anchor off every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life. For Harley and Villa Kennan were in no hurry. So long as the way was interesting, they dared not how long it proved from anywhere to anywhere. \n\nDuring this time Jerry learned a new name for himself--or, rather, an entire series of names for himself. This was because of an aversion on Harley Kennan's part against renaming a named thing. \n\n\"A name he must have had,\" he argued to Villa. \"Haggin must have named him before he sailed on the _Arangi_. Therefore, nameless he must be until we get back to Tulagi and find out his real name.\" \n\n\"What's in a name?\" Villa had begun to tease. \n\n\"Everything,\" her husband retorted. \"Think of yourself, shipwrecked, called by your rescuers 'Mrs. Riggs,' or 'Mademoiselle de Maupin,' or just plain 'Topsy.' And think of me being called 'Benedict Arnold,' or ' Judas,' or . . . or . . . 'Haman.' No, keep him nameless, until we find out his original name.\" \n\n\"Must call him something,\" she objected. \"Can't think of him without thinking something.\" \n\n\"Then call him many names, but never the same name twice. Call him 'Dog' to-day, and 'Mister Dog' to-morrow, and the next day something else.\" ", + "questions": [ + "What worked her way northward?", + "What lay between the shore-reefs and outer-reefs?", + "Were the passages wide?", + "Who was the Captain?", + "Did he have red hair?", + "Were Harley and Villa in a hurry?", + "What coast did the Ariel work her way up leisurely?", + "Who argued to Villa that he must have a name?", + "Who began to tease Harley?", + "What ship had Haggin sailed on?", + "How long must he be nameless until?", + "Who was the husband she retorted something to?", + "Did she tell him to think of himself being in an airplane crash?", + "What would an awkward name to be called by rescuers be?", + "What's another one?", + "How about a third one?", + "Did she ask Villa to think of her being called Jesus?", + "Was there a lot of coral in the lagoon?", + "Where did the Ariel drop anchor off of?", + "Were there cannibals?" + ], + "answers": { + "input_text": [ + "The _Ariel_", + "Lagoon", + "No", + "Winters", + "No", + "No", + "Malaita", + "Harley Kennan", + "Villa", + "The Arangi", + "Until they get back to Tulagi", + "Harley Kennan", + "No", + "'Mrs. Riggs'", + "'Topsy'", + "'Mademoiselle de Maupin'", + "No", + "Yes", + "Every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life.", + "unknown" + ], + "answer_start": [ + 15, + 100, + 186, + 234, + 235, + 451, + 15, + 702, + 992, + 839, + 901, + 711, + 1, + 1039, + 1189, + 1149, + 1039, + 15, + 312, + -1 + ], + "answer_end": [ + 98, + 184, + 212, + 250, + 295, + 497, + 83, + 882, + 1037, + 900, + 988, + 1074, + 1583, + 1348, + 1197, + 1173, + 1348, + 229, + 450, + -1 + ] + } + } + }, + { + "input": { + "input": "What worked her way northward?", + "context": "threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs" + }, + "expected": 0, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER XXII \n\nNorthward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way, threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs, daring passages so narrow and coral-patched that Captain Winters averred each day added a thousand grey hairs to his head, and dropping anchor off every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life. For Harley and Villa Kennan were in no hurry. So long as the way was interesting, they dared not how long it proved from anywhere to anywhere. \n\nDuring this time Jerry learned a new name for himself--or, rather, an entire series of names for himself. This was because of an aversion on Harley Kennan's part against renaming a named thing. \n\n\"A name he must have had,\" he argued to Villa. \"Haggin must have named him before he sailed on the _Arangi_. Therefore, nameless he must be until we get back to Tulagi and find out his real name.\" \n\n\"What's in a name?\" Villa had begun to tease. \n\n\"Everything,\" her husband retorted. \"Think of yourself, shipwrecked, called by your rescuers 'Mrs. Riggs,' or 'Mademoiselle de Maupin,' or just plain 'Topsy.' And think of me being called 'Benedict Arnold,' or ' Judas,' or . . . or . . . 'Haman.' No, keep him nameless, until we find out his original name.\" \n\n\"Must call him something,\" she objected. \"Can't think of him without thinking something.\" \n\n\"Then call him many names, but never the same name twice. Call him 'Dog' to-day, and 'Mister Dog' to-morrow, and the next day something else.\" ", + "questions": [ + "What worked her way northward?", + "What lay between the shore-reefs and outer-reefs?", + "Were the passages wide?", + "Who was the Captain?", + "Did he have red hair?", + "Were Harley and Villa in a hurry?", + "What coast did the Ariel work her way up leisurely?", + "Who argued to Villa that he must have a name?", + "Who began to tease Harley?", + "What ship had Haggin sailed on?", + "How long must he be nameless until?", + "Who was the husband she retorted something to?", + "Did she tell him to think of himself being in an airplane crash?", + "What would an awkward name to be called by rescuers be?", + "What's another one?", + "How about a third one?", + "Did she ask Villa to think of her being called Jesus?", + "Was there a lot of coral in the lagoon?", + "Where did the Ariel drop anchor off of?", + "Were there cannibals?" + ], + "answers": { + "input_text": [ + "The _Ariel_", + "Lagoon", + "No", + "Winters", + "No", + "No", + "Malaita", + "Harley Kennan", + "Villa", + "The Arangi", + "Until they get back to Tulagi", + "Harley Kennan", + "No", + "'Mrs. Riggs'", + "'Topsy'", + "'Mademoiselle de Maupin'", + "No", + "Yes", + "Every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life.", + "unknown" + ], + "answer_start": [ + 15, + 100, + 186, + 234, + 235, + 451, + 15, + 702, + 992, + 839, + 901, + 711, + 1, + 1039, + 1189, + 1149, + 1039, + 15, + 312, + -1 + ], + "answer_end": [ + 98, + 184, + 212, + 250, + 295, + 497, + 83, + 882, + 1037, + 900, + 988, + 1074, + 1583, + 1348, + 1197, + 1173, + 1348, + 229, + 450, + -1 + ] + } + } + }, + { + "input": { + "input": "What worked her way northward?", + "context": "Northward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs" + }, + "expected": 0.49404761904761907, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER XXII \n\nNorthward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way, threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs, daring passages so narrow and coral-patched that Captain Winters averred each day added a thousand grey hairs to his head, and dropping anchor off every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life. For Harley and Villa Kennan were in no hurry. So long as the way was interesting, they dared not how long it proved from anywhere to anywhere. \n\nDuring this time Jerry learned a new name for himself--or, rather, an entire series of names for himself. This was because of an aversion on Harley Kennan's part against renaming a named thing. \n\n\"A name he must have had,\" he argued to Villa. \"Haggin must have named him before he sailed on the _Arangi_. Therefore, nameless he must be until we get back to Tulagi and find out his real name.\" \n\n\"What's in a name?\" Villa had begun to tease. \n\n\"Everything,\" her husband retorted. \"Think of yourself, shipwrecked, called by your rescuers 'Mrs. Riggs,' or 'Mademoiselle de Maupin,' or just plain 'Topsy.' And think of me being called 'Benedict Arnold,' or ' Judas,' or . . . or . . . 'Haman.' No, keep him nameless, until we find out his original name.\" \n\n\"Must call him something,\" she objected. \"Can't think of him without thinking something.\" \n\n\"Then call him many names, but never the same name twice. Call him 'Dog' to-day, and 'Mister Dog' to-morrow, and the next day something else.\" ", + "questions": [ + "What worked her way northward?", + "What lay between the shore-reefs and outer-reefs?", + "Were the passages wide?", + "Who was the Captain?", + "Did he have red hair?", + "Were Harley and Villa in a hurry?", + "What coast did the Ariel work her way up leisurely?", + "Who argued to Villa that he must have a name?", + "Who began to tease Harley?", + "What ship had Haggin sailed on?", + "How long must he be nameless until?", + "Who was the husband she retorted something to?", + "Did she tell him to think of himself being in an airplane crash?", + "What would an awkward name to be called by rescuers be?", + "What's another one?", + "How about a third one?", + "Did she ask Villa to think of her being called Jesus?", + "Was there a lot of coral in the lagoon?", + "Where did the Ariel drop anchor off of?", + "Were there cannibals?" + ], + "answers": { + "input_text": [ + "The _Ariel_", + "Lagoon", + "No", + "Winters", + "No", + "No", + "Malaita", + "Harley Kennan", + "Villa", + "The Arangi", + "Until they get back to Tulagi", + "Harley Kennan", + "No", + "'Mrs. Riggs'", + "'Topsy'", + "'Mademoiselle de Maupin'", + "No", + "Yes", + "Every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life.", + "unknown" + ], + "answer_start": [ + 15, + 100, + 186, + 234, + 235, + 451, + 15, + 702, + 992, + 839, + 901, + 711, + 1, + 1039, + 1189, + 1149, + 1039, + 15, + 312, + -1 + ], + "answer_end": [ + 98, + 184, + 212, + 250, + 295, + 497, + 83, + 882, + 1037, + 900, + 988, + 1074, + 1583, + 1348, + 1197, + 1173, + 1348, + 229, + 450, + -1 + ] + } + } + }, + { + "input": { + "input": "Who were the two canines who lived next door to each other?", + "context": "Brownie and Spotty were neighbor dogs" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "Brownie and Spotty were neighbor dogs who met every day to play together. These two loved each other and played together so often that they had worn a path through the grass of the field between their respective houses. One evening, Brownie's family noticed that Brownie hadn't returned home. They went looking for him with no success and by the next week he was still missing. Curiously, Spotty showed up at Brownie's house alone. Barking, whining and generally pestering Brownie's human family. Busy with their own lives, they just ignored the nervous little neighbor dog. Continuously,Ted, Brownie's owner, was disturbed by the angry, determined little dog. Spotty followed Ted about, barking insistently, then rushing toward a nearby empty lot and back, as if to say, \"Follow me! It's urgent!\" Eventually, Ted followed Spotty to a deserted spot half a mile from the house. There Ted found his beloved Brownie alive, one of his hind legs crushed in a steel leghold trap. Horrified, Ted now wished he'd taken Spotty's earlier appeals seriously. Then Ted noticed something quite remarkable. Spotty had done more than simply led Brownie's human owner to his trapped friend. In a circle around the injured dog, Ted found an array of dog food and table scraps which were later identified as the remains of every meal Spotty had been fed that week! Spotty had been visiting Brownie regularly, in the hope of keeping his friend alive by sacrificing his own comfort. Spotty had evidently stayed with Brownie to protect him from hunger and other dangers, and keep his spirits up. Brownie's leg was treated by a veterinarian and he recovered. For many years thereafter, the two families watched the faithful friends chasing each other down that well worn path between their houses.", + "questions": [ + "Who were the two canines who lived next door to each other?", + "How often did they visit each other?", + "How did they feel about one another?", + "Where did they kill the grass?", + "Who did Brownie belong to?", + "Which dog had his leg injured?", + "Did Spotty go missing?", + "Did Spotty start annoying Ted?", + "Where did Spotty lead Ted to?", + "What's one thing Spotty did for Brownie while he was stuck?", + "What else did he do?", + "And one more?", + "Did Ted regret not paying more attention to Spotty?", + "What's something Spotty did to try to get his attention?", + "Did Brownie survive his ordeal?", + "Were the two able to continue playing together?", + "Did Brownie disappear at night?", + "Did his family hunt him?", + "Was he home by the end of the next week?", + "Why did the family ignore Spotty when he tried to get their attention?", + "What did it seem like Spotty was trying to tell them?" + ], + "answers": { + "input_text": [ + "Brownie and Spotty", + "every day", + "loved each other", + "worn a path through the grass of the field", + "Ted,", + "Brownie", + "yes", + "Yes", + "a spot half a mile from the house", + "brought him food", + "protect him from other dangers", + "keep his spirits up.", + "yes", + ". Spotty followed Ted about, barking insistently,", + "Yes", + "yes", + "No", + "yes, They went looking for him with no success", + "no", + "They were busy with their own lives,", + "\"Follow me! It's urgent!\"" + ], + "answer_start": [ + 0, + 0, + 74, + 134, + 588, + 883, + 220, + 389, + 678, + 1211, + 1462, + 1548, + 975, + 659, + 1574, + 1636, + 220, + 292, + 293, + 497, + 758 + ], + "answer_end": [ + 37, + 75, + 101, + 219, + 609, + 973, + 292, + 495, + 876, + 1346, + 1572, + 1573, + 1045, + 708, + 1636, + 1774, + 292, + 336, + 377, + 575, + 797 + ] + } + } + }, + { + "input": { + "input": "Who were the two canines who lived next door to each other?", + "context": "Brownie and Spotty were neighbor dogs who met every day to play together. T" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "Brownie and Spotty were neighbor dogs who met every day to play together. These two loved each other and played together so often that they had worn a path through the grass of the field between their respective houses. One evening, Brownie's family noticed that Brownie hadn't returned home. They went looking for him with no success and by the next week he was still missing. Curiously, Spotty showed up at Brownie's house alone. Barking, whining and generally pestering Brownie's human family. Busy with their own lives, they just ignored the nervous little neighbor dog. Continuously,Ted, Brownie's owner, was disturbed by the angry, determined little dog. Spotty followed Ted about, barking insistently, then rushing toward a nearby empty lot and back, as if to say, \"Follow me! It's urgent!\" Eventually, Ted followed Spotty to a deserted spot half a mile from the house. There Ted found his beloved Brownie alive, one of his hind legs crushed in a steel leghold trap. Horrified, Ted now wished he'd taken Spotty's earlier appeals seriously. Then Ted noticed something quite remarkable. Spotty had done more than simply led Brownie's human owner to his trapped friend. In a circle around the injured dog, Ted found an array of dog food and table scraps which were later identified as the remains of every meal Spotty had been fed that week! Spotty had been visiting Brownie regularly, in the hope of keeping his friend alive by sacrificing his own comfort. Spotty had evidently stayed with Brownie to protect him from hunger and other dangers, and keep his spirits up. Brownie's leg was treated by a veterinarian and he recovered. For many years thereafter, the two families watched the faithful friends chasing each other down that well worn path between their houses.", + "questions": [ + "Who were the two canines who lived next door to each other?", + "How often did they visit each other?", + "How did they feel about one another?", + "Where did they kill the grass?", + "Who did Brownie belong to?", + "Which dog had his leg injured?", + "Did Spotty go missing?", + "Did Spotty start annoying Ted?", + "Where did Spotty lead Ted to?", + "What's one thing Spotty did for Brownie while he was stuck?", + "What else did he do?", + "And one more?", + "Did Ted regret not paying more attention to Spotty?", + "What's something Spotty did to try to get his attention?", + "Did Brownie survive his ordeal?", + "Were the two able to continue playing together?", + "Did Brownie disappear at night?", + "Did his family hunt him?", + "Was he home by the end of the next week?", + "Why did the family ignore Spotty when he tried to get their attention?", + "What did it seem like Spotty was trying to tell them?" + ], + "answers": { + "input_text": [ + "Brownie and Spotty", + "every day", + "loved each other", + "worn a path through the grass of the field", + "Ted,", + "Brownie", + "yes", + "Yes", + "a spot half a mile from the house", + "brought him food", + "protect him from other dangers", + "keep his spirits up.", + "yes", + ". Spotty followed Ted about, barking insistently,", + "Yes", + "yes", + "No", + "yes, They went looking for him with no success", + "no", + "They were busy with their own lives,", + "\"Follow me! It's urgent!\"" + ], + "answer_start": [ + 0, + 0, + 74, + 134, + 588, + 883, + 220, + 389, + 678, + 1211, + 1462, + 1548, + 975, + 659, + 1574, + 1636, + 220, + 292, + 293, + 497, + 758 + ], + "answer_end": [ + 37, + 75, + 101, + 219, + 609, + 973, + 292, + 495, + 876, + 1346, + 1572, + 1573, + 1045, + 708, + 1636, + 1774, + 292, + 336, + 377, + 575, + 797 + ] + } + } + }, + { + "input": { + "input": "Who were the two canines who lived next door to each other?", + "context": "Brownie and Spotty were neighbor dogs Brownie and Spotty were neighbor dogs who met every day to play together. T" + }, + "expected": 0.3274336283185841, + "metadata": { + "source": "race", + "story": "Brownie and Spotty were neighbor dogs who met every day to play together. These two loved each other and played together so often that they had worn a path through the grass of the field between their respective houses. One evening, Brownie's family noticed that Brownie hadn't returned home. They went looking for him with no success and by the next week he was still missing. Curiously, Spotty showed up at Brownie's house alone. Barking, whining and generally pestering Brownie's human family. Busy with their own lives, they just ignored the nervous little neighbor dog. Continuously,Ted, Brownie's owner, was disturbed by the angry, determined little dog. Spotty followed Ted about, barking insistently, then rushing toward a nearby empty lot and back, as if to say, \"Follow me! It's urgent!\" Eventually, Ted followed Spotty to a deserted spot half a mile from the house. There Ted found his beloved Brownie alive, one of his hind legs crushed in a steel leghold trap. Horrified, Ted now wished he'd taken Spotty's earlier appeals seriously. Then Ted noticed something quite remarkable. Spotty had done more than simply led Brownie's human owner to his trapped friend. In a circle around the injured dog, Ted found an array of dog food and table scraps which were later identified as the remains of every meal Spotty had been fed that week! Spotty had been visiting Brownie regularly, in the hope of keeping his friend alive by sacrificing his own comfort. Spotty had evidently stayed with Brownie to protect him from hunger and other dangers, and keep his spirits up. Brownie's leg was treated by a veterinarian and he recovered. For many years thereafter, the two families watched the faithful friends chasing each other down that well worn path between their houses.", + "questions": [ + "Who were the two canines who lived next door to each other?", + "How often did they visit each other?", + "How did they feel about one another?", + "Where did they kill the grass?", + "Who did Brownie belong to?", + "Which dog had his leg injured?", + "Did Spotty go missing?", + "Did Spotty start annoying Ted?", + "Where did Spotty lead Ted to?", + "What's one thing Spotty did for Brownie while he was stuck?", + "What else did he do?", + "And one more?", + "Did Ted regret not paying more attention to Spotty?", + "What's something Spotty did to try to get his attention?", + "Did Brownie survive his ordeal?", + "Were the two able to continue playing together?", + "Did Brownie disappear at night?", + "Did his family hunt him?", + "Was he home by the end of the next week?", + "Why did the family ignore Spotty when he tried to get their attention?", + "What did it seem like Spotty was trying to tell them?" + ], + "answers": { + "input_text": [ + "Brownie and Spotty", + "every day", + "loved each other", + "worn a path through the grass of the field", + "Ted,", + "Brownie", + "yes", + "Yes", + "a spot half a mile from the house", + "brought him food", + "protect him from other dangers", + "keep his spirits up.", + "yes", + ". Spotty followed Ted about, barking insistently,", + "Yes", + "yes", + "No", + "yes, They went looking for him with no success", + "no", + "They were busy with their own lives,", + "\"Follow me! It's urgent!\"" + ], + "answer_start": [ + 0, + 0, + 74, + 134, + 588, + 883, + 220, + 389, + 678, + 1211, + 1462, + 1548, + 975, + 659, + 1574, + 1636, + 220, + 292, + 293, + 497, + 758 + ], + "answer_end": [ + 37, + 75, + 101, + 219, + 609, + 973, + 292, + 495, + 876, + 1346, + 1572, + 1573, + 1045, + 708, + 1636, + 1774, + 292, + 336, + 377, + 575, + 797 + ] + } + } + }, + { + "input": { + "input": "What is the story about?", + "context": "This is the story of a young girl and her dog." + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "This is the story of a young girl and her dog. The young girl and her dog set out a trip into the woods one day. Upon entering the woods the girl and her dog found that the woods were dark and cold. The girl was a little scared and was thinking of turning back, but yet they went on. The girl's dog was acting very interested in what was in the bushes up ahead. To both the girl and the dog's surprise, there was a small brown bear resting in the bushes. The bear was not surprised and did not seem at all interested in the girl and her dog. The bear looked up at the girl and it was almost as if he was smiling at her. He then rested his head on his bear paws and went back to sleep. The girl and the dog kept walking and finally made it out of the woods. To this day the girl does not know why the bear was so friendly and to this day she has never told anyone about the meeting with the bear in the woods.", + "questions": [ + "What is the story about?", + "What were they doing?", + "where?", + "How did the girl feel?", + "How about the dog?", + "HOw did he feel?", + "in what?", + "What was it?", + "What did it do?", + "Did it notice the two?", + "How did the girl and the dog feel?", + "How did the bear react?", + "What did he do?", + "Was he mean?", + "Does she know why?", + "Who did she tell?", + "Was the woods open and light?", + "What was it like?", + "Was she thinking of turning back?", + "did she?" + ], + "answers": { + "input_text": [ + "A girl and a dog.", + "Set on on a trip", + "the woods", + "scared", + "He wasn't", + "He was interested", + "what was in the bushes", + "a bear", + "rested in the bushes", + "Not really", + "surprised", + "not surprised", + "Looked at the girl", + "He smiled", + "No", + "no one", + "No", + "dark and cold", + "yes", + "no" + ], + "answer_start": [ + 0, + 47, + 74, + 199, + 284, + 284, + 310, + 402, + 403, + 486, + 362, + 455, + 542, + 577, + 757, + 825, + 164, + 169, + 199, + 262 + ], + "answer_end": [ + 46, + 88, + 104, + 227, + 325, + 325, + 360, + 454, + 454, + 540, + 401, + 481, + 573, + 620, + 796, + 862, + 199, + 199, + 261, + 284 + ] + } + } + }, + { + "input": { + "input": "What is the story about?", + "context": "The young girl and her dog set out a trip" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "This is the story of a young girl and her dog. The young girl and her dog set out a trip into the woods one day. Upon entering the woods the girl and her dog found that the woods were dark and cold. The girl was a little scared and was thinking of turning back, but yet they went on. The girl's dog was acting very interested in what was in the bushes up ahead. To both the girl and the dog's surprise, there was a small brown bear resting in the bushes. The bear was not surprised and did not seem at all interested in the girl and her dog. The bear looked up at the girl and it was almost as if he was smiling at her. He then rested his head on his bear paws and went back to sleep. The girl and the dog kept walking and finally made it out of the woods. To this day the girl does not know why the bear was so friendly and to this day she has never told anyone about the meeting with the bear in the woods.", + "questions": [ + "What is the story about?", + "What were they doing?", + "where?", + "How did the girl feel?", + "How about the dog?", + "HOw did he feel?", + "in what?", + "What was it?", + "What did it do?", + "Did it notice the two?", + "How did the girl and the dog feel?", + "How did the bear react?", + "What did he do?", + "Was he mean?", + "Does she know why?", + "Who did she tell?", + "Was the woods open and light?", + "What was it like?", + "Was she thinking of turning back?", + "did she?" + ], + "answers": { + "input_text": [ + "A girl and a dog.", + "Set on on a trip", + "the woods", + "scared", + "He wasn't", + "He was interested", + "what was in the bushes", + "a bear", + "rested in the bushes", + "Not really", + "surprised", + "not surprised", + "Looked at the girl", + "He smiled", + "No", + "no one", + "No", + "dark and cold", + "yes", + "no" + ], + "answer_start": [ + 0, + 47, + 74, + 199, + 284, + 284, + 310, + 402, + 403, + 486, + 362, + 455, + 542, + 577, + 757, + 825, + 164, + 169, + 199, + 262 + ], + "answer_end": [ + 46, + 88, + 104, + 227, + 325, + 325, + 360, + 454, + 454, + 540, + 401, + 481, + 573, + 620, + 796, + 862, + 199, + 199, + 261, + 284 + ] + } + } + }, + { + "input": { + "input": "What is the story about?", + "context": "This is the story of a young girl and her dog. The young girl and her dog set out a trip" + }, + "expected": 0.5227272727272727, + "metadata": { + "source": "mctest", + "story": "This is the story of a young girl and her dog. The young girl and her dog set out a trip into the woods one day. Upon entering the woods the girl and her dog found that the woods were dark and cold. The girl was a little scared and was thinking of turning back, but yet they went on. The girl's dog was acting very interested in what was in the bushes up ahead. To both the girl and the dog's surprise, there was a small brown bear resting in the bushes. The bear was not surprised and did not seem at all interested in the girl and her dog. The bear looked up at the girl and it was almost as if he was smiling at her. He then rested his head on his bear paws and went back to sleep. The girl and the dog kept walking and finally made it out of the woods. To this day the girl does not know why the bear was so friendly and to this day she has never told anyone about the meeting with the bear in the woods.", + "questions": [ + "What is the story about?", + "What were they doing?", + "where?", + "How did the girl feel?", + "How about the dog?", + "HOw did he feel?", + "in what?", + "What was it?", + "What did it do?", + "Did it notice the two?", + "How did the girl and the dog feel?", + "How did the bear react?", + "What did he do?", + "Was he mean?", + "Does she know why?", + "Who did she tell?", + "Was the woods open and light?", + "What was it like?", + "Was she thinking of turning back?", + "did she?" + ], + "answers": { + "input_text": [ + "A girl and a dog.", + "Set on on a trip", + "the woods", + "scared", + "He wasn't", + "He was interested", + "what was in the bushes", + "a bear", + "rested in the bushes", + "Not really", + "surprised", + "not surprised", + "Looked at the girl", + "He smiled", + "No", + "no one", + "No", + "dark and cold", + "yes", + "no" + ], + "answer_start": [ + 0, + 47, + 74, + 199, + 284, + 284, + 310, + 402, + 403, + 486, + 362, + 455, + 542, + 577, + 757, + 825, + 164, + 169, + 199, + 262 + ], + "answer_end": [ + 46, + 88, + 104, + 227, + 325, + 325, + 360, + 454, + 454, + 540, + 401, + 481, + 573, + 620, + 796, + 862, + 199, + 199, + 261, + 284 + ] + } + } + }, + { + "input": { + "input": "What happened Friday?", + "context": "10-year-old boy fatally shot his father " + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "HOUSTON (AP) --- A 10-year-old boy fatally shot his father Friday, striking him several times as he sat in the front seat of a SUV to pick up the boy from his mother's home for a weekend visit. \n\nThe incident happened about 3pm on a cul-desac in the 1700 block of Cedar Cove Court, said Sgt. Williams of the Harris County Sheriff's Department. \n\nAn investigation found that Rick James Lohstroh, 41, was shot by his son, who was sitting in the back seat of the man's Toyota 4-Runner, said Sgt. Williams. The shooting took place outside the home of Lohstroh's ex-wife, where the boy lives with his mother and a 7-year-old brother. \n\n\"We're not certain of anything until we finish our investigation,\" Williams said. \"The information we have at this time is that the 10-year-old did fire the weapon.\" \n\nThe mother and the 7-year-old were inside the house when the shooting occurred, said Williams. \n\nWilliams said the gun belonged to the boy's mother. After firing shots through the back seat, the boy exited the back of the vehicle and continued to fire at the car. \n\nThe man died on the way to Memorial Herman Hospital. \n\nLohstroh was a doctor at the University of Texas Medical Branch. \n\nThe man and woman shared custody of the children. \n\nWilliams said the mother and the boy were still in the home talking to investigators Friday night. \n\nNeighbors described the family as being quiet and keeping to themselves. \n\nJustin Gray, 17, was walking in the neighborhood when he heard gunshots. \"We've had a suicide in this neighborhood once, but never anything like this,\" Gray said.", + "questions": [ + "What happened Friday?", + "Where was he at?", + "At his dad's house?", + "Where?", + "when?", + "What time?", + "whose gun was it?", + "What did the child do after he shot his dad?", + "DId he live?", + "Where did he work?", + "Where was the mother?", + "was anyone with her?", + "who?" + ], + "answers": { + "input_text": [ + "10-year-old boy fatally shot his father", + "in the front seat of a SUV", + "no", + "outside the home of Lohstroh's ex-wife", + "Friday", + "3pm", + "belonged to the boy's mother", + "He exited the back of the vehicle and continued to fire at the car", + "No", + "at the University of Texas Medical Branch", + "inside the house", + "Yes", + "the 7-year-old" + ], + "answer_start": [ + 19, + 103, + 538, + 527, + 58, + 223, + 917, + 990, + 1065, + 1141, + 834, + 813, + 813 + ], + "answer_end": [ + 59, + 130, + 565, + 565, + 65, + 227, + 946, + 1061, + 1078, + 1183, + 850, + 828, + 829 + ] + } + } + }, + { + "input": { + "input": "What happened Friday?", + "context": " in the front seat of a SUV" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "HOUSTON (AP) --- A 10-year-old boy fatally shot his father Friday, striking him several times as he sat in the front seat of a SUV to pick up the boy from his mother's home for a weekend visit. \n\nThe incident happened about 3pm on a cul-desac in the 1700 block of Cedar Cove Court, said Sgt. Williams of the Harris County Sheriff's Department. \n\nAn investigation found that Rick James Lohstroh, 41, was shot by his son, who was sitting in the back seat of the man's Toyota 4-Runner, said Sgt. Williams. The shooting took place outside the home of Lohstroh's ex-wife, where the boy lives with his mother and a 7-year-old brother. \n\n\"We're not certain of anything until we finish our investigation,\" Williams said. \"The information we have at this time is that the 10-year-old did fire the weapon.\" \n\nThe mother and the 7-year-old were inside the house when the shooting occurred, said Williams. \n\nWilliams said the gun belonged to the boy's mother. After firing shots through the back seat, the boy exited the back of the vehicle and continued to fire at the car. \n\nThe man died on the way to Memorial Herman Hospital. \n\nLohstroh was a doctor at the University of Texas Medical Branch. \n\nThe man and woman shared custody of the children. \n\nWilliams said the mother and the boy were still in the home talking to investigators Friday night. \n\nNeighbors described the family as being quiet and keeping to themselves. \n\nJustin Gray, 17, was walking in the neighborhood when he heard gunshots. \"We've had a suicide in this neighborhood once, but never anything like this,\" Gray said.", + "questions": [ + "What happened Friday?", + "Where was he at?", + "At his dad's house?", + "Where?", + "when?", + "What time?", + "whose gun was it?", + "What did the child do after he shot his dad?", + "DId he live?", + "Where did he work?", + "Where was the mother?", + "was anyone with her?", + "who?" + ], + "answers": { + "input_text": [ + "10-year-old boy fatally shot his father", + "in the front seat of a SUV", + "no", + "outside the home of Lohstroh's ex-wife", + "Friday", + "3pm", + "belonged to the boy's mother", + "He exited the back of the vehicle and continued to fire at the car", + "No", + "at the University of Texas Medical Branch", + "inside the house", + "Yes", + "the 7-year-old" + ], + "answer_start": [ + 19, + 103, + 538, + 527, + 58, + 223, + 917, + 990, + 1065, + 1141, + 834, + 813, + 813 + ], + "answer_end": [ + 59, + 130, + 565, + 565, + 65, + 227, + 946, + 1061, + 1078, + 1183, + 850, + 828, + 829 + ] + } + } + }, + { + "input": { + "input": "What happened Friday?", + "context": "10-year-old boy fatally shot his father in the front seat of a SUV" + }, + "expected": 0.5882352941176471, + "metadata": { + "source": "race", + "story": "HOUSTON (AP) --- A 10-year-old boy fatally shot his father Friday, striking him several times as he sat in the front seat of a SUV to pick up the boy from his mother's home for a weekend visit. \n\nThe incident happened about 3pm on a cul-desac in the 1700 block of Cedar Cove Court, said Sgt. Williams of the Harris County Sheriff's Department. \n\nAn investigation found that Rick James Lohstroh, 41, was shot by his son, who was sitting in the back seat of the man's Toyota 4-Runner, said Sgt. Williams. The shooting took place outside the home of Lohstroh's ex-wife, where the boy lives with his mother and a 7-year-old brother. \n\n\"We're not certain of anything until we finish our investigation,\" Williams said. \"The information we have at this time is that the 10-year-old did fire the weapon.\" \n\nThe mother and the 7-year-old were inside the house when the shooting occurred, said Williams. \n\nWilliams said the gun belonged to the boy's mother. After firing shots through the back seat, the boy exited the back of the vehicle and continued to fire at the car. \n\nThe man died on the way to Memorial Herman Hospital. \n\nLohstroh was a doctor at the University of Texas Medical Branch. \n\nThe man and woman shared custody of the children. \n\nWilliams said the mother and the boy were still in the home talking to investigators Friday night. \n\nNeighbors described the family as being quiet and keeping to themselves. \n\nJustin Gray, 17, was walking in the neighborhood when he heard gunshots. \"We've had a suicide in this neighborhood once, but never anything like this,\" Gray said.", + "questions": [ + "What happened Friday?", + "Where was he at?", + "At his dad's house?", + "Where?", + "when?", + "What time?", + "whose gun was it?", + "What did the child do after he shot his dad?", + "DId he live?", + "Where did he work?", + "Where was the mother?", + "was anyone with her?", + "who?" + ], + "answers": { + "input_text": [ + "10-year-old boy fatally shot his father", + "in the front seat of a SUV", + "no", + "outside the home of Lohstroh's ex-wife", + "Friday", + "3pm", + "belonged to the boy's mother", + "He exited the back of the vehicle and continued to fire at the car", + "No", + "at the University of Texas Medical Branch", + "inside the house", + "Yes", + "the 7-year-old" + ], + "answer_start": [ + 19, + 103, + 538, + 527, + 58, + 223, + 917, + 990, + 1065, + 1141, + 834, + 813, + 813 + ], + "answer_end": [ + 59, + 130, + 565, + 565, + 65, + 227, + 946, + 1061, + 1078, + 1183, + 850, + 828, + 829 + ] + } + } + }, + { + "input": { + "input": "Who was excommunicated?", + "context": "Fra Girolamo. She could not witness the silencing and excommunication of a man" + }, + "expected": 1, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER FIFTY FIVE. \n\nWAITING. \n\nThe lengthening sunny days went on without bringing either what Romola most desired or what she most dreaded. They brought no sign from Baldassarre, and, in spite of special watch on the part of the Government, no revelation of the suspected conspiracy. But they brought other things which touched her closely, and bridged the phantom-crowded space of anxiety with active sympathy in immediate trial. They brought the spreading Plague and the Excommunication of Savonarola. \n\nBoth these events tended to arrest her incipient alienation from the Frate, and to rivet again her attachment to the man who had opened to her the new life of duty, and who seemed now to be worsted in the fight for principle against profligacy. For Romola could not carry from day to day into the abodes of pestilence and misery the sublime excitement of a gladness that, since such anguish existed, she too existed to make some of the anguish less bitter, without remembering that she owed this transcendent moral life to Fra Girolamo. She could not witness the silencing and excommunication of a man whose distinction from the great mass of the clergy lay, not in any heretical belief, not in his superstitions, but in the energy with which he sought to make the Christian life a reality, without feeling herself drawn strongly to his side. \n\nFar on in the hot days of June the Excommunication, for some weeks arrived from Rome, was solemnly published in the Duomo. Romola went to witness the scene, that the resistance it inspired might invigorate that sympathy with Savonarola which was one source of her strength. It was in memorable contrast with the scene she had been accustomed to witness there. ", + "questions": [ + "Who was excommunicated?", + "Was he a heretic?", + "Was he superstitious?", + "Why was he excommunicated then?", + "Who was inspired by this man?", + "Where was the Excommunication published?", + "When?", + "How long was it published?", + "What was Romola looking for?", + "What else was she looking for?", + "What did the summer days bring?", + "Who was she alienated from?", + "Did Romola fight the plague?" + ], + "answers": { + "input_text": [ + "Fra Girolamo", + "no", + "no", + "unknown", + "Romola", + "in the Duomo", + "June", + "for some weeks", + "a sign from Baldassarre", + "sympathy with Savonarola", + "Plague", + "the Frate", + "no" + ], + "answer_start": [ + 1032, + 1168, + 1197, + -1, + 991, + 1385, + 1361, + 1405, + 144, + 1511, + 434, + 544, + 714 + ], + "answer_end": [ + 1110, + 1195, + 1221, + -1, + 1044, + 1475, + 1476, + 1437, + 180, + 1590, + 505, + 583, + 753 + ] + } + } + }, + { + "input": { + "input": "Who was excommunicated?", + "context": "not in any heretical belief" + }, + "expected": 0, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER FIFTY FIVE. \n\nWAITING. \n\nThe lengthening sunny days went on without bringing either what Romola most desired or what she most dreaded. They brought no sign from Baldassarre, and, in spite of special watch on the part of the Government, no revelation of the suspected conspiracy. But they brought other things which touched her closely, and bridged the phantom-crowded space of anxiety with active sympathy in immediate trial. They brought the spreading Plague and the Excommunication of Savonarola. \n\nBoth these events tended to arrest her incipient alienation from the Frate, and to rivet again her attachment to the man who had opened to her the new life of duty, and who seemed now to be worsted in the fight for principle against profligacy. For Romola could not carry from day to day into the abodes of pestilence and misery the sublime excitement of a gladness that, since such anguish existed, she too existed to make some of the anguish less bitter, without remembering that she owed this transcendent moral life to Fra Girolamo. She could not witness the silencing and excommunication of a man whose distinction from the great mass of the clergy lay, not in any heretical belief, not in his superstitions, but in the energy with which he sought to make the Christian life a reality, without feeling herself drawn strongly to his side. \n\nFar on in the hot days of June the Excommunication, for some weeks arrived from Rome, was solemnly published in the Duomo. Romola went to witness the scene, that the resistance it inspired might invigorate that sympathy with Savonarola which was one source of her strength. It was in memorable contrast with the scene she had been accustomed to witness there. ", + "questions": [ + "Who was excommunicated?", + "Was he a heretic?", + "Was he superstitious?", + "Why was he excommunicated then?", + "Who was inspired by this man?", + "Where was the Excommunication published?", + "When?", + "How long was it published?", + "What was Romola looking for?", + "What else was she looking for?", + "What did the summer days bring?", + "Who was she alienated from?", + "Did Romola fight the plague?" + ], + "answers": { + "input_text": [ + "Fra Girolamo", + "no", + "no", + "unknown", + "Romola", + "in the Duomo", + "June", + "for some weeks", + "a sign from Baldassarre", + "sympathy with Savonarola", + "Plague", + "the Frate", + "no" + ], + "answer_start": [ + 1032, + 1168, + 1197, + -1, + 991, + 1385, + 1361, + 1405, + 144, + 1511, + 434, + 544, + 714 + ], + "answer_end": [ + 1110, + 1195, + 1221, + -1, + 1044, + 1475, + 1476, + 1437, + 180, + 1590, + 505, + 583, + 753 + ] + } + } + }, + { + "input": { + "input": "Who was excommunicated?", + "context": "Fra Girolamo. She could not witness the silencing and excommunication of a man not in any heretical belief" + }, + "expected": 0.7358490566037735, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER FIFTY FIVE. \n\nWAITING. \n\nThe lengthening sunny days went on without bringing either what Romola most desired or what she most dreaded. They brought no sign from Baldassarre, and, in spite of special watch on the part of the Government, no revelation of the suspected conspiracy. But they brought other things which touched her closely, and bridged the phantom-crowded space of anxiety with active sympathy in immediate trial. They brought the spreading Plague and the Excommunication of Savonarola. \n\nBoth these events tended to arrest her incipient alienation from the Frate, and to rivet again her attachment to the man who had opened to her the new life of duty, and who seemed now to be worsted in the fight for principle against profligacy. For Romola could not carry from day to day into the abodes of pestilence and misery the sublime excitement of a gladness that, since such anguish existed, she too existed to make some of the anguish less bitter, without remembering that she owed this transcendent moral life to Fra Girolamo. She could not witness the silencing and excommunication of a man whose distinction from the great mass of the clergy lay, not in any heretical belief, not in his superstitions, but in the energy with which he sought to make the Christian life a reality, without feeling herself drawn strongly to his side. \n\nFar on in the hot days of June the Excommunication, for some weeks arrived from Rome, was solemnly published in the Duomo. Romola went to witness the scene, that the resistance it inspired might invigorate that sympathy with Savonarola which was one source of her strength. It was in memorable contrast with the scene she had been accustomed to witness there. ", + "questions": [ + "Who was excommunicated?", + "Was he a heretic?", + "Was he superstitious?", + "Why was he excommunicated then?", + "Who was inspired by this man?", + "Where was the Excommunication published?", + "When?", + "How long was it published?", + "What was Romola looking for?", + "What else was she looking for?", + "What did the summer days bring?", + "Who was she alienated from?", + "Did Romola fight the plague?" + ], + "answers": { + "input_text": [ + "Fra Girolamo", + "no", + "no", + "unknown", + "Romola", + "in the Duomo", + "June", + "for some weeks", + "a sign from Baldassarre", + "sympathy with Savonarola", + "Plague", + "the Frate", + "no" + ], + "answer_start": [ + 1032, + 1168, + 1197, + -1, + 991, + 1385, + 1361, + 1405, + 144, + 1511, + 434, + 544, + 714 + ], + "answer_end": [ + 1110, + 1195, + 1221, + -1, + 1044, + 1475, + 1476, + 1437, + 180, + 1590, + 505, + 583, + 753 + ] + } + } + } +] diff --git a/evals/datasets/coqa-factuality.json b/evals/datasets/coqa-factuality.json new file mode 100644 index 0000000..099334c --- /dev/null +++ b/evals/datasets/coqa-factuality.json @@ -0,0 +1,4886 @@ +[ + { + "input": { + "input": "What color was Cotton?", + "output": "white", + "expected": "white" + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Once upon a time, in a barn near a farm house, there lived a little white kitten named Cotton. Cotton lived high up in a nice warm place above the barn where all of the farmer's horses slept. But Cotton wasn't alone in her little home above the barn, oh no. She shared her hay bed with her mommy and 5 other sisters. All of her sisters were cute and fluffy, like Cotton. But she was the only white one in the bunch. The rest of her sisters were all orange with beautiful white tiger stripes like Cotton's mommy. Being different made Cotton quite sad. She often wished she looked like the rest of her family. So one day, when Cotton found a can of the old farmer's orange paint, she used it to paint herself like them. When her mommy and sisters found her they started laughing. \n\n\"What are you doing, Cotton?!\" \n\n\"I only wanted to be more like you\". \n\nCotton's mommy rubbed her face on Cotton's and said \"Oh Cotton, but your fur is so pretty and special, like you. We would never want you to be any other way\". And with that, Cotton's mommy picked her up and dropped her into a big bucket of water. When Cotton came out she was herself again. Her sisters licked her face until Cotton's fur was all all dry. \n\n\"Don't ever do that again, Cotton!\" they all cried. \"Next time you might mess up that pretty white fur of yours and we wouldn't want that!\" \n\nThen Cotton thought, \"I change my mind. I like being special\".", + "questions": [ + "What color was Cotton?", + "Where did she live?", + "Did she live alone?", + "Who did she live with?", + "What color were her sisters?", + "Was Cotton happy that she looked different than the rest of her family?", + "What did she do to try to make herself the same color as her sisters?", + "Whose paint was it?", + "What did Cotton's mother and siblings do when they saw her painted orange?", + "Where did Cotton's mother put her to clean the paint off?", + "What did the other cats do when Cotton emerged from the bucket of water?", + "Did they want Cotton to change the color of her fur?" + ], + "answers": { + "input_text": [ + "white", + "in a barn", + "no", + "with her mommy and 5 sisters", + "orange and white", + "no", + "she painted herself", + "the farmer", + "they started laughing", + "a bucket of water", + "licked her face", + "no" + ], + "answer_start": [ + 59, + 18, + 196, + 281, + 428, + 512, + 678, + 647, + 718, + 1035, + 1143, + 965 + ], + "answer_end": [ + 93, + 80, + 215, + 315, + 490, + 549, + 716, + 676, + 776, + 1097, + 1170, + 1008 + ] + } + } + }, + { + "input": { + "input": "What color was Cotton?", + "output": "in a barn", + "expected": "white" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Once upon a time, in a barn near a farm house, there lived a little white kitten named Cotton. Cotton lived high up in a nice warm place above the barn where all of the farmer's horses slept. But Cotton wasn't alone in her little home above the barn, oh no. She shared her hay bed with her mommy and 5 other sisters. All of her sisters were cute and fluffy, like Cotton. But she was the only white one in the bunch. The rest of her sisters were all orange with beautiful white tiger stripes like Cotton's mommy. Being different made Cotton quite sad. She often wished she looked like the rest of her family. So one day, when Cotton found a can of the old farmer's orange paint, she used it to paint herself like them. When her mommy and sisters found her they started laughing. \n\n\"What are you doing, Cotton?!\" \n\n\"I only wanted to be more like you\". \n\nCotton's mommy rubbed her face on Cotton's and said \"Oh Cotton, but your fur is so pretty and special, like you. We would never want you to be any other way\". And with that, Cotton's mommy picked her up and dropped her into a big bucket of water. When Cotton came out she was herself again. Her sisters licked her face until Cotton's fur was all all dry. \n\n\"Don't ever do that again, Cotton!\" they all cried. \"Next time you might mess up that pretty white fur of yours and we wouldn't want that!\" \n\nThen Cotton thought, \"I change my mind. I like being special\".", + "questions": [ + "What color was Cotton?", + "Where did she live?", + "Did she live alone?", + "Who did she live with?", + "What color were her sisters?", + "Was Cotton happy that she looked different than the rest of her family?", + "What did she do to try to make herself the same color as her sisters?", + "Whose paint was it?", + "What did Cotton's mother and siblings do when they saw her painted orange?", + "Where did Cotton's mother put her to clean the paint off?", + "What did the other cats do when Cotton emerged from the bucket of water?", + "Did they want Cotton to change the color of her fur?" + ], + "answers": { + "input_text": [ + "white", + "in a barn", + "no", + "with her mommy and 5 sisters", + "orange and white", + "no", + "she painted herself", + "the farmer", + "they started laughing", + "a bucket of water", + "licked her face", + "no" + ], + "answer_start": [ + 59, + 18, + 196, + 281, + 428, + 512, + 678, + 647, + 718, + 1035, + 1143, + 965 + ], + "answer_end": [ + 93, + 80, + 215, + 315, + 490, + 549, + 716, + 676, + 776, + 1097, + 1170, + 1008 + ] + } + } + }, + { + "input": { + "input": "What color was Cotton?", + "output": "in a barn white no", + "expected": "white" + }, + "expected": 0.6, + "metadata": { + "source": "mctest", + "story": "Once upon a time, in a barn near a farm house, there lived a little white kitten named Cotton. Cotton lived high up in a nice warm place above the barn where all of the farmer's horses slept. But Cotton wasn't alone in her little home above the barn, oh no. She shared her hay bed with her mommy and 5 other sisters. All of her sisters were cute and fluffy, like Cotton. But she was the only white one in the bunch. The rest of her sisters were all orange with beautiful white tiger stripes like Cotton's mommy. Being different made Cotton quite sad. She often wished she looked like the rest of her family. So one day, when Cotton found a can of the old farmer's orange paint, she used it to paint herself like them. When her mommy and sisters found her they started laughing. \n\n\"What are you doing, Cotton?!\" \n\n\"I only wanted to be more like you\". \n\nCotton's mommy rubbed her face on Cotton's and said \"Oh Cotton, but your fur is so pretty and special, like you. We would never want you to be any other way\". And with that, Cotton's mommy picked her up and dropped her into a big bucket of water. When Cotton came out she was herself again. Her sisters licked her face until Cotton's fur was all all dry. \n\n\"Don't ever do that again, Cotton!\" they all cried. \"Next time you might mess up that pretty white fur of yours and we wouldn't want that!\" \n\nThen Cotton thought, \"I change my mind. I like being special\".", + "questions": [ + "What color was Cotton?", + "Where did she live?", + "Did she live alone?", + "Who did she live with?", + "What color were her sisters?", + "Was Cotton happy that she looked different than the rest of her family?", + "What did she do to try to make herself the same color as her sisters?", + "Whose paint was it?", + "What did Cotton's mother and siblings do when they saw her painted orange?", + "Where did Cotton's mother put her to clean the paint off?", + "What did the other cats do when Cotton emerged from the bucket of water?", + "Did they want Cotton to change the color of her fur?" + ], + "answers": { + "input_text": [ + "white", + "in a barn", + "no", + "with her mommy and 5 sisters", + "orange and white", + "no", + "she painted herself", + "the farmer", + "they started laughing", + "a bucket of water", + "licked her face", + "no" + ], + "answer_start": [ + 59, + 18, + 196, + 281, + 428, + 512, + 678, + 647, + 718, + 1035, + 1143, + 965 + ], + "answer_end": [ + 93, + 80, + 215, + 315, + 490, + 549, + 716, + 676, + 776, + 1097, + 1170, + 1008 + ] + } + } + }, + { + "input": { + "input": "what was the name of the fish", + "output": "Asta.", + "expected": "Asta." + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Once there was a beautiful fish named Asta. Asta lived in the ocean. There were lots of other fish in the ocean where Asta lived. They played all day long. \n\nOne day, a bottle floated by over the heads of Asta and his friends. They looked up and saw the bottle. \"What is it?\" said Asta's friend Sharkie. \"It looks like a bird's belly,\" said Asta. But when they swam closer, it was not a bird's belly. It was hard and clear, and there was something inside it. \n\nThe bottle floated above them. They wanted to open it. They wanted to see what was inside. So they caught the bottle and carried it down to the bottom of the ocean. They cracked it open on a rock. When they got it open, they found what was inside. It was a note. The note was written in orange crayon on white paper. Asta could not read the note. Sharkie could not read the note. They took the note to Asta's papa. \"What does it say?\" they asked. \n\nAsta's papa read the note. He told Asta and Sharkie, \"This note is from a little girl. She wants to be your friend. If you want to be her friend, we can write a note to her. But you have to find another bottle so we can send it to her.\" And that is what they did.", + "questions": [ + "what was the name of the fish", + "What looked like a birds belly", + "who said that", + "Was Sharkie a friend?", + "did they get the bottle?", + "What was in it", + "Did a little boy write the note", + "Who could read the note", + "What did they do with the note", + "did they write back", + "were they excited" + ], + "answers": { + "input_text": [ + "Asta.", + "a bottle", + "Asta.", + "Yes", + "Yes", + "a note", + "No", + "Asta's papa", + "unknown", + "yes", + "unknown" + ], + "answer_start": [ + 37, + 167, + 303, + 281, + 552, + 708, + 964, + 910, + -1, + 1056, + -1 + ], + "answer_end": [ + 43, + 175, + 346, + 302, + 577, + 723, + 995, + 935, + -1, + 1173, + -1 + ] + } + } + }, + { + "input": { + "input": "what was the name of the fish", + "output": "a bottle", + "expected": "Asta." + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Once there was a beautiful fish named Asta. Asta lived in the ocean. There were lots of other fish in the ocean where Asta lived. They played all day long. \n\nOne day, a bottle floated by over the heads of Asta and his friends. They looked up and saw the bottle. \"What is it?\" said Asta's friend Sharkie. \"It looks like a bird's belly,\" said Asta. But when they swam closer, it was not a bird's belly. It was hard and clear, and there was something inside it. \n\nThe bottle floated above them. They wanted to open it. They wanted to see what was inside. So they caught the bottle and carried it down to the bottom of the ocean. They cracked it open on a rock. When they got it open, they found what was inside. It was a note. The note was written in orange crayon on white paper. Asta could not read the note. Sharkie could not read the note. They took the note to Asta's papa. \"What does it say?\" they asked. \n\nAsta's papa read the note. He told Asta and Sharkie, \"This note is from a little girl. She wants to be your friend. If you want to be her friend, we can write a note to her. But you have to find another bottle so we can send it to her.\" And that is what they did.", + "questions": [ + "what was the name of the fish", + "What looked like a birds belly", + "who said that", + "Was Sharkie a friend?", + "did they get the bottle?", + "What was in it", + "Did a little boy write the note", + "Who could read the note", + "What did they do with the note", + "did they write back", + "were they excited" + ], + "answers": { + "input_text": [ + "Asta.", + "a bottle", + "Asta.", + "Yes", + "Yes", + "a note", + "No", + "Asta's papa", + "unknown", + "yes", + "unknown" + ], + "answer_start": [ + 37, + 167, + 303, + 281, + 552, + 708, + 964, + 910, + -1, + 1056, + -1 + ], + "answer_end": [ + 43, + 175, + 346, + 302, + 577, + 723, + 995, + 935, + -1, + 1173, + -1 + ] + } + } + }, + { + "input": { + "input": "what was the name of the fish", + "output": "a bottle Asta. Asta.", + "expected": "Asta." + }, + "expected": 0.6, + "metadata": { + "source": "mctest", + "story": "Once there was a beautiful fish named Asta. Asta lived in the ocean. There were lots of other fish in the ocean where Asta lived. They played all day long. \n\nOne day, a bottle floated by over the heads of Asta and his friends. They looked up and saw the bottle. \"What is it?\" said Asta's friend Sharkie. \"It looks like a bird's belly,\" said Asta. But when they swam closer, it was not a bird's belly. It was hard and clear, and there was something inside it. \n\nThe bottle floated above them. They wanted to open it. They wanted to see what was inside. So they caught the bottle and carried it down to the bottom of the ocean. They cracked it open on a rock. When they got it open, they found what was inside. It was a note. The note was written in orange crayon on white paper. Asta could not read the note. Sharkie could not read the note. They took the note to Asta's papa. \"What does it say?\" they asked. \n\nAsta's papa read the note. He told Asta and Sharkie, \"This note is from a little girl. She wants to be your friend. If you want to be her friend, we can write a note to her. But you have to find another bottle so we can send it to her.\" And that is what they did.", + "questions": [ + "what was the name of the fish", + "What looked like a birds belly", + "who said that", + "Was Sharkie a friend?", + "did they get the bottle?", + "What was in it", + "Did a little boy write the note", + "Who could read the note", + "What did they do with the note", + "did they write back", + "were they excited" + ], + "answers": { + "input_text": [ + "Asta.", + "a bottle", + "Asta.", + "Yes", + "Yes", + "a note", + "No", + "Asta's papa", + "unknown", + "yes", + "unknown" + ], + "answer_start": [ + 37, + 167, + 303, + 281, + 552, + 708, + 964, + 910, + -1, + 1056, + -1 + ], + "answer_end": [ + 43, + 175, + 346, + 302, + 577, + 723, + 995, + 935, + -1, + 1173, + -1 + ] + } + } + }, + { + "input": { + "input": "Who is at the door?", + "output": "An elderly Chinese lady and a little boy", + "expected": "An elderly Chinese lady and a little boy" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "My doorbell rings. On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy. In her other hand, she holds a paper carrier bag. \n\nI know this lady. It is not her first visit. She is the boy's grandmother, and her daughter bought the house next door last October. \n\nHer daughter, Nicole, speaks fluent English. But she is now in Shanghai, and her parents are here with the little boy. Nicole has obviously told her mother that I am having heart surgery soon, so her mother has decided I need more nutrients. \n\nI know what is inside the bag--a thermos with hot soup and a stainless-steel container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake. This has become an almost-daily practice. \n\nCommunication between us is somewhat affected by the fact that she doesn't speak English and all I can say in Chinese is hello. Once, she brought an iPad as well as the food. She pointed to the screen, which displayed a message from her daughter telling me that her mother wanted to know if the food was all right and whether it was too salty. I am not used to iPads, so she indicated I should go with her to her house. Then, she handed the iPad to her husband and almost immediately I found myself looking at Nicole in Shanghai and discussing her mother's cooking and salt intake. Instantly, tears welled in my eyes. \n\n\"Your mother just can't be bringing me meals like this all the time,\" I insisted. \"I can hardly do dishes in return.\" \n\n\"Oh, no, Lucy.\" Nicole said. \"Mum doesn't like western food. Don't worry about it; she has to cook for the three of them anyway, and she wants to do it.\" \n\nThe doorbell keeps ringing and there is the familiar brown paper carrier bag, handed smilingly to me. \n\nI am now working on some more Chinese words--it's the least I can do after such display of kindness. \n\n\"Thank you\" is, of course, the first one. Somehow, it seems inadequate.", + "questions": [ + "Who is at the door?", + "Is she carrying something?", + "What?", + "Do I know her?", + "Who is her daughter?", + "Where does Nicole live?", + "How is she related to the boy?", + "What is in the bag?", + "Has she done this before?", + "Why?", + "What has helped us communicate?", + "What kind of dishes does she bring?", + "What do I do to help communicate with her?", + "Do she continue bringing the bag?", + "What is the first phrase I learn?" + ], + "answers": { + "input_text": [ + "An elderly Chinese lady and a little boy", + "Yes", + "a paper carrier bag", + "Yes", + "Nicole", + "Shanghai", + "mother", + "food", + "Yes", + "I am having heart surgery soon, so her mother has decided I need more nutrients", + "an iPad", + "hot soup and a container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake", + "I am now working on some more Chinese words", + "Yes", + "\"Thank you\"" + ], + "answer_start": [ + 19, + 136, + 146, + 169, + 304, + 348, + 214, + 579, + 727, + 423, + 917, + 594, + 1771, + 1667, + 1874 + ], + "answer_end": [ + 115, + 165, + 165, + 185, + 324, + 375, + 302, + 725, + 769, + 544, + 924, + 725, + 1814, + 1769, + 1885 + ] + } + } + }, + { + "input": { + "input": "Who is at the door?", + "output": "Yes", + "expected": "An elderly Chinese lady and a little boy" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "My doorbell rings. On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy. In her other hand, she holds a paper carrier bag. \n\nI know this lady. It is not her first visit. She is the boy's grandmother, and her daughter bought the house next door last October. \n\nHer daughter, Nicole, speaks fluent English. But she is now in Shanghai, and her parents are here with the little boy. Nicole has obviously told her mother that I am having heart surgery soon, so her mother has decided I need more nutrients. \n\nI know what is inside the bag--a thermos with hot soup and a stainless-steel container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake. This has become an almost-daily practice. \n\nCommunication between us is somewhat affected by the fact that she doesn't speak English and all I can say in Chinese is hello. Once, she brought an iPad as well as the food. She pointed to the screen, which displayed a message from her daughter telling me that her mother wanted to know if the food was all right and whether it was too salty. I am not used to iPads, so she indicated I should go with her to her house. Then, she handed the iPad to her husband and almost immediately I found myself looking at Nicole in Shanghai and discussing her mother's cooking and salt intake. Instantly, tears welled in my eyes. \n\n\"Your mother just can't be bringing me meals like this all the time,\" I insisted. \"I can hardly do dishes in return.\" \n\n\"Oh, no, Lucy.\" Nicole said. \"Mum doesn't like western food. Don't worry about it; she has to cook for the three of them anyway, and she wants to do it.\" \n\nThe doorbell keeps ringing and there is the familiar brown paper carrier bag, handed smilingly to me. \n\nI am now working on some more Chinese words--it's the least I can do after such display of kindness. \n\n\"Thank you\" is, of course, the first one. Somehow, it seems inadequate.", + "questions": [ + "Who is at the door?", + "Is she carrying something?", + "What?", + "Do I know her?", + "Who is her daughter?", + "Where does Nicole live?", + "How is she related to the boy?", + "What is in the bag?", + "Has she done this before?", + "Why?", + "What has helped us communicate?", + "What kind of dishes does she bring?", + "What do I do to help communicate with her?", + "Do she continue bringing the bag?", + "What is the first phrase I learn?" + ], + "answers": { + "input_text": [ + "An elderly Chinese lady and a little boy", + "Yes", + "a paper carrier bag", + "Yes", + "Nicole", + "Shanghai", + "mother", + "food", + "Yes", + "I am having heart surgery soon, so her mother has decided I need more nutrients", + "an iPad", + "hot soup and a container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake", + "I am now working on some more Chinese words", + "Yes", + "\"Thank you\"" + ], + "answer_start": [ + 19, + 136, + 146, + 169, + 304, + 348, + 214, + 579, + 727, + 423, + 917, + 594, + 1771, + 1667, + 1874 + ], + "answer_end": [ + 115, + 165, + 165, + 185, + 324, + 375, + 302, + 725, + 769, + 544, + 924, + 725, + 1814, + 1769, + 1885 + ] + } + } + }, + { + "input": { + "input": "Who is at the door?", + "output": "Yes An elderly Chinese lady and a little boy a paper carrier bag", + "expected": "An elderly Chinese lady and a little boy" + }, + "expected": 0.6, + "metadata": { + "source": "race", + "story": "My doorbell rings. On the step, I find the elderly Chinese lady, small and slight, holding the hand of a little boy. In her other hand, she holds a paper carrier bag. \n\nI know this lady. It is not her first visit. She is the boy's grandmother, and her daughter bought the house next door last October. \n\nHer daughter, Nicole, speaks fluent English. But she is now in Shanghai, and her parents are here with the little boy. Nicole has obviously told her mother that I am having heart surgery soon, so her mother has decided I need more nutrients. \n\nI know what is inside the bag--a thermos with hot soup and a stainless-steel container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake. This has become an almost-daily practice. \n\nCommunication between us is somewhat affected by the fact that she doesn't speak English and all I can say in Chinese is hello. Once, she brought an iPad as well as the food. She pointed to the screen, which displayed a message from her daughter telling me that her mother wanted to know if the food was all right and whether it was too salty. I am not used to iPads, so she indicated I should go with her to her house. Then, she handed the iPad to her husband and almost immediately I found myself looking at Nicole in Shanghai and discussing her mother's cooking and salt intake. Instantly, tears welled in my eyes. \n\n\"Your mother just can't be bringing me meals like this all the time,\" I insisted. \"I can hardly do dishes in return.\" \n\n\"Oh, no, Lucy.\" Nicole said. \"Mum doesn't like western food. Don't worry about it; she has to cook for the three of them anyway, and she wants to do it.\" \n\nThe doorbell keeps ringing and there is the familiar brown paper carrier bag, handed smilingly to me. \n\nI am now working on some more Chinese words--it's the least I can do after such display of kindness. \n\n\"Thank you\" is, of course, the first one. Somehow, it seems inadequate.", + "questions": [ + "Who is at the door?", + "Is she carrying something?", + "What?", + "Do I know her?", + "Who is her daughter?", + "Where does Nicole live?", + "How is she related to the boy?", + "What is in the bag?", + "Has she done this before?", + "Why?", + "What has helped us communicate?", + "What kind of dishes does she bring?", + "What do I do to help communicate with her?", + "Do she continue bringing the bag?", + "What is the first phrase I learn?" + ], + "answers": { + "input_text": [ + "An elderly Chinese lady and a little boy", + "Yes", + "a paper carrier bag", + "Yes", + "Nicole", + "Shanghai", + "mother", + "food", + "Yes", + "I am having heart surgery soon, so her mother has decided I need more nutrients", + "an iPad", + "hot soup and a container with rice, vegetables and either chicken, meat or shrimp, sometimes with a kind of pancake", + "I am now working on some more Chinese words", + "Yes", + "\"Thank you\"" + ], + "answer_start": [ + 19, + 136, + 146, + 169, + 304, + 348, + 214, + 579, + 727, + 423, + 917, + 594, + 1771, + 1667, + 1874 + ], + "answer_end": [ + 115, + 165, + 165, + 185, + 324, + 375, + 302, + 725, + 769, + 544, + 924, + 725, + 1814, + 1769, + 1885 + ] + } + } + }, + { + "input": { + "input": "Is someone in showbiz?", + "output": "Yes.", + "expected": "Yes." + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "(CNN) -- Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. He was 69. \n\n\"We are deeply saddened by the loss of a great actor and a wonderful man,\" said his publicist, Lori De Waal, in a statement Monday. \"Dennis Farina was always warmhearted and professional, with a great sense of humor and passion for his profession. He will be greatly missed by his family, friends and colleagues.\" \n\nFarina, who had a long career as a police officer in Chicago, got into acting through director Michael Mann, who used him as a consultant and cast him in his 1981 movie, \"Thief.\" That role led to others in such Mann-created shows as \"Miami Vice\" (in which Farina played a mobster) and \"Crime Story\" (in which he starred as Lt. Mike Torello). \n\nFarina also had roles, generally as either cops or gangsters, in a number of movies, including \"Midnight Run\" (1988), \"Get Shorty\" (1995), \"The Mod Squad\" (1999) and \"Snatch\" (2000). \n\nIn 2004, he joined the cast of the long-running \"Law & Order\" after Jerry Orbach's departure, playing Detective Joe Fontana, a role he reprised on the spinoff \"Trial by Jury.\" Fontana was known for flashy clothes and an expensive car, a distinct counterpoint to Orbach's rumpled Lennie Briscoe. \n\nFarina was on \"Law & Order\" for two years, partnered with Jesse L. Martin's Ed Green. Martin's character became a senior detective after Farina left the show. ", + "questions": [ + "Is someone in showbiz?", + "Whom?", + "What did he do?", + "Is he still alive?", + "Was he in movies?", + "Anything recent?", + "What happened in the early 80's?", + "Who cast him?", + "What was the title of the movie?", + "What parts did he usually get?", + "What happened in 2004?", + "Which one?", + "Who did he portray?", + "Did he have a beater for a car?", + "What did he have?", + "Were the characters clothes frumpy?", + "What were they like?", + "Was he on the show for five years?", + "Was he always an actor?", + "What had he been before?" + ], + "answers": { + "input_text": [ + "Yes.", + "Dennis Farina", + "Actor", + "No", + "Yes", + "No", + "Farina was cast in a film", + "Michael Mann", + "\"Thief\"", + "cops or gangsters", + "He joined a TV show cast.", + "\"Law & Order\"", + "Detective Joe Fontana", + "No", + "An expensive car", + "No", + "Flashy", + "No", + "No", + "A cop" + ], + "answer_start": [ + 8, + 8, + 8, + 9, + 512, + 856, + 573, + 512, + 512, + 856, + 1041, + 1041, + 1041, + 1217, + 1216, + 1217, + 1217, + 1338, + 8, + 8 + ], + "answer_end": [ + 181, + 183, + 66, + 181, + 690, + 1039, + 690, + 662, + 690, + 1039, + 1103, + 1134, + 1165, + 1336, + 1336, + 1336, + 1336, + 1381, + 138, + 65 + ] + } + } + }, + { + "input": { + "input": "Is someone in showbiz?", + "output": "Dennis Farina", + "expected": "Yes." + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "(CNN) -- Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. He was 69. \n\n\"We are deeply saddened by the loss of a great actor and a wonderful man,\" said his publicist, Lori De Waal, in a statement Monday. \"Dennis Farina was always warmhearted and professional, with a great sense of humor and passion for his profession. He will be greatly missed by his family, friends and colleagues.\" \n\nFarina, who had a long career as a police officer in Chicago, got into acting through director Michael Mann, who used him as a consultant and cast him in his 1981 movie, \"Thief.\" That role led to others in such Mann-created shows as \"Miami Vice\" (in which Farina played a mobster) and \"Crime Story\" (in which he starred as Lt. Mike Torello). \n\nFarina also had roles, generally as either cops or gangsters, in a number of movies, including \"Midnight Run\" (1988), \"Get Shorty\" (1995), \"The Mod Squad\" (1999) and \"Snatch\" (2000). \n\nIn 2004, he joined the cast of the long-running \"Law & Order\" after Jerry Orbach's departure, playing Detective Joe Fontana, a role he reprised on the spinoff \"Trial by Jury.\" Fontana was known for flashy clothes and an expensive car, a distinct counterpoint to Orbach's rumpled Lennie Briscoe. \n\nFarina was on \"Law & Order\" for two years, partnered with Jesse L. Martin's Ed Green. Martin's character became a senior detective after Farina left the show. ", + "questions": [ + "Is someone in showbiz?", + "Whom?", + "What did he do?", + "Is he still alive?", + "Was he in movies?", + "Anything recent?", + "What happened in the early 80's?", + "Who cast him?", + "What was the title of the movie?", + "What parts did he usually get?", + "What happened in 2004?", + "Which one?", + "Who did he portray?", + "Did he have a beater for a car?", + "What did he have?", + "Were the characters clothes frumpy?", + "What were they like?", + "Was he on the show for five years?", + "Was he always an actor?", + "What had he been before?" + ], + "answers": { + "input_text": [ + "Yes.", + "Dennis Farina", + "Actor", + "No", + "Yes", + "No", + "Farina was cast in a film", + "Michael Mann", + "\"Thief\"", + "cops or gangsters", + "He joined a TV show cast.", + "\"Law & Order\"", + "Detective Joe Fontana", + "No", + "An expensive car", + "No", + "Flashy", + "No", + "No", + "A cop" + ], + "answer_start": [ + 8, + 8, + 8, + 9, + 512, + 856, + 573, + 512, + 512, + 856, + 1041, + 1041, + 1041, + 1217, + 1216, + 1217, + 1217, + 1338, + 8, + 8 + ], + "answer_end": [ + 181, + 183, + 66, + 181, + 690, + 1039, + 690, + 662, + 690, + 1039, + 1103, + 1134, + 1165, + 1336, + 1336, + 1336, + 1336, + 1381, + 138, + 65 + ] + } + } + }, + { + "input": { + "input": "Is someone in showbiz?", + "output": "Dennis Farina Yes. Actor", + "expected": "Yes." + }, + "expected": 0.6, + "metadata": { + "source": "cnn", + "story": "(CNN) -- Dennis Farina, the dapper, mustachioed cop-turned-actor best known for his tough-as-nails work in such TV series as \"Law & Order,\" \"Crime Story,\" and \"Miami Vice,\" has died. He was 69. \n\n\"We are deeply saddened by the loss of a great actor and a wonderful man,\" said his publicist, Lori De Waal, in a statement Monday. \"Dennis Farina was always warmhearted and professional, with a great sense of humor and passion for his profession. He will be greatly missed by his family, friends and colleagues.\" \n\nFarina, who had a long career as a police officer in Chicago, got into acting through director Michael Mann, who used him as a consultant and cast him in his 1981 movie, \"Thief.\" That role led to others in such Mann-created shows as \"Miami Vice\" (in which Farina played a mobster) and \"Crime Story\" (in which he starred as Lt. Mike Torello). \n\nFarina also had roles, generally as either cops or gangsters, in a number of movies, including \"Midnight Run\" (1988), \"Get Shorty\" (1995), \"The Mod Squad\" (1999) and \"Snatch\" (2000). \n\nIn 2004, he joined the cast of the long-running \"Law & Order\" after Jerry Orbach's departure, playing Detective Joe Fontana, a role he reprised on the spinoff \"Trial by Jury.\" Fontana was known for flashy clothes and an expensive car, a distinct counterpoint to Orbach's rumpled Lennie Briscoe. \n\nFarina was on \"Law & Order\" for two years, partnered with Jesse L. Martin's Ed Green. Martin's character became a senior detective after Farina left the show. ", + "questions": [ + "Is someone in showbiz?", + "Whom?", + "What did he do?", + "Is he still alive?", + "Was he in movies?", + "Anything recent?", + "What happened in the early 80's?", + "Who cast him?", + "What was the title of the movie?", + "What parts did he usually get?", + "What happened in 2004?", + "Which one?", + "Who did he portray?", + "Did he have a beater for a car?", + "What did he have?", + "Were the characters clothes frumpy?", + "What were they like?", + "Was he on the show for five years?", + "Was he always an actor?", + "What had he been before?" + ], + "answers": { + "input_text": [ + "Yes.", + "Dennis Farina", + "Actor", + "No", + "Yes", + "No", + "Farina was cast in a film", + "Michael Mann", + "\"Thief\"", + "cops or gangsters", + "He joined a TV show cast.", + "\"Law & Order\"", + "Detective Joe Fontana", + "No", + "An expensive car", + "No", + "Flashy", + "No", + "No", + "A cop" + ], + "answer_start": [ + 8, + 8, + 8, + 9, + 512, + 856, + 573, + 512, + 512, + 856, + 1041, + 1041, + 1041, + 1217, + 1216, + 1217, + 1217, + 1338, + 8, + 8 + ], + "answer_end": [ + 181, + 183, + 66, + 181, + 690, + 1039, + 690, + 662, + 690, + 1039, + 1103, + 1134, + 1165, + 1336, + 1336, + 1336, + 1336, + 1381, + 138, + 65 + ] + } + } + }, + { + "input": { + "input": "Where do Quinton and Kendra travel to and from every day?", + "output": "school", + "expected": "school" + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Kendra and Quinton travel to and from school every day. Kendra lives further from the bus stop than Quinton does, stops every morning at Quinton's house to join him to walk to the bus stop. Every afternoon, after school, when walking home from the bus stop they go in for cookies and milk that Quinton's mother has ready and waiting for them. Quinton can't eat cheese or cake so they had the same snack every day. They both work together on their homework and when they are done they play together. Kendra always makes sure to leave in time to get home for dinner. She doesn't want to miss story time which was right before bedtime. \n\nOne morning Kendra walked up to Quinton's house, she thought something might be wrong because normally Quinton was waiting outside for her and on this morning he was not to be found. Kendra went up to the door and knocked. She waited and waited and yet no one answered. She saw that Quinton's mother's car wasn't in their driveway which was weird. She waited for a few bit looking up and down the block and getting worried when Quinton was nowhere to be found. \n\nKendra didn't want to miss the bus to school and hurried off to make it in time. The bus driver saw that she was upset and that Quinton was not with her that morning. She told him what happened and he said that he was sure that everything would be okay. \n\nKendra got to school, ran to her teacher and told him what happened that morning. The teacher smiled and told her not to worry, Quinton's mother had called and he was going to the dentist and would be at school after lunch and that she would see him at the bus stop like normal tomorrow.", + "questions": [ + "Where do Quinton and Kendra travel to and from every day?", + "Does Quinton live further from the bus stop?", + "What do they do every afternoon after school?", + "Does Quinton eat cheese?", + "Do they play before their homework?", + "What does Kendra not want to miss?", + "When is that?", + "What happened when Kendra knocked on Quinton's door?", + "Did she see the car?", + "Did she miss the bus?", + "What did the bus driver see?", + "Did Kendra tell him why?", + "What did he say?", + "When she got to school, who did she tell?", + "Did he frown?", + "Who had called?", + "Where did he go?", + "When would he be back?" + ], + "answers": { + "input_text": [ + "school", + "No", + "go to Quentin's house", + "No", + "No", + "story time", + "right before bedtime", + "no one answered", + "No", + "No", + "that she was upset", + "yes", + "everything would be okay", + "her teacher", + "No", + "Quinton's mother", + "to the dentist", + "yes" + ], + "answer_start": [ + 0, + 56, + 190, + 343, + 414, + 565, + 601, + 888, + 906, + 1098, + 1179, + 1265, + 1296, + 1382, + 1436, + 1481, + 1514, + 1546 + ], + "answer_end": [ + 54, + 107, + 341, + 367, + 497, + 600, + 631, + 903, + 965, + 1177, + 1216, + 1291, + 1350, + 1434, + 1454, + 1509, + 1541, + 1576 + ] + } + } + }, + { + "input": { + "input": "Where do Quinton and Kendra travel to and from every day?", + "output": "No", + "expected": "school" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Kendra and Quinton travel to and from school every day. Kendra lives further from the bus stop than Quinton does, stops every morning at Quinton's house to join him to walk to the bus stop. Every afternoon, after school, when walking home from the bus stop they go in for cookies and milk that Quinton's mother has ready and waiting for them. Quinton can't eat cheese or cake so they had the same snack every day. They both work together on their homework and when they are done they play together. Kendra always makes sure to leave in time to get home for dinner. She doesn't want to miss story time which was right before bedtime. \n\nOne morning Kendra walked up to Quinton's house, she thought something might be wrong because normally Quinton was waiting outside for her and on this morning he was not to be found. Kendra went up to the door and knocked. She waited and waited and yet no one answered. She saw that Quinton's mother's car wasn't in their driveway which was weird. She waited for a few bit looking up and down the block and getting worried when Quinton was nowhere to be found. \n\nKendra didn't want to miss the bus to school and hurried off to make it in time. The bus driver saw that she was upset and that Quinton was not with her that morning. She told him what happened and he said that he was sure that everything would be okay. \n\nKendra got to school, ran to her teacher and told him what happened that morning. The teacher smiled and told her not to worry, Quinton's mother had called and he was going to the dentist and would be at school after lunch and that she would see him at the bus stop like normal tomorrow.", + "questions": [ + "Where do Quinton and Kendra travel to and from every day?", + "Does Quinton live further from the bus stop?", + "What do they do every afternoon after school?", + "Does Quinton eat cheese?", + "Do they play before their homework?", + "What does Kendra not want to miss?", + "When is that?", + "What happened when Kendra knocked on Quinton's door?", + "Did she see the car?", + "Did she miss the bus?", + "What did the bus driver see?", + "Did Kendra tell him why?", + "What did he say?", + "When she got to school, who did she tell?", + "Did he frown?", + "Who had called?", + "Where did he go?", + "When would he be back?" + ], + "answers": { + "input_text": [ + "school", + "No", + "go to Quentin's house", + "No", + "No", + "story time", + "right before bedtime", + "no one answered", + "No", + "No", + "that she was upset", + "yes", + "everything would be okay", + "her teacher", + "No", + "Quinton's mother", + "to the dentist", + "yes" + ], + "answer_start": [ + 0, + 56, + 190, + 343, + 414, + 565, + 601, + 888, + 906, + 1098, + 1179, + 1265, + 1296, + 1382, + 1436, + 1481, + 1514, + 1546 + ], + "answer_end": [ + 54, + 107, + 341, + 367, + 497, + 600, + 631, + 903, + 965, + 1177, + 1216, + 1291, + 1350, + 1434, + 1454, + 1509, + 1541, + 1576 + ] + } + } + }, + { + "input": { + "input": "Where do Quinton and Kendra travel to and from every day?", + "output": "No school go to Quentin's house", + "expected": "school" + }, + "expected": 0.6, + "metadata": { + "source": "mctest", + "story": "Kendra and Quinton travel to and from school every day. Kendra lives further from the bus stop than Quinton does, stops every morning at Quinton's house to join him to walk to the bus stop. Every afternoon, after school, when walking home from the bus stop they go in for cookies and milk that Quinton's mother has ready and waiting for them. Quinton can't eat cheese or cake so they had the same snack every day. They both work together on their homework and when they are done they play together. Kendra always makes sure to leave in time to get home for dinner. She doesn't want to miss story time which was right before bedtime. \n\nOne morning Kendra walked up to Quinton's house, she thought something might be wrong because normally Quinton was waiting outside for her and on this morning he was not to be found. Kendra went up to the door and knocked. She waited and waited and yet no one answered. She saw that Quinton's mother's car wasn't in their driveway which was weird. She waited for a few bit looking up and down the block and getting worried when Quinton was nowhere to be found. \n\nKendra didn't want to miss the bus to school and hurried off to make it in time. The bus driver saw that she was upset and that Quinton was not with her that morning. She told him what happened and he said that he was sure that everything would be okay. \n\nKendra got to school, ran to her teacher and told him what happened that morning. The teacher smiled and told her not to worry, Quinton's mother had called and he was going to the dentist and would be at school after lunch and that she would see him at the bus stop like normal tomorrow.", + "questions": [ + "Where do Quinton and Kendra travel to and from every day?", + "Does Quinton live further from the bus stop?", + "What do they do every afternoon after school?", + "Does Quinton eat cheese?", + "Do they play before their homework?", + "What does Kendra not want to miss?", + "When is that?", + "What happened when Kendra knocked on Quinton's door?", + "Did she see the car?", + "Did she miss the bus?", + "What did the bus driver see?", + "Did Kendra tell him why?", + "What did he say?", + "When she got to school, who did she tell?", + "Did he frown?", + "Who had called?", + "Where did he go?", + "When would he be back?" + ], + "answers": { + "input_text": [ + "school", + "No", + "go to Quentin's house", + "No", + "No", + "story time", + "right before bedtime", + "no one answered", + "No", + "No", + "that she was upset", + "yes", + "everything would be okay", + "her teacher", + "No", + "Quinton's mother", + "to the dentist", + "yes" + ], + "answer_start": [ + 0, + 56, + 190, + 343, + 414, + 565, + 601, + 888, + 906, + 1098, + 1179, + 1265, + 1296, + 1382, + 1436, + 1481, + 1514, + 1546 + ], + "answer_end": [ + 54, + 107, + 341, + 367, + 497, + 600, + 631, + 903, + 965, + 1177, + 1216, + 1291, + 1350, + 1434, + 1454, + 1509, + 1541, + 1576 + ] + } + } + }, + { + "input": { + "input": "How many burroughs are there?", + "output": "five", + "expected": "five" + }, + "expected": 1, + "metadata": { + "source": "wikipedia", + "story": "Staten Island is one of the five boroughs of New York City in the U.S. state of New York. In the southwest of the city, Staten Island is the southernmost part of both the city and state of New York, with Conference House Park at the southern tip of the island and the state. The borough is separated from New Jersey by the Arthur Kill and the Kill Van Kull, and from the rest of New York by New York Bay. With a 2016 Census-estimated population of 476,015, Staten Island is the least populated of the boroughs but is the third-largest in area at . Staten Island is the only borough of New York with a non-Hispanic White majority. The borough is coextensive with Richmond County, and until 1975 was the Borough of Richmond. Its flag was later changed to reflect this. Staten Island has been sometimes called \"the forgotten borough\" by inhabitants who feel neglected by the city government. \n\nThe North Shore—especially the neighborhoods of St. George, Tompkinsville, Clifton, and Stapleton—is the most urban part of the island; it contains the designated St. George Historic District and the St. Paul's Avenue-Stapleton Heights Historic District, which feature large Victorian houses. The East Shore is home to the F.D.R. Boardwalk, the fourth-longest in the world. The South Shore, site of the 17th-century Dutch and French Huguenot settlement, developed rapidly beginning in the 1960s and 1970s and is now mostly suburban in character. The West Shore is the least populated and most industrial part of the island.", + "questions": [ + "How many burroughs are there?", + "in what city?", + "and state?", + "Is staten island one?", + "Where is it?", + "What separates it from new jersey?", + "What is its population?", + "Is it the most populated?", + "what ethnicity is the majority?", + "What is it sometimes called?", + "why?", + "what is the most urban part?", + "which neighborhoods?" + ], + "answers": { + "input_text": [ + "five", + "New York City", + "New York", + "Yes", + "In the southwest of the city", + "Arthur Kill and the Kill Van Kull", + "476,015", + "no", + "non-Hispanic White", + "the forgotten borough", + "because the inhabitants feel neglected by the city government", + "North Shore", + "St. George, Tompkinsville, Clifton, and Stapleton" + ], + "answer_start": [ + 28, + 45, + 80, + 17, + 88, + 322, + 448, + 477, + 600, + 808, + 831, + 894, + 939 + ], + "answer_end": [ + 32, + 58, + 88, + 21, + 119, + 356, + 455, + 493, + 620, + 829, + 890, + 906, + 988 + ] + } + } + }, + { + "input": { + "input": "How many burroughs are there?", + "output": "New York City", + "expected": "five" + }, + "expected": 0, + "metadata": { + "source": "wikipedia", + "story": "Staten Island is one of the five boroughs of New York City in the U.S. state of New York. In the southwest of the city, Staten Island is the southernmost part of both the city and state of New York, with Conference House Park at the southern tip of the island and the state. The borough is separated from New Jersey by the Arthur Kill and the Kill Van Kull, and from the rest of New York by New York Bay. With a 2016 Census-estimated population of 476,015, Staten Island is the least populated of the boroughs but is the third-largest in area at . Staten Island is the only borough of New York with a non-Hispanic White majority. The borough is coextensive with Richmond County, and until 1975 was the Borough of Richmond. Its flag was later changed to reflect this. Staten Island has been sometimes called \"the forgotten borough\" by inhabitants who feel neglected by the city government. \n\nThe North Shore—especially the neighborhoods of St. George, Tompkinsville, Clifton, and Stapleton—is the most urban part of the island; it contains the designated St. George Historic District and the St. Paul's Avenue-Stapleton Heights Historic District, which feature large Victorian houses. The East Shore is home to the F.D.R. Boardwalk, the fourth-longest in the world. The South Shore, site of the 17th-century Dutch and French Huguenot settlement, developed rapidly beginning in the 1960s and 1970s and is now mostly suburban in character. The West Shore is the least populated and most industrial part of the island.", + "questions": [ + "How many burroughs are there?", + "in what city?", + "and state?", + "Is staten island one?", + "Where is it?", + "What separates it from new jersey?", + "What is its population?", + "Is it the most populated?", + "what ethnicity is the majority?", + "What is it sometimes called?", + "why?", + "what is the most urban part?", + "which neighborhoods?" + ], + "answers": { + "input_text": [ + "five", + "New York City", + "New York", + "Yes", + "In the southwest of the city", + "Arthur Kill and the Kill Van Kull", + "476,015", + "no", + "non-Hispanic White", + "the forgotten borough", + "because the inhabitants feel neglected by the city government", + "North Shore", + "St. George, Tompkinsville, Clifton, and Stapleton" + ], + "answer_start": [ + 28, + 45, + 80, + 17, + 88, + 322, + 448, + 477, + 600, + 808, + 831, + 894, + 939 + ], + "answer_end": [ + 32, + 58, + 88, + 21, + 119, + 356, + 455, + 493, + 620, + 829, + 890, + 906, + 988 + ] + } + } + }, + { + "input": { + "input": "How many burroughs are there?", + "output": "New York City five New York", + "expected": "five" + }, + "expected": 0.6, + "metadata": { + "source": "wikipedia", + "story": "Staten Island is one of the five boroughs of New York City in the U.S. state of New York. In the southwest of the city, Staten Island is the southernmost part of both the city and state of New York, with Conference House Park at the southern tip of the island and the state. The borough is separated from New Jersey by the Arthur Kill and the Kill Van Kull, and from the rest of New York by New York Bay. With a 2016 Census-estimated population of 476,015, Staten Island is the least populated of the boroughs but is the third-largest in area at . Staten Island is the only borough of New York with a non-Hispanic White majority. The borough is coextensive with Richmond County, and until 1975 was the Borough of Richmond. Its flag was later changed to reflect this. Staten Island has been sometimes called \"the forgotten borough\" by inhabitants who feel neglected by the city government. \n\nThe North Shore—especially the neighborhoods of St. George, Tompkinsville, Clifton, and Stapleton—is the most urban part of the island; it contains the designated St. George Historic District and the St. Paul's Avenue-Stapleton Heights Historic District, which feature large Victorian houses. The East Shore is home to the F.D.R. Boardwalk, the fourth-longest in the world. The South Shore, site of the 17th-century Dutch and French Huguenot settlement, developed rapidly beginning in the 1960s and 1970s and is now mostly suburban in character. The West Shore is the least populated and most industrial part of the island.", + "questions": [ + "How many burroughs are there?", + "in what city?", + "and state?", + "Is staten island one?", + "Where is it?", + "What separates it from new jersey?", + "What is its population?", + "Is it the most populated?", + "what ethnicity is the majority?", + "What is it sometimes called?", + "why?", + "what is the most urban part?", + "which neighborhoods?" + ], + "answers": { + "input_text": [ + "five", + "New York City", + "New York", + "Yes", + "In the southwest of the city", + "Arthur Kill and the Kill Van Kull", + "476,015", + "no", + "non-Hispanic White", + "the forgotten borough", + "because the inhabitants feel neglected by the city government", + "North Shore", + "St. George, Tompkinsville, Clifton, and Stapleton" + ], + "answer_start": [ + 28, + 45, + 80, + 17, + 88, + 322, + 448, + 477, + 600, + 808, + 831, + 894, + 939 + ], + "answer_end": [ + 32, + 58, + 88, + 21, + 119, + 356, + 455, + 493, + 620, + 829, + 890, + 906, + 988 + ] + } + } + }, + { + "input": { + "input": "When did Reginald Eppes wake up?", + "output": "Five in the morning", + "expected": "Five in the morning" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "Thunder was coming when Reginald Eppes woke up at five in the morning. He checked the weather forecast. A violent storm was coming ,but it sounded like his small town wouldn't be hit too hard. But Eppes, a firefighter, had clearly known the power of these huge storms from experiences. \"Do you know where the flashlights are?\" he asked his wife. Danielle. Just then, thunder was all-around them. The moment he turned the flashlight on. The house lights went off. A second later, the kitchen windows were broken. Eppes and Danielle ran to their boys who were still sleeping in their bedroom. \n\n\"Get up, get up, R.J.! \" Eppes shouted, waving his flashlight. The sleepy boy moved to the edge of the bed. Eppes held out his arms and ordered his son to jump. He was too late. The roof was torn down. R.J. was buried ,under the pieces. \n\n\"I've lost him,\" Eppes thought. Quickly, he hurried to Joel to shield him. Glass, wood, and plaster ( ) hit them. Then something huge, heavy-maybe the washing machine-knocked into him. He hurt his arms, but he still held the flashlight in one hand. \n\nAfter a long period, the wind began to die down. Eppes found himself standing in the ruins of his home. Darkness lay all about him. Then he thought he saw a shape moving straight toward him. It was R.J., guided home by the light of his father's flashlight. \n\nAt the hospital later, R.J. described what had happened to him. \"I rushed out when the wall started moving I was scared. My mom and dad were gone. Pieces of glass hit my back, and something hit my neck really hard. \" \n\nR.J. had been raised up into the air by the wind and dropped back to the ground. Amazingly, R.J. was not hurt badly. Of all his family, Eppes was hurt most seriously.", + "questions": [ + "When did Reginald Eppes wake up?", + "What was the first thing he checked?", + "Was there a storm headed that way?", + "What was his profession?", + "Did the house lights go out?", + "What device did they use when the power went out?", + "Who was buried under the roof?", + "Who did he need to shield?", + "What were they hit by?", + "Was RJ badly hurt?", + "Who was hurt the worst?", + "What guided RJ home?" + ], + "answers": { + "input_text": [ + "Five in the morning", + "Weather forecast", + "Yes", + "Firefighter", + "Yes", + "Flashlight", + "R.J.", + "Joel", + "Glass, wood, plaster, and maybe the washing machine", + "No", + "Eppes", + "The flashlight" + ], + "answer_start": [ + 24, + 71, + 104, + 193, + 396, + 396, + 771, + 864, + 907, + 1641, + 1696, + 1274 + ], + "answer_end": [ + 69, + 102, + 130, + 217, + 461, + 461, + 829, + 906, + 1016, + 1677, + 1726, + 1339 + ] + } + } + }, + { + "input": { + "input": "When did Reginald Eppes wake up?", + "output": "Weather forecast", + "expected": "Five in the morning" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "Thunder was coming when Reginald Eppes woke up at five in the morning. He checked the weather forecast. A violent storm was coming ,but it sounded like his small town wouldn't be hit too hard. But Eppes, a firefighter, had clearly known the power of these huge storms from experiences. \"Do you know where the flashlights are?\" he asked his wife. Danielle. Just then, thunder was all-around them. The moment he turned the flashlight on. The house lights went off. A second later, the kitchen windows were broken. Eppes and Danielle ran to their boys who were still sleeping in their bedroom. \n\n\"Get up, get up, R.J.! \" Eppes shouted, waving his flashlight. The sleepy boy moved to the edge of the bed. Eppes held out his arms and ordered his son to jump. He was too late. The roof was torn down. R.J. was buried ,under the pieces. \n\n\"I've lost him,\" Eppes thought. Quickly, he hurried to Joel to shield him. Glass, wood, and plaster ( ) hit them. Then something huge, heavy-maybe the washing machine-knocked into him. He hurt his arms, but he still held the flashlight in one hand. \n\nAfter a long period, the wind began to die down. Eppes found himself standing in the ruins of his home. Darkness lay all about him. Then he thought he saw a shape moving straight toward him. It was R.J., guided home by the light of his father's flashlight. \n\nAt the hospital later, R.J. described what had happened to him. \"I rushed out when the wall started moving I was scared. My mom and dad were gone. Pieces of glass hit my back, and something hit my neck really hard. \" \n\nR.J. had been raised up into the air by the wind and dropped back to the ground. Amazingly, R.J. was not hurt badly. Of all his family, Eppes was hurt most seriously.", + "questions": [ + "When did Reginald Eppes wake up?", + "What was the first thing he checked?", + "Was there a storm headed that way?", + "What was his profession?", + "Did the house lights go out?", + "What device did they use when the power went out?", + "Who was buried under the roof?", + "Who did he need to shield?", + "What were they hit by?", + "Was RJ badly hurt?", + "Who was hurt the worst?", + "What guided RJ home?" + ], + "answers": { + "input_text": [ + "Five in the morning", + "Weather forecast", + "Yes", + "Firefighter", + "Yes", + "Flashlight", + "R.J.", + "Joel", + "Glass, wood, plaster, and maybe the washing machine", + "No", + "Eppes", + "The flashlight" + ], + "answer_start": [ + 24, + 71, + 104, + 193, + 396, + 396, + 771, + 864, + 907, + 1641, + 1696, + 1274 + ], + "answer_end": [ + 69, + 102, + 130, + 217, + 461, + 461, + 829, + 906, + 1016, + 1677, + 1726, + 1339 + ] + } + } + }, + { + "input": { + "input": "When did Reginald Eppes wake up?", + "output": "Weather forecast Five in the morning Yes", + "expected": "Five in the morning" + }, + "expected": 0.6, + "metadata": { + "source": "race", + "story": "Thunder was coming when Reginald Eppes woke up at five in the morning. He checked the weather forecast. A violent storm was coming ,but it sounded like his small town wouldn't be hit too hard. But Eppes, a firefighter, had clearly known the power of these huge storms from experiences. \"Do you know where the flashlights are?\" he asked his wife. Danielle. Just then, thunder was all-around them. The moment he turned the flashlight on. The house lights went off. A second later, the kitchen windows were broken. Eppes and Danielle ran to their boys who were still sleeping in their bedroom. \n\n\"Get up, get up, R.J.! \" Eppes shouted, waving his flashlight. The sleepy boy moved to the edge of the bed. Eppes held out his arms and ordered his son to jump. He was too late. The roof was torn down. R.J. was buried ,under the pieces. \n\n\"I've lost him,\" Eppes thought. Quickly, he hurried to Joel to shield him. Glass, wood, and plaster ( ) hit them. Then something huge, heavy-maybe the washing machine-knocked into him. He hurt his arms, but he still held the flashlight in one hand. \n\nAfter a long period, the wind began to die down. Eppes found himself standing in the ruins of his home. Darkness lay all about him. Then he thought he saw a shape moving straight toward him. It was R.J., guided home by the light of his father's flashlight. \n\nAt the hospital later, R.J. described what had happened to him. \"I rushed out when the wall started moving I was scared. My mom and dad were gone. Pieces of glass hit my back, and something hit my neck really hard. \" \n\nR.J. had been raised up into the air by the wind and dropped back to the ground. Amazingly, R.J. was not hurt badly. Of all his family, Eppes was hurt most seriously.", + "questions": [ + "When did Reginald Eppes wake up?", + "What was the first thing he checked?", + "Was there a storm headed that way?", + "What was his profession?", + "Did the house lights go out?", + "What device did they use when the power went out?", + "Who was buried under the roof?", + "Who did he need to shield?", + "What were they hit by?", + "Was RJ badly hurt?", + "Who was hurt the worst?", + "What guided RJ home?" + ], + "answers": { + "input_text": [ + "Five in the morning", + "Weather forecast", + "Yes", + "Firefighter", + "Yes", + "Flashlight", + "R.J.", + "Joel", + "Glass, wood, plaster, and maybe the washing machine", + "No", + "Eppes", + "The flashlight" + ], + "answer_start": [ + 24, + 71, + 104, + 193, + 396, + 396, + 771, + 864, + 907, + 1641, + 1696, + 1274 + ], + "answer_end": [ + 69, + 102, + 130, + 217, + 461, + 461, + 829, + 906, + 1016, + 1677, + 1726, + 1339 + ] + } + } + }, + { + "input": { + "input": "Whose house was searched?", + "output": "Gary Giordano", + "expected": "Gary Giordano" + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "(CNN) -- FBI agents on Friday night searched the Maryland home of the suspect in the recent disappearance of an American woman in Aruba, an agent said. \n\nThe search is occurring in the Gaithersburg residence of Gary Giordano, who is currently being held in an Aruban jail, FBI Special Agent Rich Wolf told CNN. \n\nAgents, wearing vests that said FBI and carrying empty cardboard and plastic boxes, arrived about 8:40 p.m. Friday. About 15 unmarked cars could be seen on the street, as well as a Montgomery County police vehicle. \n\nSupervisory Special Agent Philip Celestini, who was at the residence, declined to comment further on the search, citing the active investigation. \n\nAruban Solicitor General Taco Stein said earlier Friday that the suspect will appear in court Monday, where an investigating magistrate could order him held for at least eight more days, order him to remain on the island or release him outright due to a lack of evidence. \n\nGiordano was arrested by Aruban police on August 5, three days after Robyn Gardner was last seen near Baby Beach on the western tip of the Caribbean island. \n\nGiordano told authorities that he had been snorkeling with Gardner when he signaled to her to swim back, according to a statement. When he reached the beach, Gardner was nowhere to be found, Giordano allegedly said. \n\nThe area that Giordano led authorities to is a rocky, unsightly location that locals say is not a popular snorkeling spot. \n\nAlthough prosecutors have continued to identify the 50-year-old American man by his initials, GVG, they also released a photo of a man who appears to be Giordano. His attorney, Michael Lopez, also has said that his client is being held as a suspect in Gardner's death. Lopez has not returned telephone calls seeking comment. ", + "questions": [ + "Whose house was searched?", + "In what city?", + "County?", + "State?", + "Where is he now?", + "Why?", + "What organization is doing the search?", + "How many unmarked vehicles were there?", + "Who spoke for the Aruban government?", + "When will Giordano go to court?", + "How many days could he be held?", + "Who went missing?", + "Where?", + "What was she doing?", + "With whom?", + "Did she return safely?", + "Is the beach a good snorkeling place?", + "How old is he?", + "When was he arrested?", + "How many were snorkeling?" + ], + "answers": { + "input_text": [ + "Gary Giordano", + "Gaithersburg", + "Montgomery County", + "Maryland", + "Aruban jail", + "suspect in the recent disappearance of an American woman", + "FBI", + "15", + "Aruban Solicitor General Taco Stein", + "Monday", + "at least eight more days", + "Robyn Gardne", + "ast seen near Baby Beach", + "snorkeling", + "Giordano", + "No, Gardner was nowhere to be found", + "locals say is not a popular snorkeling spot.", + "50", + "August 5", + "2, Giordano told authorities that he had been snorkeling with Gardner" + ], + "answer_start": [ + 211, + 184, + 494, + 48, + 260, + 70, + 345, + 435, + 678, + 772, + 839, + 1021, + 1040, + 1154, + 1111, + 1269, + 1407, + 1506, + 993, + 1111 + ], + "answer_end": [ + 224, + 197, + 511, + 57, + 271, + 126, + 348, + 437, + 713, + 778, + 863, + 1033, + 1064, + 1164, + 1119, + 1300, + 1452, + 1508, + 1002, + 1177 + ] + } + } + }, + { + "input": { + "input": "Whose house was searched?", + "output": "Gaithersburg", + "expected": "Gary Giordano" + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "(CNN) -- FBI agents on Friday night searched the Maryland home of the suspect in the recent disappearance of an American woman in Aruba, an agent said. \n\nThe search is occurring in the Gaithersburg residence of Gary Giordano, who is currently being held in an Aruban jail, FBI Special Agent Rich Wolf told CNN. \n\nAgents, wearing vests that said FBI and carrying empty cardboard and plastic boxes, arrived about 8:40 p.m. Friday. About 15 unmarked cars could be seen on the street, as well as a Montgomery County police vehicle. \n\nSupervisory Special Agent Philip Celestini, who was at the residence, declined to comment further on the search, citing the active investigation. \n\nAruban Solicitor General Taco Stein said earlier Friday that the suspect will appear in court Monday, where an investigating magistrate could order him held for at least eight more days, order him to remain on the island or release him outright due to a lack of evidence. \n\nGiordano was arrested by Aruban police on August 5, three days after Robyn Gardner was last seen near Baby Beach on the western tip of the Caribbean island. \n\nGiordano told authorities that he had been snorkeling with Gardner when he signaled to her to swim back, according to a statement. When he reached the beach, Gardner was nowhere to be found, Giordano allegedly said. \n\nThe area that Giordano led authorities to is a rocky, unsightly location that locals say is not a popular snorkeling spot. \n\nAlthough prosecutors have continued to identify the 50-year-old American man by his initials, GVG, they also released a photo of a man who appears to be Giordano. His attorney, Michael Lopez, also has said that his client is being held as a suspect in Gardner's death. Lopez has not returned telephone calls seeking comment. ", + "questions": [ + "Whose house was searched?", + "In what city?", + "County?", + "State?", + "Where is he now?", + "Why?", + "What organization is doing the search?", + "How many unmarked vehicles were there?", + "Who spoke for the Aruban government?", + "When will Giordano go to court?", + "How many days could he be held?", + "Who went missing?", + "Where?", + "What was she doing?", + "With whom?", + "Did she return safely?", + "Is the beach a good snorkeling place?", + "How old is he?", + "When was he arrested?", + "How many were snorkeling?" + ], + "answers": { + "input_text": [ + "Gary Giordano", + "Gaithersburg", + "Montgomery County", + "Maryland", + "Aruban jail", + "suspect in the recent disappearance of an American woman", + "FBI", + "15", + "Aruban Solicitor General Taco Stein", + "Monday", + "at least eight more days", + "Robyn Gardne", + "ast seen near Baby Beach", + "snorkeling", + "Giordano", + "No, Gardner was nowhere to be found", + "locals say is not a popular snorkeling spot.", + "50", + "August 5", + "2, Giordano told authorities that he had been snorkeling with Gardner" + ], + "answer_start": [ + 211, + 184, + 494, + 48, + 260, + 70, + 345, + 435, + 678, + 772, + 839, + 1021, + 1040, + 1154, + 1111, + 1269, + 1407, + 1506, + 993, + 1111 + ], + "answer_end": [ + 224, + 197, + 511, + 57, + 271, + 126, + 348, + 437, + 713, + 778, + 863, + 1033, + 1064, + 1164, + 1119, + 1300, + 1452, + 1508, + 1002, + 1177 + ] + } + } + }, + { + "input": { + "input": "Whose house was searched?", + "output": "Gaithersburg Gary Giordano Montgomery County", + "expected": "Gary Giordano" + }, + "expected": 0.6, + "metadata": { + "source": "cnn", + "story": "(CNN) -- FBI agents on Friday night searched the Maryland home of the suspect in the recent disappearance of an American woman in Aruba, an agent said. \n\nThe search is occurring in the Gaithersburg residence of Gary Giordano, who is currently being held in an Aruban jail, FBI Special Agent Rich Wolf told CNN. \n\nAgents, wearing vests that said FBI and carrying empty cardboard and plastic boxes, arrived about 8:40 p.m. Friday. About 15 unmarked cars could be seen on the street, as well as a Montgomery County police vehicle. \n\nSupervisory Special Agent Philip Celestini, who was at the residence, declined to comment further on the search, citing the active investigation. \n\nAruban Solicitor General Taco Stein said earlier Friday that the suspect will appear in court Monday, where an investigating magistrate could order him held for at least eight more days, order him to remain on the island or release him outright due to a lack of evidence. \n\nGiordano was arrested by Aruban police on August 5, three days after Robyn Gardner was last seen near Baby Beach on the western tip of the Caribbean island. \n\nGiordano told authorities that he had been snorkeling with Gardner when he signaled to her to swim back, according to a statement. When he reached the beach, Gardner was nowhere to be found, Giordano allegedly said. \n\nThe area that Giordano led authorities to is a rocky, unsightly location that locals say is not a popular snorkeling spot. \n\nAlthough prosecutors have continued to identify the 50-year-old American man by his initials, GVG, they also released a photo of a man who appears to be Giordano. His attorney, Michael Lopez, also has said that his client is being held as a suspect in Gardner's death. Lopez has not returned telephone calls seeking comment. ", + "questions": [ + "Whose house was searched?", + "In what city?", + "County?", + "State?", + "Where is he now?", + "Why?", + "What organization is doing the search?", + "How many unmarked vehicles were there?", + "Who spoke for the Aruban government?", + "When will Giordano go to court?", + "How many days could he be held?", + "Who went missing?", + "Where?", + "What was she doing?", + "With whom?", + "Did she return safely?", + "Is the beach a good snorkeling place?", + "How old is he?", + "When was he arrested?", + "How many were snorkeling?" + ], + "answers": { + "input_text": [ + "Gary Giordano", + "Gaithersburg", + "Montgomery County", + "Maryland", + "Aruban jail", + "suspect in the recent disappearance of an American woman", + "FBI", + "15", + "Aruban Solicitor General Taco Stein", + "Monday", + "at least eight more days", + "Robyn Gardne", + "ast seen near Baby Beach", + "snorkeling", + "Giordano", + "No, Gardner was nowhere to be found", + "locals say is not a popular snorkeling spot.", + "50", + "August 5", + "2, Giordano told authorities that he had been snorkeling with Gardner" + ], + "answer_start": [ + 211, + 184, + 494, + 48, + 260, + 70, + 345, + 435, + 678, + 772, + 839, + 1021, + 1040, + 1154, + 1111, + 1269, + 1407, + 1506, + 993, + 1111 + ], + "answer_end": [ + 224, + 197, + 511, + 57, + 271, + 126, + 348, + 437, + 713, + 778, + 863, + 1033, + 1064, + 1164, + 1119, + 1300, + 1452, + 1508, + 1002, + 1177 + ] + } + } + }, + { + "input": { + "input": "Which country consumes tea the most?", + "output": "Great Britain", + "expected": "Great Britain" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "Which country grows the most tea? The answer is India. It grows three times as much as China. Which country drinks the most tea? It's neither China nor Japan. It's Great Britain. In the wild, tea plants may be 30 feet tall. But a plant grown for market is pruned. Pruning keeps the plant only three or four feet tall. This is an easy height for tea picking. Only the two top leaves and bud of each new shoot are picked. So to make money, tea plantations must be huge. In general, there are two kinds of tea. Black tea and green tea. Black tea is fermented. In the process, the tea loses nearly all of its healthy qualities. Green tea is steamed right after the leaves are picked. Green tea _ its healthy qualities. For example, it may prevent heart disease. How did we get tea bag? The answer: by accident. Tea merchants used to send samples in tin boxes. This was costly. One merchant thought of a cheaper way. He sent samples in small silk bags. Customers would cut open the bag. They would brew the leaves as usual. One customer put the bag into a pot. Then he just poured hot water over it. And the tea bag was born. Shen Nong was the first to drink tea. (Shen was a Chinese emperor.) This was about 2737 B.C. Shen had bad digestion. So he drank several cups of hot water daily. One day something happened. Leaves from a wild tea tree fell into the hot water pot. The next cup was poured. The water was now colored. Shen sipped it. He liked it. He drank it all. Shen was proud of his new drink. He served it to his guests. Word spread. People thought this way. Tea is good enough for the Emperor. So it must be good enough for the people. Tea became the drink of China.", + "questions": [ + "Which country consumes tea the most?", + "Which country grows it the most?", + "How tall is the tea plant?", + "What did they do to green tea after picking it?", + "What good thing do the tea do to the health?", + "How was the tea created?", + "Who took the tea first?", + "When did he take it?", + "Was he happy with it?", + "How did his body react to the tea?" + ], + "answers": { + "input_text": [ + "Great Britain", + "India.", + "may be 30 feet tall", + "prune it", + "may prevent heart disease.", + "by accident", + "Shen Nong", + "about 2737 B.C", + "yes", + "unknown" + ], + "answer_start": [ + 159, + 34, + 196, + 224, + 731, + 794, + 1120, + 1190, + 1436, + -1 + ], + "answer_end": [ + 177, + 54, + 222, + 264, + 757, + 805, + 1158, + 1212, + 1448, + -1 + ] + } + } + }, + { + "input": { + "input": "Which country consumes tea the most?", + "output": "India.", + "expected": "Great Britain" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "Which country grows the most tea? The answer is India. It grows three times as much as China. Which country drinks the most tea? It's neither China nor Japan. It's Great Britain. In the wild, tea plants may be 30 feet tall. But a plant grown for market is pruned. Pruning keeps the plant only three or four feet tall. This is an easy height for tea picking. Only the two top leaves and bud of each new shoot are picked. So to make money, tea plantations must be huge. In general, there are two kinds of tea. Black tea and green tea. Black tea is fermented. In the process, the tea loses nearly all of its healthy qualities. Green tea is steamed right after the leaves are picked. Green tea _ its healthy qualities. For example, it may prevent heart disease. How did we get tea bag? The answer: by accident. Tea merchants used to send samples in tin boxes. This was costly. One merchant thought of a cheaper way. He sent samples in small silk bags. Customers would cut open the bag. They would brew the leaves as usual. One customer put the bag into a pot. Then he just poured hot water over it. And the tea bag was born. Shen Nong was the first to drink tea. (Shen was a Chinese emperor.) This was about 2737 B.C. Shen had bad digestion. So he drank several cups of hot water daily. One day something happened. Leaves from a wild tea tree fell into the hot water pot. The next cup was poured. The water was now colored. Shen sipped it. He liked it. He drank it all. Shen was proud of his new drink. He served it to his guests. Word spread. People thought this way. Tea is good enough for the Emperor. So it must be good enough for the people. Tea became the drink of China.", + "questions": [ + "Which country consumes tea the most?", + "Which country grows it the most?", + "How tall is the tea plant?", + "What did they do to green tea after picking it?", + "What good thing do the tea do to the health?", + "How was the tea created?", + "Who took the tea first?", + "When did he take it?", + "Was he happy with it?", + "How did his body react to the tea?" + ], + "answers": { + "input_text": [ + "Great Britain", + "India.", + "may be 30 feet tall", + "prune it", + "may prevent heart disease.", + "by accident", + "Shen Nong", + "about 2737 B.C", + "yes", + "unknown" + ], + "answer_start": [ + 159, + 34, + 196, + 224, + 731, + 794, + 1120, + 1190, + 1436, + -1 + ], + "answer_end": [ + 177, + 54, + 222, + 264, + 757, + 805, + 1158, + 1212, + 1448, + -1 + ] + } + } + }, + { + "input": { + "input": "Which country consumes tea the most?", + "output": "India. Great Britain may be 30 feet tall", + "expected": "Great Britain" + }, + "expected": 0.6, + "metadata": { + "source": "race", + "story": "Which country grows the most tea? The answer is India. It grows three times as much as China. Which country drinks the most tea? It's neither China nor Japan. It's Great Britain. In the wild, tea plants may be 30 feet tall. But a plant grown for market is pruned. Pruning keeps the plant only three or four feet tall. This is an easy height for tea picking. Only the two top leaves and bud of each new shoot are picked. So to make money, tea plantations must be huge. In general, there are two kinds of tea. Black tea and green tea. Black tea is fermented. In the process, the tea loses nearly all of its healthy qualities. Green tea is steamed right after the leaves are picked. Green tea _ its healthy qualities. For example, it may prevent heart disease. How did we get tea bag? The answer: by accident. Tea merchants used to send samples in tin boxes. This was costly. One merchant thought of a cheaper way. He sent samples in small silk bags. Customers would cut open the bag. They would brew the leaves as usual. One customer put the bag into a pot. Then he just poured hot water over it. And the tea bag was born. Shen Nong was the first to drink tea. (Shen was a Chinese emperor.) This was about 2737 B.C. Shen had bad digestion. So he drank several cups of hot water daily. One day something happened. Leaves from a wild tea tree fell into the hot water pot. The next cup was poured. The water was now colored. Shen sipped it. He liked it. He drank it all. Shen was proud of his new drink. He served it to his guests. Word spread. People thought this way. Tea is good enough for the Emperor. So it must be good enough for the people. Tea became the drink of China.", + "questions": [ + "Which country consumes tea the most?", + "Which country grows it the most?", + "How tall is the tea plant?", + "What did they do to green tea after picking it?", + "What good thing do the tea do to the health?", + "How was the tea created?", + "Who took the tea first?", + "When did he take it?", + "Was he happy with it?", + "How did his body react to the tea?" + ], + "answers": { + "input_text": [ + "Great Britain", + "India.", + "may be 30 feet tall", + "prune it", + "may prevent heart disease.", + "by accident", + "Shen Nong", + "about 2737 B.C", + "yes", + "unknown" + ], + "answer_start": [ + 159, + 34, + 196, + 224, + 731, + 794, + 1120, + 1190, + 1436, + -1 + ], + "answer_end": [ + 177, + 54, + 222, + 264, + 757, + 805, + 1158, + 1212, + 1448, + -1 + ] + } + } + }, + { + "input": { + "input": "What news agency showed photos of American soldiers?", + "output": "Der Spiegel", + "expected": "Der Spiegel" + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "Kabul, Afghanistan (CNN) -- The German news outlet Der Spiegel has published photographs of what appear to be two U.S. soldiers in Afghanistan posing over the bodies of dead Afghans -- images which threaten to further complicate the American military effort there. \n\nTwo images show the soldiers kneeling by a bloody body sprawled over a patch of sand and grass. A third shows what appears to be two bodies propped up, back to back, against a post in front of a military vehicle. \n\nDer Spiegel identifies the soldiers as Spc. Jeremy Morlock and Pfc. Andrew Holmes, who are both facing charges relating to the wrongful deaths of Afghan civilians. \n\nSpecifically, Holmes is charged with the premeditated deaths of three civilians, possessing a dismembered human finger, wrongfully possessing photographs of human casualties, and smoking hashish. \n\nHe is also accused of conspiring with Morlock to shoot at a civilian and then toss a grenade so it would look like the soldiers were under attack. \n\nMorlock is charged with three counts of murder. He is accused of killing one Afghan civilian in January 2010 with a grenade and rifle; killing another in May 2010 in a similar manner; and shooting a third to death in February 2010. \n\nU.S. military rules also prohibit \"taking or retaining individual souvenirs or trophies,\" which the photographs may be construed as. \n\nThe trial for the two soldiers is being conducted at Joint Base Lewis-McChord in Washington. Morlock's court martial is slated to begin Wednesday, while the start date for Holmes' court martial has not been publicly announced. ", + "questions": [ + "What news agency showed photos of American soldiers?", + "From what country?", + "What were the soldiers doing in the photos?", + "What was the condition of the body?", + "What does another photo show?", + "Near what?", + "What could the photos be construed as?", + "What is the name of one of the soldiers?", + "The other?", + "What is Holmes being charged with?" + ], + "answers": { + "input_text": [ + "Der Spiegel", + "Germany", + "posing over the bodies of dead Afghans", + "bloody", + "propped up, back to back", + "military vehicle.", + "taking or retaining individual souvenirs or trophies", + "Jeremy Morlock", + "Pfc. Andrew Holmes", + "Holmes is charged with the premeditated deaths of three civilians" + ], + "answer_start": [ + 28, + 28, + 77, + 267, + 363, + 362, + 1229, + 482, + 545, + 662 + ], + "answer_end": [ + 62, + 62, + 181, + 361, + 430, + 481, + 1362, + 541, + 563, + 727 + ] + } + } + }, + { + "input": { + "input": "What news agency showed photos of American soldiers?", + "output": "Germany", + "expected": "Der Spiegel" + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "Kabul, Afghanistan (CNN) -- The German news outlet Der Spiegel has published photographs of what appear to be two U.S. soldiers in Afghanistan posing over the bodies of dead Afghans -- images which threaten to further complicate the American military effort there. \n\nTwo images show the soldiers kneeling by a bloody body sprawled over a patch of sand and grass. A third shows what appears to be two bodies propped up, back to back, against a post in front of a military vehicle. \n\nDer Spiegel identifies the soldiers as Spc. Jeremy Morlock and Pfc. Andrew Holmes, who are both facing charges relating to the wrongful deaths of Afghan civilians. \n\nSpecifically, Holmes is charged with the premeditated deaths of three civilians, possessing a dismembered human finger, wrongfully possessing photographs of human casualties, and smoking hashish. \n\nHe is also accused of conspiring with Morlock to shoot at a civilian and then toss a grenade so it would look like the soldiers were under attack. \n\nMorlock is charged with three counts of murder. He is accused of killing one Afghan civilian in January 2010 with a grenade and rifle; killing another in May 2010 in a similar manner; and shooting a third to death in February 2010. \n\nU.S. military rules also prohibit \"taking or retaining individual souvenirs or trophies,\" which the photographs may be construed as. \n\nThe trial for the two soldiers is being conducted at Joint Base Lewis-McChord in Washington. Morlock's court martial is slated to begin Wednesday, while the start date for Holmes' court martial has not been publicly announced. ", + "questions": [ + "What news agency showed photos of American soldiers?", + "From what country?", + "What were the soldiers doing in the photos?", + "What was the condition of the body?", + "What does another photo show?", + "Near what?", + "What could the photos be construed as?", + "What is the name of one of the soldiers?", + "The other?", + "What is Holmes being charged with?" + ], + "answers": { + "input_text": [ + "Der Spiegel", + "Germany", + "posing over the bodies of dead Afghans", + "bloody", + "propped up, back to back", + "military vehicle.", + "taking or retaining individual souvenirs or trophies", + "Jeremy Morlock", + "Pfc. Andrew Holmes", + "Holmes is charged with the premeditated deaths of three civilians" + ], + "answer_start": [ + 28, + 28, + 77, + 267, + 363, + 362, + 1229, + 482, + 545, + 662 + ], + "answer_end": [ + 62, + 62, + 181, + 361, + 430, + 481, + 1362, + 541, + 563, + 727 + ] + } + } + }, + { + "input": { + "input": "What news agency showed photos of American soldiers?", + "output": "Germany Der Spiegel posing over the bodies of dead Afghans", + "expected": "Der Spiegel" + }, + "expected": 0.6, + "metadata": { + "source": "cnn", + "story": "Kabul, Afghanistan (CNN) -- The German news outlet Der Spiegel has published photographs of what appear to be two U.S. soldiers in Afghanistan posing over the bodies of dead Afghans -- images which threaten to further complicate the American military effort there. \n\nTwo images show the soldiers kneeling by a bloody body sprawled over a patch of sand and grass. A third shows what appears to be two bodies propped up, back to back, against a post in front of a military vehicle. \n\nDer Spiegel identifies the soldiers as Spc. Jeremy Morlock and Pfc. Andrew Holmes, who are both facing charges relating to the wrongful deaths of Afghan civilians. \n\nSpecifically, Holmes is charged with the premeditated deaths of three civilians, possessing a dismembered human finger, wrongfully possessing photographs of human casualties, and smoking hashish. \n\nHe is also accused of conspiring with Morlock to shoot at a civilian and then toss a grenade so it would look like the soldiers were under attack. \n\nMorlock is charged with three counts of murder. He is accused of killing one Afghan civilian in January 2010 with a grenade and rifle; killing another in May 2010 in a similar manner; and shooting a third to death in February 2010. \n\nU.S. military rules also prohibit \"taking or retaining individual souvenirs or trophies,\" which the photographs may be construed as. \n\nThe trial for the two soldiers is being conducted at Joint Base Lewis-McChord in Washington. Morlock's court martial is slated to begin Wednesday, while the start date for Holmes' court martial has not been publicly announced. ", + "questions": [ + "What news agency showed photos of American soldiers?", + "From what country?", + "What were the soldiers doing in the photos?", + "What was the condition of the body?", + "What does another photo show?", + "Near what?", + "What could the photos be construed as?", + "What is the name of one of the soldiers?", + "The other?", + "What is Holmes being charged with?" + ], + "answers": { + "input_text": [ + "Der Spiegel", + "Germany", + "posing over the bodies of dead Afghans", + "bloody", + "propped up, back to back", + "military vehicle.", + "taking or retaining individual souvenirs or trophies", + "Jeremy Morlock", + "Pfc. Andrew Holmes", + "Holmes is charged with the premeditated deaths of three civilians" + ], + "answer_start": [ + 28, + 28, + 77, + 267, + 363, + 362, + 1229, + 482, + 545, + 662 + ], + "answer_end": [ + 62, + 62, + 181, + 361, + 430, + 481, + 1362, + 541, + 563, + 727 + ] + } + } + }, + { + "input": { + "input": "Who are the two boxer featured in this article?", + "output": "Floyd Mayweather and Manny Pacquiao", + "expected": "Floyd Mayweather and Manny Pacquiao" + }, + "expected": 1, + "metadata": { + "source": "cnn", + "story": "(CNN)A chiseled boxer's Instagram feed shows him making constant references to the Bible and enjoying gospel singing with his wife. \n\nAnother features his formidable opponent counting stacks of money, hanging out in strip clubs, and flashing diamond watches and Ferraris. \n\nWelcome to the world of boxing promotion, circa 2015. \n\nAmerican Floyd Mayweather and Filipino Manny Pacquiao are set to officially announce their heavily anticipated boxing match at a press conference in Los Angeles Wednesday. \n\nWith the combined purse for the May 2 bout in Las Vegas reported to touch $300 million pending viewership numbers, the incentives to self-promote could not be higher. \n\n\"Nowadays you have to be on social media to launch the fight and to build hype,\" says boxing promoter Nisse Sauerland, CEO of Team Sauerland. \"It couldn't be done without it.\" \n\nThirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. \n\nHe famously confirmed the fight via Shots, a photo sharing social media application that he's invested in, and displays links to his clothing brand, The Money Team, on all his accounts. \n\nAlong with professing to the be the best fighter of all time, he could also stake a claim to be one of the greatest social media users in sports. \n\n\"I think they're both playing their roles,\" says Sauerland, who promotes over 45 boxers. \"You've got the bad guy and the good guy, really. You've got the guy who throws the money around (Mayweather), that's his image, and Pacquiao, he's the hope of a nation.\" ", + "questions": [ + "Who are the two boxer featured in this article?", + "What is Mayweathers nick name?", + "what is the other", + "which stand for?", + "what is the name of his clothing line?", + "Who is Sauerland?", + "how many people does he promote", + "what is the combined purse for this match?", + "how old is mayweather?", + "what do they say about pacquiao and his following?" + ], + "answers": { + "input_text": [ + "Floyd Mayweather and Manny Pacquiao", + "1 is the money man", + "TBE", + "The Best Ever", + "The Money Team,", + "a boxing promoter", + "over 45 boxers.", + "$300 million pending viewership numbers", + "38", + "just that it has bible references and shows him enjoying gos[e; singing with his wife" + ], + "answer_start": [ + 330, + 851, + 851, + 945, + 1175, + 753, + 1472, + 504, + 851, + 6 + ], + "answer_end": [ + 383, + 1085, + 971, + 970, + 1253, + 791, + 1511, + 671, + 884, + 132 + ] + } + } + }, + { + "input": { + "input": "Who are the two boxer featured in this article?", + "output": "1 is the money man", + "expected": "Floyd Mayweather and Manny Pacquiao" + }, + "expected": 0, + "metadata": { + "source": "cnn", + "story": "(CNN)A chiseled boxer's Instagram feed shows him making constant references to the Bible and enjoying gospel singing with his wife. \n\nAnother features his formidable opponent counting stacks of money, hanging out in strip clubs, and flashing diamond watches and Ferraris. \n\nWelcome to the world of boxing promotion, circa 2015. \n\nAmerican Floyd Mayweather and Filipino Manny Pacquiao are set to officially announce their heavily anticipated boxing match at a press conference in Los Angeles Wednesday. \n\nWith the combined purse for the May 2 bout in Las Vegas reported to touch $300 million pending viewership numbers, the incentives to self-promote could not be higher. \n\n\"Nowadays you have to be on social media to launch the fight and to build hype,\" says boxing promoter Nisse Sauerland, CEO of Team Sauerland. \"It couldn't be done without it.\" \n\nThirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. \n\nHe famously confirmed the fight via Shots, a photo sharing social media application that he's invested in, and displays links to his clothing brand, The Money Team, on all his accounts. \n\nAlong with professing to the be the best fighter of all time, he could also stake a claim to be one of the greatest social media users in sports. \n\n\"I think they're both playing their roles,\" says Sauerland, who promotes over 45 boxers. \"You've got the bad guy and the good guy, really. You've got the guy who throws the money around (Mayweather), that's his image, and Pacquiao, he's the hope of a nation.\" ", + "questions": [ + "Who are the two boxer featured in this article?", + "What is Mayweathers nick name?", + "what is the other", + "which stand for?", + "what is the name of his clothing line?", + "Who is Sauerland?", + "how many people does he promote", + "what is the combined purse for this match?", + "how old is mayweather?", + "what do they say about pacquiao and his following?" + ], + "answers": { + "input_text": [ + "Floyd Mayweather and Manny Pacquiao", + "1 is the money man", + "TBE", + "The Best Ever", + "The Money Team,", + "a boxing promoter", + "over 45 boxers.", + "$300 million pending viewership numbers", + "38", + "just that it has bible references and shows him enjoying gos[e; singing with his wife" + ], + "answer_start": [ + 330, + 851, + 851, + 945, + 1175, + 753, + 1472, + 504, + 851, + 6 + ], + "answer_end": [ + 383, + 1085, + 971, + 970, + 1253, + 791, + 1511, + 671, + 884, + 132 + ] + } + } + }, + { + "input": { + "input": "Who are the two boxer featured in this article?", + "output": "1 is the money man Floyd Mayweather and Manny Pacquiao TBE", + "expected": "Floyd Mayweather and Manny Pacquiao" + }, + "expected": 0.6, + "metadata": { + "source": "cnn", + "story": "(CNN)A chiseled boxer's Instagram feed shows him making constant references to the Bible and enjoying gospel singing with his wife. \n\nAnother features his formidable opponent counting stacks of money, hanging out in strip clubs, and flashing diamond watches and Ferraris. \n\nWelcome to the world of boxing promotion, circa 2015. \n\nAmerican Floyd Mayweather and Filipino Manny Pacquiao are set to officially announce their heavily anticipated boxing match at a press conference in Los Angeles Wednesday. \n\nWith the combined purse for the May 2 bout in Las Vegas reported to touch $300 million pending viewership numbers, the incentives to self-promote could not be higher. \n\n\"Nowadays you have to be on social media to launch the fight and to build hype,\" says boxing promoter Nisse Sauerland, CEO of Team Sauerland. \"It couldn't be done without it.\" \n\nThirty-eight year old Mayweather (47-0, 26 knockouts), who favors the moniker \"The Money Man\" or \"TBE\" (The Best Ever), boasts nearly five million Instagram followers, 5.65 million followers on Twitter and 9.2 million Facebook likes. \n\nHe famously confirmed the fight via Shots, a photo sharing social media application that he's invested in, and displays links to his clothing brand, The Money Team, on all his accounts. \n\nAlong with professing to the be the best fighter of all time, he could also stake a claim to be one of the greatest social media users in sports. \n\n\"I think they're both playing their roles,\" says Sauerland, who promotes over 45 boxers. \"You've got the bad guy and the good guy, really. You've got the guy who throws the money around (Mayweather), that's his image, and Pacquiao, he's the hope of a nation.\" ", + "questions": [ + "Who are the two boxer featured in this article?", + "What is Mayweathers nick name?", + "what is the other", + "which stand for?", + "what is the name of his clothing line?", + "Who is Sauerland?", + "how many people does he promote", + "what is the combined purse for this match?", + "how old is mayweather?", + "what do they say about pacquiao and his following?" + ], + "answers": { + "input_text": [ + "Floyd Mayweather and Manny Pacquiao", + "1 is the money man", + "TBE", + "The Best Ever", + "The Money Team,", + "a boxing promoter", + "over 45 boxers.", + "$300 million pending viewership numbers", + "38", + "just that it has bible references and shows him enjoying gos[e; singing with his wife" + ], + "answer_start": [ + 330, + 851, + 851, + 945, + 1175, + 753, + 1472, + 504, + 851, + 6 + ], + "answer_end": [ + 383, + 1085, + 971, + 970, + 1253, + 791, + 1511, + 671, + 884, + 132 + ] + } + } + }, + { + "input": { + "input": "What is the main topic?", + "output": "OCLC", + "expected": "OCLC" + }, + "expected": 1, + "metadata": { + "source": "wikipedia", + "story": "OCLC, currently incorporated as OCLC Online Computer Library Center, Incorporated, is an American nonprofit cooperative organization \"dedicated to the public purposes of furthering access to the world's information and reducing information costs\". It was founded in 1967 as the Ohio College Library Center. OCLC and its member libraries cooperatively produce and maintain WorldCat, the largest online public access catalog (OPAC) in the world. OCLC is funded mainly by the fees that libraries have to pay for its services (around $200 million annually ). \n\nOCLC began in 1967, as the Ohio College Library Center, through a collaboration of Ohio university presidents, vice presidents, and library directors who wanted to create a cooperative, computerized network for Ohio libraries. The group first met on July 5, 1967 on the campus of the Ohio State University to sign the articles of incorporation for the nonprofit organization. The group hired Frederick G. Kilgour, a former Yale University medical school librarian, to design the shared cataloging system. Kilgour wished to merge the latest information storage and retrieval system of the time, the computer, with the oldest, the library. The plan was to merge the catalogs of Ohio libraries electronically through a computer network and database to streamline operations, control costs, and increase efficiency in library management. The goal of this network and database was to bring libraries together to cooperatively keep track of the world's information to best serve researchers and scholars. The first library to do online cataloging through OCLC was the Alden Library at Ohio University on August 26, 1971. This was the first occurrence of online cataloging by any library worldwide.", + "questions": [ + "What is the main topic?", + "What does it stand for?", + "When did it begin?", + "Was it founded the same year?", + "Where?", + "What location there?", + "What Yale student was hired by the organization?", + "Was he currently enrolled at the University?", + "What was his profession while there?", + "What does OCLC produce and maintain?", + "When did the group first gather?", + "Where?", + "Which was the first online library through them?", + "Where?", + "What could the site do?", + "On what date did this happen?", + "Had this been done before?" + ], + "answers": { + "input_text": [ + "OCLC", + "Online Computer Library Center", + "1967", + "Yes", + "Ohio", + "Ohio State University", + "Frederick G. Kilgour", + "He is not", + "medical school librarian", + "WorldCat", + "July 5, 1967", + "Ohio State University", + "Alden Library", + "Ohio University", + "online cataloging", + "August 26, 1971", + "no" + ], + "answer_start": [ + 32, + 37, + 571, + 806, + 278, + 841, + 949, + 971, + 995, + 372, + 806, + 841, + 1618, + 1636, + 1579, + 1654, + 1671 + ], + "answer_end": [ + 36, + 67, + 575, + 819, + 282, + 862, + 969, + 1020, + 1020, + 380, + 820, + 863, + 1632, + 1651, + 1597, + 1670, + 1746 + ] + } + } + }, + { + "input": { + "input": "What is the main topic?", + "output": "Online Computer Library Center", + "expected": "OCLC" + }, + "expected": 0, + "metadata": { + "source": "wikipedia", + "story": "OCLC, currently incorporated as OCLC Online Computer Library Center, Incorporated, is an American nonprofit cooperative organization \"dedicated to the public purposes of furthering access to the world's information and reducing information costs\". It was founded in 1967 as the Ohio College Library Center. OCLC and its member libraries cooperatively produce and maintain WorldCat, the largest online public access catalog (OPAC) in the world. OCLC is funded mainly by the fees that libraries have to pay for its services (around $200 million annually ). \n\nOCLC began in 1967, as the Ohio College Library Center, through a collaboration of Ohio university presidents, vice presidents, and library directors who wanted to create a cooperative, computerized network for Ohio libraries. The group first met on July 5, 1967 on the campus of the Ohio State University to sign the articles of incorporation for the nonprofit organization. The group hired Frederick G. Kilgour, a former Yale University medical school librarian, to design the shared cataloging system. Kilgour wished to merge the latest information storage and retrieval system of the time, the computer, with the oldest, the library. The plan was to merge the catalogs of Ohio libraries electronically through a computer network and database to streamline operations, control costs, and increase efficiency in library management. The goal of this network and database was to bring libraries together to cooperatively keep track of the world's information to best serve researchers and scholars. The first library to do online cataloging through OCLC was the Alden Library at Ohio University on August 26, 1971. This was the first occurrence of online cataloging by any library worldwide.", + "questions": [ + "What is the main topic?", + "What does it stand for?", + "When did it begin?", + "Was it founded the same year?", + "Where?", + "What location there?", + "What Yale student was hired by the organization?", + "Was he currently enrolled at the University?", + "What was his profession while there?", + "What does OCLC produce and maintain?", + "When did the group first gather?", + "Where?", + "Which was the first online library through them?", + "Where?", + "What could the site do?", + "On what date did this happen?", + "Had this been done before?" + ], + "answers": { + "input_text": [ + "OCLC", + "Online Computer Library Center", + "1967", + "Yes", + "Ohio", + "Ohio State University", + "Frederick G. Kilgour", + "He is not", + "medical school librarian", + "WorldCat", + "July 5, 1967", + "Ohio State University", + "Alden Library", + "Ohio University", + "online cataloging", + "August 26, 1971", + "no" + ], + "answer_start": [ + 32, + 37, + 571, + 806, + 278, + 841, + 949, + 971, + 995, + 372, + 806, + 841, + 1618, + 1636, + 1579, + 1654, + 1671 + ], + "answer_end": [ + 36, + 67, + 575, + 819, + 282, + 862, + 969, + 1020, + 1020, + 380, + 820, + 863, + 1632, + 1651, + 1597, + 1670, + 1746 + ] + } + } + }, + { + "input": { + "input": "What is the main topic?", + "output": "Online Computer Library Center OCLC 1967", + "expected": "OCLC" + }, + "expected": 0.6, + "metadata": { + "source": "wikipedia", + "story": "OCLC, currently incorporated as OCLC Online Computer Library Center, Incorporated, is an American nonprofit cooperative organization \"dedicated to the public purposes of furthering access to the world's information and reducing information costs\". It was founded in 1967 as the Ohio College Library Center. OCLC and its member libraries cooperatively produce and maintain WorldCat, the largest online public access catalog (OPAC) in the world. OCLC is funded mainly by the fees that libraries have to pay for its services (around $200 million annually ). \n\nOCLC began in 1967, as the Ohio College Library Center, through a collaboration of Ohio university presidents, vice presidents, and library directors who wanted to create a cooperative, computerized network for Ohio libraries. The group first met on July 5, 1967 on the campus of the Ohio State University to sign the articles of incorporation for the nonprofit organization. The group hired Frederick G. Kilgour, a former Yale University medical school librarian, to design the shared cataloging system. Kilgour wished to merge the latest information storage and retrieval system of the time, the computer, with the oldest, the library. The plan was to merge the catalogs of Ohio libraries electronically through a computer network and database to streamline operations, control costs, and increase efficiency in library management. The goal of this network and database was to bring libraries together to cooperatively keep track of the world's information to best serve researchers and scholars. The first library to do online cataloging through OCLC was the Alden Library at Ohio University on August 26, 1971. This was the first occurrence of online cataloging by any library worldwide.", + "questions": [ + "What is the main topic?", + "What does it stand for?", + "When did it begin?", + "Was it founded the same year?", + "Where?", + "What location there?", + "What Yale student was hired by the organization?", + "Was he currently enrolled at the University?", + "What was his profession while there?", + "What does OCLC produce and maintain?", + "When did the group first gather?", + "Where?", + "Which was the first online library through them?", + "Where?", + "What could the site do?", + "On what date did this happen?", + "Had this been done before?" + ], + "answers": { + "input_text": [ + "OCLC", + "Online Computer Library Center", + "1967", + "Yes", + "Ohio", + "Ohio State University", + "Frederick G. Kilgour", + "He is not", + "medical school librarian", + "WorldCat", + "July 5, 1967", + "Ohio State University", + "Alden Library", + "Ohio University", + "online cataloging", + "August 26, 1971", + "no" + ], + "answer_start": [ + 32, + 37, + 571, + 806, + 278, + 841, + 949, + 971, + 995, + 372, + 806, + 841, + 1618, + 1636, + 1579, + 1654, + 1671 + ], + "answer_end": [ + 36, + 67, + 575, + 819, + 282, + 862, + 969, + 1020, + 1020, + 380, + 820, + 863, + 1632, + 1651, + 1597, + 1670, + 1746 + ] + } + } + }, + { + "input": { + "input": "Did they go inside the shop?", + "output": "No", + "expected": "No" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "John: Here's a good shop. Shall we buy mother's birthday present here? Mary: Yes, that's a good idea. Shall we go inside? Tom: No. Let's look in the window. Shall we buy her a sweater? Anne: Er, no. It'll soon be summer. Let's buy her a blouse to wear. There's a nice one in the window. John: No, she has two blouses. Let's buy a ring. Mary: Oh, no! They're diamond rings. Look at the price. The cheapest is $15. John: A real diamond ring is at least $500.They only look like diamonds. Tom: Shall we buy a table? It's only $15. Anne: It doesn't look good, just like a big box. Mum likes chairs. Tom: But they haven't any here. Mary: What about a pen? So cheap! Only $10. John: She has a lot of pens and pencils. All of them are new. Tom: Oh, look here. These flowers are beautiful. Mary: They aren't real and will never die. John: And they're the cheapest of all these things. Yes, let's buy them. Anne: All right.", + "questions": [ + "Did they go inside the shop?", + "What did they end up buying?", + "How much was a table?", + "Did the purchase it?", + "Why not?", + "What season will it be soon?", + "How much was the cheap diamond?", + "Was it a real set?", + "What was $10?", + "Why didn't the children purchase her a nice shirt?", + "What was the occasion for buying a gift?", + "What is the cost of a real diamond?" + ], + "answers": { + "input_text": [ + "No", + "They bought flowers.", + "It's $15.", + "No", + "It doesn't look good.", + "summer", + "$15", + "No", + "a pen", + "She already has two blouses", + "Mother's birthday", + "at least $500" + ], + "answer_start": [ + 127, + 759, + 523, + 534, + 534, + 213, + 408, + 456, + 644, + 297, + 48, + 442 + ], + "answer_end": [ + 129, + 766, + 526, + 555, + 554, + 220, + 411, + 484, + 649, + 316, + 56, + 455 + ] + } + } + }, + { + "input": { + "input": "Did they go inside the shop?", + "output": "They bought flowers.", + "expected": "No" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "John: Here's a good shop. Shall we buy mother's birthday present here? Mary: Yes, that's a good idea. Shall we go inside? Tom: No. Let's look in the window. Shall we buy her a sweater? Anne: Er, no. It'll soon be summer. Let's buy her a blouse to wear. There's a nice one in the window. John: No, she has two blouses. Let's buy a ring. Mary: Oh, no! They're diamond rings. Look at the price. The cheapest is $15. John: A real diamond ring is at least $500.They only look like diamonds. Tom: Shall we buy a table? It's only $15. Anne: It doesn't look good, just like a big box. Mum likes chairs. Tom: But they haven't any here. Mary: What about a pen? So cheap! Only $10. John: She has a lot of pens and pencils. All of them are new. Tom: Oh, look here. These flowers are beautiful. Mary: They aren't real and will never die. John: And they're the cheapest of all these things. Yes, let's buy them. Anne: All right.", + "questions": [ + "Did they go inside the shop?", + "What did they end up buying?", + "How much was a table?", + "Did the purchase it?", + "Why not?", + "What season will it be soon?", + "How much was the cheap diamond?", + "Was it a real set?", + "What was $10?", + "Why didn't the children purchase her a nice shirt?", + "What was the occasion for buying a gift?", + "What is the cost of a real diamond?" + ], + "answers": { + "input_text": [ + "No", + "They bought flowers.", + "It's $15.", + "No", + "It doesn't look good.", + "summer", + "$15", + "No", + "a pen", + "She already has two blouses", + "Mother's birthday", + "at least $500" + ], + "answer_start": [ + 127, + 759, + 523, + 534, + 534, + 213, + 408, + 456, + 644, + 297, + 48, + 442 + ], + "answer_end": [ + 129, + 766, + 526, + 555, + 554, + 220, + 411, + 484, + 649, + 316, + 56, + 455 + ] + } + } + }, + { + "input": { + "input": "Did they go inside the shop?", + "output": "They bought flowers. No It's $15.", + "expected": "No" + }, + "expected": 0.6, + "metadata": { + "source": "race", + "story": "John: Here's a good shop. Shall we buy mother's birthday present here? Mary: Yes, that's a good idea. Shall we go inside? Tom: No. Let's look in the window. Shall we buy her a sweater? Anne: Er, no. It'll soon be summer. Let's buy her a blouse to wear. There's a nice one in the window. John: No, she has two blouses. Let's buy a ring. Mary: Oh, no! They're diamond rings. Look at the price. The cheapest is $15. John: A real diamond ring is at least $500.They only look like diamonds. Tom: Shall we buy a table? It's only $15. Anne: It doesn't look good, just like a big box. Mum likes chairs. Tom: But they haven't any here. Mary: What about a pen? So cheap! Only $10. John: She has a lot of pens and pencils. All of them are new. Tom: Oh, look here. These flowers are beautiful. Mary: They aren't real and will never die. John: And they're the cheapest of all these things. Yes, let's buy them. Anne: All right.", + "questions": [ + "Did they go inside the shop?", + "What did they end up buying?", + "How much was a table?", + "Did the purchase it?", + "Why not?", + "What season will it be soon?", + "How much was the cheap diamond?", + "Was it a real set?", + "What was $10?", + "Why didn't the children purchase her a nice shirt?", + "What was the occasion for buying a gift?", + "What is the cost of a real diamond?" + ], + "answers": { + "input_text": [ + "No", + "They bought flowers.", + "It's $15.", + "No", + "It doesn't look good.", + "summer", + "$15", + "No", + "a pen", + "She already has two blouses", + "Mother's birthday", + "at least $500" + ], + "answer_start": [ + 127, + 759, + 523, + 534, + 534, + 213, + 408, + 456, + 644, + 297, + 48, + 442 + ], + "answer_end": [ + 129, + 766, + 526, + 555, + 554, + 220, + 411, + 484, + 649, + 316, + 56, + 455 + ] + } + } + }, + { + "input": { + "input": "Where'd Tommy live?", + "output": "by a big lake by the woods", + "expected": "by a big lake by the woods" + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "Tommy was a little boy who lived by a big lake by the woods. One day he saw two little mice looking at the water. They seemed very sad. \n\n\"What is wrong?\" Tommy asked. \n\nMary, one of the little mice, stood. \"My brother and I love to see new things. We want to see what is on the other side of the lake. But we do not know how to build a boat to get there.\" \n\nTommy smiled. \"I have plenty of toy boats,\" he said. \"They are your size!\" \n\n\"Oh, thank you!\" said Steve, the other little mouse. \"We would be very glad if we could borrow it!\" \n\nTommy went to his house and returned with a small toy boat. The boat had a big sail to make the boat go. Mary and Steve climbed on and Tommy put the boat into the water. \n\nThe boat sailed away across the water! Mary and Steve laughed with joy and had great fun riding the toy boat. \n\nSoon, they reached the other side of the lake. Many people were having fun swimming and splashing in the water. Steve and Mary loved seeing all the new things and people. \n\nA man threw a ball into the water. It landed by the toy boat. The man's big dog came splashing into the water to fetch it. The big waves splashed the little boat every which way! Mary and Steve got very wet. \n\nMary and Steve went back home after that. They told Tommy of what they saw, and they all laughed at the big dog's wave. Tomorrow the mice would see even more of the lake on Tommy's toy boat!", + "questions": [ + "Where'd Tommy live?", + "what'd he see?", + "What does Tommy have?", + "Did the mice have names?", + "what were they?", + "where'd he get the boats?", + "What's the mice do?", + "What were people doing?", + "What did the man do?", + "What did the do do?" + ], + "answers": { + "input_text": [ + "by a big lake by the woods", + "mice", + "toy boats", + "yes", + "Mary and Steve", + "his house", + "climbed on", + "swimming and splashing", + "threw a ball into the water", + "got very wet" + ], + "answer_start": [ + 33, + 76, + 381, + 170, + 749, + 552, + 658, + 897, + 1001, + 1189 + ], + "answer_end": [ + 59, + 91, + 400, + 198, + 763, + 561, + 668, + 933, + 1028, + 1201 + ] + } + } + }, + { + "input": { + "input": "Where'd Tommy live?", + "output": "mice", + "expected": "by a big lake by the woods" + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "Tommy was a little boy who lived by a big lake by the woods. One day he saw two little mice looking at the water. They seemed very sad. \n\n\"What is wrong?\" Tommy asked. \n\nMary, one of the little mice, stood. \"My brother and I love to see new things. We want to see what is on the other side of the lake. But we do not know how to build a boat to get there.\" \n\nTommy smiled. \"I have plenty of toy boats,\" he said. \"They are your size!\" \n\n\"Oh, thank you!\" said Steve, the other little mouse. \"We would be very glad if we could borrow it!\" \n\nTommy went to his house and returned with a small toy boat. The boat had a big sail to make the boat go. Mary and Steve climbed on and Tommy put the boat into the water. \n\nThe boat sailed away across the water! Mary and Steve laughed with joy and had great fun riding the toy boat. \n\nSoon, they reached the other side of the lake. Many people were having fun swimming and splashing in the water. Steve and Mary loved seeing all the new things and people. \n\nA man threw a ball into the water. It landed by the toy boat. The man's big dog came splashing into the water to fetch it. The big waves splashed the little boat every which way! Mary and Steve got very wet. \n\nMary and Steve went back home after that. They told Tommy of what they saw, and they all laughed at the big dog's wave. Tomorrow the mice would see even more of the lake on Tommy's toy boat!", + "questions": [ + "Where'd Tommy live?", + "what'd he see?", + "What does Tommy have?", + "Did the mice have names?", + "what were they?", + "where'd he get the boats?", + "What's the mice do?", + "What were people doing?", + "What did the man do?", + "What did the do do?" + ], + "answers": { + "input_text": [ + "by a big lake by the woods", + "mice", + "toy boats", + "yes", + "Mary and Steve", + "his house", + "climbed on", + "swimming and splashing", + "threw a ball into the water", + "got very wet" + ], + "answer_start": [ + 33, + 76, + 381, + 170, + 749, + 552, + 658, + 897, + 1001, + 1189 + ], + "answer_end": [ + 59, + 91, + 400, + 198, + 763, + 561, + 668, + 933, + 1028, + 1201 + ] + } + } + }, + { + "input": { + "input": "Where'd Tommy live?", + "output": "mice by a big lake by the woods toy boats", + "expected": "by a big lake by the woods" + }, + "expected": 0.6, + "metadata": { + "source": "mctest", + "story": "Tommy was a little boy who lived by a big lake by the woods. One day he saw two little mice looking at the water. They seemed very sad. \n\n\"What is wrong?\" Tommy asked. \n\nMary, one of the little mice, stood. \"My brother and I love to see new things. We want to see what is on the other side of the lake. But we do not know how to build a boat to get there.\" \n\nTommy smiled. \"I have plenty of toy boats,\" he said. \"They are your size!\" \n\n\"Oh, thank you!\" said Steve, the other little mouse. \"We would be very glad if we could borrow it!\" \n\nTommy went to his house and returned with a small toy boat. The boat had a big sail to make the boat go. Mary and Steve climbed on and Tommy put the boat into the water. \n\nThe boat sailed away across the water! Mary and Steve laughed with joy and had great fun riding the toy boat. \n\nSoon, they reached the other side of the lake. Many people were having fun swimming and splashing in the water. Steve and Mary loved seeing all the new things and people. \n\nA man threw a ball into the water. It landed by the toy boat. The man's big dog came splashing into the water to fetch it. The big waves splashed the little boat every which way! Mary and Steve got very wet. \n\nMary and Steve went back home after that. They told Tommy of what they saw, and they all laughed at the big dog's wave. Tomorrow the mice would see even more of the lake on Tommy's toy boat!", + "questions": [ + "Where'd Tommy live?", + "what'd he see?", + "What does Tommy have?", + "Did the mice have names?", + "what were they?", + "where'd he get the boats?", + "What's the mice do?", + "What were people doing?", + "What did the man do?", + "What did the do do?" + ], + "answers": { + "input_text": [ + "by a big lake by the woods", + "mice", + "toy boats", + "yes", + "Mary and Steve", + "his house", + "climbed on", + "swimming and splashing", + "threw a ball into the water", + "got very wet" + ], + "answer_start": [ + 33, + 76, + 381, + 170, + 749, + 552, + 658, + 897, + 1001, + 1189 + ], + "answer_end": [ + 59, + 91, + 400, + 198, + 763, + 561, + 668, + 933, + 1028, + 1201 + ] + } + } + }, + { + "input": { + "input": "What happened to the hospital where Hans was?", + "output": "The hospital had been bombed.", + "expected": "The hospital had been bombed." + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "A German taxi-driver, Franz Bussman, recently found his brother who was thought to have been killed twenty years ago. \n\nWhile on a walking tour with his wife, he stopped to talk to a workman. After they had gone on, Mrs. Bussman said that the workman was closely like her husband and even suggested that he might be his brother. Franz laughed at the idea, pointing out that his brother had been killed in action during the war. Though Mrs. Busman knew this story quite well, she thought there was a chance in a million that she might be right. \n\nA few days later, she sent a boy to the workman to ask him if his name was Hans Bussman. Needless to say, the man's name was Hans Bussman. And he really was Franz's long-lost brother. \n\nWhen the brothers were reunited, Hans explained how it was that he was still alive. \n\nAfter having been wondered towards the end of the war, he had been sent to hospital and was separated from his unit . The hospital had been bombed and Hans had made his way back into Western Germany on foot. Meanwhile, his unit was lost and all records of him had been destroyed. Hans returned to his home, but the house had been bombed up. Guessing that his family had all been killed during an air-raid , Hans settled down in a village fifty miles away where he had remained ever since.", + "questions": [ + "What happened to the hospital where Hans was?", + "Was he with his unit at the time?", + "What country was he in?", + "Was he in the Eastern or Western part?", + "And which part did he need to get to?", + "Did he drive there?", + "Was the war nearly over by this time?", + "Was his house still standing?", + "Did he know what happened to his family?", + "What did he decide to do?", + "Did he stay there long?", + "What kind of job did he do?", + "Does he have a living brother?", + "What's his name?", + "Does he drive a car for a living?", + "Did the two brothers keep in contact the past twenty years?", + "Why didn't Franz stay in touch?", + "Who noticed the resemblance between the two men?", + "What did Franz think of that?", + "Did she give up at that point?" + ], + "answers": { + "input_text": [ + "The hospital had been bombed.", + "No.", + "Germany", + "Eastern Germany at the time of his hospital stay.", + "Western Germany", + "No", + "Yes", + "No", + "No, just guessed.", + "Hans settled down in a village fifty miles away.", + "Yes, for twenty years", + "a workman", + "Yes", + "Hans Bussman", + "Yes, Franz does.", + "No", + "He assumed Hans was dead.", + "Mrs. Bussman", + "Franz laughed at the idea", + "No" + ], + "answer_start": [ + 936, + 906, + 2, + 969, + 1001, + 1017, + 845, + 1129, + 1159, + 1225, + 100, + 181, + 689, + 671, + 2, + 732, + 373, + 215, + 329, + 546 + ], + "answer_end": [ + 964, + 933, + 9, + 1016, + 1016, + 1024, + 870, + 1157, + 1222, + 1267, + 112, + 190, + 728, + 683, + 35, + 763, + 474, + 280, + 355, + 634 + ] + } + } + }, + { + "input": { + "input": "What happened to the hospital where Hans was?", + "output": "No.", + "expected": "The hospital had been bombed." + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "A German taxi-driver, Franz Bussman, recently found his brother who was thought to have been killed twenty years ago. \n\nWhile on a walking tour with his wife, he stopped to talk to a workman. After they had gone on, Mrs. Bussman said that the workman was closely like her husband and even suggested that he might be his brother. Franz laughed at the idea, pointing out that his brother had been killed in action during the war. Though Mrs. Busman knew this story quite well, she thought there was a chance in a million that she might be right. \n\nA few days later, she sent a boy to the workman to ask him if his name was Hans Bussman. Needless to say, the man's name was Hans Bussman. And he really was Franz's long-lost brother. \n\nWhen the brothers were reunited, Hans explained how it was that he was still alive. \n\nAfter having been wondered towards the end of the war, he had been sent to hospital and was separated from his unit . The hospital had been bombed and Hans had made his way back into Western Germany on foot. Meanwhile, his unit was lost and all records of him had been destroyed. Hans returned to his home, but the house had been bombed up. Guessing that his family had all been killed during an air-raid , Hans settled down in a village fifty miles away where he had remained ever since.", + "questions": [ + "What happened to the hospital where Hans was?", + "Was he with his unit at the time?", + "What country was he in?", + "Was he in the Eastern or Western part?", + "And which part did he need to get to?", + "Did he drive there?", + "Was the war nearly over by this time?", + "Was his house still standing?", + "Did he know what happened to his family?", + "What did he decide to do?", + "Did he stay there long?", + "What kind of job did he do?", + "Does he have a living brother?", + "What's his name?", + "Does he drive a car for a living?", + "Did the two brothers keep in contact the past twenty years?", + "Why didn't Franz stay in touch?", + "Who noticed the resemblance between the two men?", + "What did Franz think of that?", + "Did she give up at that point?" + ], + "answers": { + "input_text": [ + "The hospital had been bombed.", + "No.", + "Germany", + "Eastern Germany at the time of his hospital stay.", + "Western Germany", + "No", + "Yes", + "No", + "No, just guessed.", + "Hans settled down in a village fifty miles away.", + "Yes, for twenty years", + "a workman", + "Yes", + "Hans Bussman", + "Yes, Franz does.", + "No", + "He assumed Hans was dead.", + "Mrs. Bussman", + "Franz laughed at the idea", + "No" + ], + "answer_start": [ + 936, + 906, + 2, + 969, + 1001, + 1017, + 845, + 1129, + 1159, + 1225, + 100, + 181, + 689, + 671, + 2, + 732, + 373, + 215, + 329, + 546 + ], + "answer_end": [ + 964, + 933, + 9, + 1016, + 1016, + 1024, + 870, + 1157, + 1222, + 1267, + 112, + 190, + 728, + 683, + 35, + 763, + 474, + 280, + 355, + 634 + ] + } + } + }, + { + "input": { + "input": "What happened to the hospital where Hans was?", + "output": "No. The hospital had been bombed. Germany", + "expected": "The hospital had been bombed." + }, + "expected": 0.6, + "metadata": { + "source": "race", + "story": "A German taxi-driver, Franz Bussman, recently found his brother who was thought to have been killed twenty years ago. \n\nWhile on a walking tour with his wife, he stopped to talk to a workman. After they had gone on, Mrs. Bussman said that the workman was closely like her husband and even suggested that he might be his brother. Franz laughed at the idea, pointing out that his brother had been killed in action during the war. Though Mrs. Busman knew this story quite well, she thought there was a chance in a million that she might be right. \n\nA few days later, she sent a boy to the workman to ask him if his name was Hans Bussman. Needless to say, the man's name was Hans Bussman. And he really was Franz's long-lost brother. \n\nWhen the brothers were reunited, Hans explained how it was that he was still alive. \n\nAfter having been wondered towards the end of the war, he had been sent to hospital and was separated from his unit . The hospital had been bombed and Hans had made his way back into Western Germany on foot. Meanwhile, his unit was lost and all records of him had been destroyed. Hans returned to his home, but the house had been bombed up. Guessing that his family had all been killed during an air-raid , Hans settled down in a village fifty miles away where he had remained ever since.", + "questions": [ + "What happened to the hospital where Hans was?", + "Was he with his unit at the time?", + "What country was he in?", + "Was he in the Eastern or Western part?", + "And which part did he need to get to?", + "Did he drive there?", + "Was the war nearly over by this time?", + "Was his house still standing?", + "Did he know what happened to his family?", + "What did he decide to do?", + "Did he stay there long?", + "What kind of job did he do?", + "Does he have a living brother?", + "What's his name?", + "Does he drive a car for a living?", + "Did the two brothers keep in contact the past twenty years?", + "Why didn't Franz stay in touch?", + "Who noticed the resemblance between the two men?", + "What did Franz think of that?", + "Did she give up at that point?" + ], + "answers": { + "input_text": [ + "The hospital had been bombed.", + "No.", + "Germany", + "Eastern Germany at the time of his hospital stay.", + "Western Germany", + "No", + "Yes", + "No", + "No, just guessed.", + "Hans settled down in a village fifty miles away.", + "Yes, for twenty years", + "a workman", + "Yes", + "Hans Bussman", + "Yes, Franz does.", + "No", + "He assumed Hans was dead.", + "Mrs. Bussman", + "Franz laughed at the idea", + "No" + ], + "answer_start": [ + 936, + 906, + 2, + 969, + 1001, + 1017, + 845, + 1129, + 1159, + 1225, + 100, + 181, + 689, + 671, + 2, + 732, + 373, + 215, + 329, + 546 + ], + "answer_end": [ + 964, + 933, + 9, + 1016, + 1016, + 1024, + 870, + 1157, + 1222, + 1267, + 112, + 190, + 728, + 683, + 35, + 763, + 474, + 280, + 355, + 634 + ] + } + } + }, + { + "input": { + "input": "What worked her way northward?", + "output": "The _Ariel_", + "expected": "The _Ariel_" + }, + "expected": 1, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER XXII \n\nNorthward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way, threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs, daring passages so narrow and coral-patched that Captain Winters averred each day added a thousand grey hairs to his head, and dropping anchor off every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life. For Harley and Villa Kennan were in no hurry. So long as the way was interesting, they dared not how long it proved from anywhere to anywhere. \n\nDuring this time Jerry learned a new name for himself--or, rather, an entire series of names for himself. This was because of an aversion on Harley Kennan's part against renaming a named thing. \n\n\"A name he must have had,\" he argued to Villa. \"Haggin must have named him before he sailed on the _Arangi_. Therefore, nameless he must be until we get back to Tulagi and find out his real name.\" \n\n\"What's in a name?\" Villa had begun to tease. \n\n\"Everything,\" her husband retorted. \"Think of yourself, shipwrecked, called by your rescuers 'Mrs. Riggs,' or 'Mademoiselle de Maupin,' or just plain 'Topsy.' And think of me being called 'Benedict Arnold,' or ' Judas,' or . . . or . . . 'Haman.' No, keep him nameless, until we find out his original name.\" \n\n\"Must call him something,\" she objected. \"Can't think of him without thinking something.\" \n\n\"Then call him many names, but never the same name twice. Call him 'Dog' to-day, and 'Mister Dog' to-morrow, and the next day something else.\" ", + "questions": [ + "What worked her way northward?", + "What lay between the shore-reefs and outer-reefs?", + "Were the passages wide?", + "Who was the Captain?", + "Did he have red hair?", + "Were Harley and Villa in a hurry?", + "What coast did the Ariel work her way up leisurely?", + "Who argued to Villa that he must have a name?", + "Who began to tease Harley?", + "What ship had Haggin sailed on?", + "How long must he be nameless until?", + "Who was the husband she retorted something to?", + "Did she tell him to think of himself being in an airplane crash?", + "What would an awkward name to be called by rescuers be?", + "What's another one?", + "How about a third one?", + "Did she ask Villa to think of her being called Jesus?", + "Was there a lot of coral in the lagoon?", + "Where did the Ariel drop anchor off of?", + "Were there cannibals?" + ], + "answers": { + "input_text": [ + "The _Ariel_", + "Lagoon", + "No", + "Winters", + "No", + "No", + "Malaita", + "Harley Kennan", + "Villa", + "The Arangi", + "Until they get back to Tulagi", + "Harley Kennan", + "No", + "'Mrs. Riggs'", + "'Topsy'", + "'Mademoiselle de Maupin'", + "No", + "Yes", + "Every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life.", + "unknown" + ], + "answer_start": [ + 15, + 100, + 186, + 234, + 235, + 451, + 15, + 702, + 992, + 839, + 901, + 711, + 1, + 1039, + 1189, + 1149, + 1039, + 15, + 312, + -1 + ], + "answer_end": [ + 98, + 184, + 212, + 250, + 295, + 497, + 83, + 882, + 1037, + 900, + 988, + 1074, + 1583, + 1348, + 1197, + 1173, + 1348, + 229, + 450, + -1 + ] + } + } + }, + { + "input": { + "input": "What worked her way northward?", + "output": "Lagoon", + "expected": "The _Ariel_" + }, + "expected": 0, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER XXII \n\nNorthward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way, threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs, daring passages so narrow and coral-patched that Captain Winters averred each day added a thousand grey hairs to his head, and dropping anchor off every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life. For Harley and Villa Kennan were in no hurry. So long as the way was interesting, they dared not how long it proved from anywhere to anywhere. \n\nDuring this time Jerry learned a new name for himself--or, rather, an entire series of names for himself. This was because of an aversion on Harley Kennan's part against renaming a named thing. \n\n\"A name he must have had,\" he argued to Villa. \"Haggin must have named him before he sailed on the _Arangi_. Therefore, nameless he must be until we get back to Tulagi and find out his real name.\" \n\n\"What's in a name?\" Villa had begun to tease. \n\n\"Everything,\" her husband retorted. \"Think of yourself, shipwrecked, called by your rescuers 'Mrs. Riggs,' or 'Mademoiselle de Maupin,' or just plain 'Topsy.' And think of me being called 'Benedict Arnold,' or ' Judas,' or . . . or . . . 'Haman.' No, keep him nameless, until we find out his original name.\" \n\n\"Must call him something,\" she objected. \"Can't think of him without thinking something.\" \n\n\"Then call him many names, but never the same name twice. Call him 'Dog' to-day, and 'Mister Dog' to-morrow, and the next day something else.\" ", + "questions": [ + "What worked her way northward?", + "What lay between the shore-reefs and outer-reefs?", + "Were the passages wide?", + "Who was the Captain?", + "Did he have red hair?", + "Were Harley and Villa in a hurry?", + "What coast did the Ariel work her way up leisurely?", + "Who argued to Villa that he must have a name?", + "Who began to tease Harley?", + "What ship had Haggin sailed on?", + "How long must he be nameless until?", + "Who was the husband she retorted something to?", + "Did she tell him to think of himself being in an airplane crash?", + "What would an awkward name to be called by rescuers be?", + "What's another one?", + "How about a third one?", + "Did she ask Villa to think of her being called Jesus?", + "Was there a lot of coral in the lagoon?", + "Where did the Ariel drop anchor off of?", + "Were there cannibals?" + ], + "answers": { + "input_text": [ + "The _Ariel_", + "Lagoon", + "No", + "Winters", + "No", + "No", + "Malaita", + "Harley Kennan", + "Villa", + "The Arangi", + "Until they get back to Tulagi", + "Harley Kennan", + "No", + "'Mrs. Riggs'", + "'Topsy'", + "'Mademoiselle de Maupin'", + "No", + "Yes", + "Every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life.", + "unknown" + ], + "answer_start": [ + 15, + 100, + 186, + 234, + 235, + 451, + 15, + 702, + 992, + 839, + 901, + 711, + 1, + 1039, + 1189, + 1149, + 1039, + 15, + 312, + -1 + ], + "answer_end": [ + 98, + 184, + 212, + 250, + 295, + 497, + 83, + 882, + 1037, + 900, + 988, + 1074, + 1583, + 1348, + 1197, + 1173, + 1348, + 229, + 450, + -1 + ] + } + } + }, + { + "input": { + "input": "What worked her way northward?", + "output": "Lagoon The _Ariel_ No", + "expected": "The _Ariel_" + }, + "expected": 0.6, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER XXII \n\nNorthward, along the leeward coast of Malaita, the _Ariel_ worked her leisurely way, threading the colour-riotous lagoon that lay between the shore-reefs and outer-reefs, daring passages so narrow and coral-patched that Captain Winters averred each day added a thousand grey hairs to his head, and dropping anchor off every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life. For Harley and Villa Kennan were in no hurry. So long as the way was interesting, they dared not how long it proved from anywhere to anywhere. \n\nDuring this time Jerry learned a new name for himself--or, rather, an entire series of names for himself. This was because of an aversion on Harley Kennan's part against renaming a named thing. \n\n\"A name he must have had,\" he argued to Villa. \"Haggin must have named him before he sailed on the _Arangi_. Therefore, nameless he must be until we get back to Tulagi and find out his real name.\" \n\n\"What's in a name?\" Villa had begun to tease. \n\n\"Everything,\" her husband retorted. \"Think of yourself, shipwrecked, called by your rescuers 'Mrs. Riggs,' or 'Mademoiselle de Maupin,' or just plain 'Topsy.' And think of me being called 'Benedict Arnold,' or ' Judas,' or . . . or . . . 'Haman.' No, keep him nameless, until we find out his original name.\" \n\n\"Must call him something,\" she objected. \"Can't think of him without thinking something.\" \n\n\"Then call him many names, but never the same name twice. Call him 'Dog' to-day, and 'Mister Dog' to-morrow, and the next day something else.\" ", + "questions": [ + "What worked her way northward?", + "What lay between the shore-reefs and outer-reefs?", + "Were the passages wide?", + "Who was the Captain?", + "Did he have red hair?", + "Were Harley and Villa in a hurry?", + "What coast did the Ariel work her way up leisurely?", + "Who argued to Villa that he must have a name?", + "Who began to tease Harley?", + "What ship had Haggin sailed on?", + "How long must he be nameless until?", + "Who was the husband she retorted something to?", + "Did she tell him to think of himself being in an airplane crash?", + "What would an awkward name to be called by rescuers be?", + "What's another one?", + "How about a third one?", + "Did she ask Villa to think of her being called Jesus?", + "Was there a lot of coral in the lagoon?", + "Where did the Ariel drop anchor off of?", + "Were there cannibals?" + ], + "answers": { + "input_text": [ + "The _Ariel_", + "Lagoon", + "No", + "Winters", + "No", + "No", + "Malaita", + "Harley Kennan", + "Villa", + "The Arangi", + "Until they get back to Tulagi", + "Harley Kennan", + "No", + "'Mrs. Riggs'", + "'Topsy'", + "'Mademoiselle de Maupin'", + "No", + "Yes", + "Every walled inlet of the outer reef and every mangrove swamp of the mainland that looked promising of cannibal life.", + "unknown" + ], + "answer_start": [ + 15, + 100, + 186, + 234, + 235, + 451, + 15, + 702, + 992, + 839, + 901, + 711, + 1, + 1039, + 1189, + 1149, + 1039, + 15, + 312, + -1 + ], + "answer_end": [ + 98, + 184, + 212, + 250, + 295, + 497, + 83, + 882, + 1037, + 900, + 988, + 1074, + 1583, + 1348, + 1197, + 1173, + 1348, + 229, + 450, + -1 + ] + } + } + }, + { + "input": { + "input": "Who were the two canines who lived next door to each other?", + "output": "Brownie and Spotty", + "expected": "Brownie and Spotty" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "Brownie and Spotty were neighbor dogs who met every day to play together. These two loved each other and played together so often that they had worn a path through the grass of the field between their respective houses. One evening, Brownie's family noticed that Brownie hadn't returned home. They went looking for him with no success and by the next week he was still missing. Curiously, Spotty showed up at Brownie's house alone. Barking, whining and generally pestering Brownie's human family. Busy with their own lives, they just ignored the nervous little neighbor dog. Continuously,Ted, Brownie's owner, was disturbed by the angry, determined little dog. Spotty followed Ted about, barking insistently, then rushing toward a nearby empty lot and back, as if to say, \"Follow me! It's urgent!\" Eventually, Ted followed Spotty to a deserted spot half a mile from the house. There Ted found his beloved Brownie alive, one of his hind legs crushed in a steel leghold trap. Horrified, Ted now wished he'd taken Spotty's earlier appeals seriously. Then Ted noticed something quite remarkable. Spotty had done more than simply led Brownie's human owner to his trapped friend. In a circle around the injured dog, Ted found an array of dog food and table scraps which were later identified as the remains of every meal Spotty had been fed that week! Spotty had been visiting Brownie regularly, in the hope of keeping his friend alive by sacrificing his own comfort. Spotty had evidently stayed with Brownie to protect him from hunger and other dangers, and keep his spirits up. Brownie's leg was treated by a veterinarian and he recovered. For many years thereafter, the two families watched the faithful friends chasing each other down that well worn path between their houses.", + "questions": [ + "Who were the two canines who lived next door to each other?", + "How often did they visit each other?", + "How did they feel about one another?", + "Where did they kill the grass?", + "Who did Brownie belong to?", + "Which dog had his leg injured?", + "Did Spotty go missing?", + "Did Spotty start annoying Ted?", + "Where did Spotty lead Ted to?", + "What's one thing Spotty did for Brownie while he was stuck?", + "What else did he do?", + "And one more?", + "Did Ted regret not paying more attention to Spotty?", + "What's something Spotty did to try to get his attention?", + "Did Brownie survive his ordeal?", + "Were the two able to continue playing together?", + "Did Brownie disappear at night?", + "Did his family hunt him?", + "Was he home by the end of the next week?", + "Why did the family ignore Spotty when he tried to get their attention?", + "What did it seem like Spotty was trying to tell them?" + ], + "answers": { + "input_text": [ + "Brownie and Spotty", + "every day", + "loved each other", + "worn a path through the grass of the field", + "Ted,", + "Brownie", + "yes", + "Yes", + "a spot half a mile from the house", + "brought him food", + "protect him from other dangers", + "keep his spirits up.", + "yes", + ". Spotty followed Ted about, barking insistently,", + "Yes", + "yes", + "No", + "yes, They went looking for him with no success", + "no", + "They were busy with their own lives,", + "\"Follow me! It's urgent!\"" + ], + "answer_start": [ + 0, + 0, + 74, + 134, + 588, + 883, + 220, + 389, + 678, + 1211, + 1462, + 1548, + 975, + 659, + 1574, + 1636, + 220, + 292, + 293, + 497, + 758 + ], + "answer_end": [ + 37, + 75, + 101, + 219, + 609, + 973, + 292, + 495, + 876, + 1346, + 1572, + 1573, + 1045, + 708, + 1636, + 1774, + 292, + 336, + 377, + 575, + 797 + ] + } + } + }, + { + "input": { + "input": "Who were the two canines who lived next door to each other?", + "output": "every day", + "expected": "Brownie and Spotty" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "Brownie and Spotty were neighbor dogs who met every day to play together. These two loved each other and played together so often that they had worn a path through the grass of the field between their respective houses. One evening, Brownie's family noticed that Brownie hadn't returned home. They went looking for him with no success and by the next week he was still missing. Curiously, Spotty showed up at Brownie's house alone. Barking, whining and generally pestering Brownie's human family. Busy with their own lives, they just ignored the nervous little neighbor dog. Continuously,Ted, Brownie's owner, was disturbed by the angry, determined little dog. Spotty followed Ted about, barking insistently, then rushing toward a nearby empty lot and back, as if to say, \"Follow me! It's urgent!\" Eventually, Ted followed Spotty to a deserted spot half a mile from the house. There Ted found his beloved Brownie alive, one of his hind legs crushed in a steel leghold trap. Horrified, Ted now wished he'd taken Spotty's earlier appeals seriously. Then Ted noticed something quite remarkable. Spotty had done more than simply led Brownie's human owner to his trapped friend. In a circle around the injured dog, Ted found an array of dog food and table scraps which were later identified as the remains of every meal Spotty had been fed that week! Spotty had been visiting Brownie regularly, in the hope of keeping his friend alive by sacrificing his own comfort. Spotty had evidently stayed with Brownie to protect him from hunger and other dangers, and keep his spirits up. Brownie's leg was treated by a veterinarian and he recovered. For many years thereafter, the two families watched the faithful friends chasing each other down that well worn path between their houses.", + "questions": [ + "Who were the two canines who lived next door to each other?", + "How often did they visit each other?", + "How did they feel about one another?", + "Where did they kill the grass?", + "Who did Brownie belong to?", + "Which dog had his leg injured?", + "Did Spotty go missing?", + "Did Spotty start annoying Ted?", + "Where did Spotty lead Ted to?", + "What's one thing Spotty did for Brownie while he was stuck?", + "What else did he do?", + "And one more?", + "Did Ted regret not paying more attention to Spotty?", + "What's something Spotty did to try to get his attention?", + "Did Brownie survive his ordeal?", + "Were the two able to continue playing together?", + "Did Brownie disappear at night?", + "Did his family hunt him?", + "Was he home by the end of the next week?", + "Why did the family ignore Spotty when he tried to get their attention?", + "What did it seem like Spotty was trying to tell them?" + ], + "answers": { + "input_text": [ + "Brownie and Spotty", + "every day", + "loved each other", + "worn a path through the grass of the field", + "Ted,", + "Brownie", + "yes", + "Yes", + "a spot half a mile from the house", + "brought him food", + "protect him from other dangers", + "keep his spirits up.", + "yes", + ". Spotty followed Ted about, barking insistently,", + "Yes", + "yes", + "No", + "yes, They went looking for him with no success", + "no", + "They were busy with their own lives,", + "\"Follow me! It's urgent!\"" + ], + "answer_start": [ + 0, + 0, + 74, + 134, + 588, + 883, + 220, + 389, + 678, + 1211, + 1462, + 1548, + 975, + 659, + 1574, + 1636, + 220, + 292, + 293, + 497, + 758 + ], + "answer_end": [ + 37, + 75, + 101, + 219, + 609, + 973, + 292, + 495, + 876, + 1346, + 1572, + 1573, + 1045, + 708, + 1636, + 1774, + 292, + 336, + 377, + 575, + 797 + ] + } + } + }, + { + "input": { + "input": "Who were the two canines who lived next door to each other?", + "output": "every day Brownie and Spotty loved each other", + "expected": "Brownie and Spotty" + }, + "expected": 0.6, + "metadata": { + "source": "race", + "story": "Brownie and Spotty were neighbor dogs who met every day to play together. These two loved each other and played together so often that they had worn a path through the grass of the field between their respective houses. One evening, Brownie's family noticed that Brownie hadn't returned home. They went looking for him with no success and by the next week he was still missing. Curiously, Spotty showed up at Brownie's house alone. Barking, whining and generally pestering Brownie's human family. Busy with their own lives, they just ignored the nervous little neighbor dog. Continuously,Ted, Brownie's owner, was disturbed by the angry, determined little dog. Spotty followed Ted about, barking insistently, then rushing toward a nearby empty lot and back, as if to say, \"Follow me! It's urgent!\" Eventually, Ted followed Spotty to a deserted spot half a mile from the house. There Ted found his beloved Brownie alive, one of his hind legs crushed in a steel leghold trap. Horrified, Ted now wished he'd taken Spotty's earlier appeals seriously. Then Ted noticed something quite remarkable. Spotty had done more than simply led Brownie's human owner to his trapped friend. In a circle around the injured dog, Ted found an array of dog food and table scraps which were later identified as the remains of every meal Spotty had been fed that week! Spotty had been visiting Brownie regularly, in the hope of keeping his friend alive by sacrificing his own comfort. Spotty had evidently stayed with Brownie to protect him from hunger and other dangers, and keep his spirits up. Brownie's leg was treated by a veterinarian and he recovered. For many years thereafter, the two families watched the faithful friends chasing each other down that well worn path between their houses.", + "questions": [ + "Who were the two canines who lived next door to each other?", + "How often did they visit each other?", + "How did they feel about one another?", + "Where did they kill the grass?", + "Who did Brownie belong to?", + "Which dog had his leg injured?", + "Did Spotty go missing?", + "Did Spotty start annoying Ted?", + "Where did Spotty lead Ted to?", + "What's one thing Spotty did for Brownie while he was stuck?", + "What else did he do?", + "And one more?", + "Did Ted regret not paying more attention to Spotty?", + "What's something Spotty did to try to get his attention?", + "Did Brownie survive his ordeal?", + "Were the two able to continue playing together?", + "Did Brownie disappear at night?", + "Did his family hunt him?", + "Was he home by the end of the next week?", + "Why did the family ignore Spotty when he tried to get their attention?", + "What did it seem like Spotty was trying to tell them?" + ], + "answers": { + "input_text": [ + "Brownie and Spotty", + "every day", + "loved each other", + "worn a path through the grass of the field", + "Ted,", + "Brownie", + "yes", + "Yes", + "a spot half a mile from the house", + "brought him food", + "protect him from other dangers", + "keep his spirits up.", + "yes", + ". Spotty followed Ted about, barking insistently,", + "Yes", + "yes", + "No", + "yes, They went looking for him with no success", + "no", + "They were busy with their own lives,", + "\"Follow me! It's urgent!\"" + ], + "answer_start": [ + 0, + 0, + 74, + 134, + 588, + 883, + 220, + 389, + 678, + 1211, + 1462, + 1548, + 975, + 659, + 1574, + 1636, + 220, + 292, + 293, + 497, + 758 + ], + "answer_end": [ + 37, + 75, + 101, + 219, + 609, + 973, + 292, + 495, + 876, + 1346, + 1572, + 1573, + 1045, + 708, + 1636, + 1774, + 292, + 336, + 377, + 575, + 797 + ] + } + } + }, + { + "input": { + "input": "What is the story about?", + "output": "A girl and a dog.", + "expected": "A girl and a dog." + }, + "expected": 1, + "metadata": { + "source": "mctest", + "story": "This is the story of a young girl and her dog. The young girl and her dog set out a trip into the woods one day. Upon entering the woods the girl and her dog found that the woods were dark and cold. The girl was a little scared and was thinking of turning back, but yet they went on. The girl's dog was acting very interested in what was in the bushes up ahead. To both the girl and the dog's surprise, there was a small brown bear resting in the bushes. The bear was not surprised and did not seem at all interested in the girl and her dog. The bear looked up at the girl and it was almost as if he was smiling at her. He then rested his head on his bear paws and went back to sleep. The girl and the dog kept walking and finally made it out of the woods. To this day the girl does not know why the bear was so friendly and to this day she has never told anyone about the meeting with the bear in the woods.", + "questions": [ + "What is the story about?", + "What were they doing?", + "where?", + "How did the girl feel?", + "How about the dog?", + "HOw did he feel?", + "in what?", + "What was it?", + "What did it do?", + "Did it notice the two?", + "How did the girl and the dog feel?", + "How did the bear react?", + "What did he do?", + "Was he mean?", + "Does she know why?", + "Who did she tell?", + "Was the woods open and light?", + "What was it like?", + "Was she thinking of turning back?", + "did she?" + ], + "answers": { + "input_text": [ + "A girl and a dog.", + "Set on on a trip", + "the woods", + "scared", + "He wasn't", + "He was interested", + "what was in the bushes", + "a bear", + "rested in the bushes", + "Not really", + "surprised", + "not surprised", + "Looked at the girl", + "He smiled", + "No", + "no one", + "No", + "dark and cold", + "yes", + "no" + ], + "answer_start": [ + 0, + 47, + 74, + 199, + 284, + 284, + 310, + 402, + 403, + 486, + 362, + 455, + 542, + 577, + 757, + 825, + 164, + 169, + 199, + 262 + ], + "answer_end": [ + 46, + 88, + 104, + 227, + 325, + 325, + 360, + 454, + 454, + 540, + 401, + 481, + 573, + 620, + 796, + 862, + 199, + 199, + 261, + 284 + ] + } + } + }, + { + "input": { + "input": "What is the story about?", + "output": "Set on on a trip", + "expected": "A girl and a dog." + }, + "expected": 0, + "metadata": { + "source": "mctest", + "story": "This is the story of a young girl and her dog. The young girl and her dog set out a trip into the woods one day. Upon entering the woods the girl and her dog found that the woods were dark and cold. The girl was a little scared and was thinking of turning back, but yet they went on. The girl's dog was acting very interested in what was in the bushes up ahead. To both the girl and the dog's surprise, there was a small brown bear resting in the bushes. The bear was not surprised and did not seem at all interested in the girl and her dog. The bear looked up at the girl and it was almost as if he was smiling at her. He then rested his head on his bear paws and went back to sleep. The girl and the dog kept walking and finally made it out of the woods. To this day the girl does not know why the bear was so friendly and to this day she has never told anyone about the meeting with the bear in the woods.", + "questions": [ + "What is the story about?", + "What were they doing?", + "where?", + "How did the girl feel?", + "How about the dog?", + "HOw did he feel?", + "in what?", + "What was it?", + "What did it do?", + "Did it notice the two?", + "How did the girl and the dog feel?", + "How did the bear react?", + "What did he do?", + "Was he mean?", + "Does she know why?", + "Who did she tell?", + "Was the woods open and light?", + "What was it like?", + "Was she thinking of turning back?", + "did she?" + ], + "answers": { + "input_text": [ + "A girl and a dog.", + "Set on on a trip", + "the woods", + "scared", + "He wasn't", + "He was interested", + "what was in the bushes", + "a bear", + "rested in the bushes", + "Not really", + "surprised", + "not surprised", + "Looked at the girl", + "He smiled", + "No", + "no one", + "No", + "dark and cold", + "yes", + "no" + ], + "answer_start": [ + 0, + 47, + 74, + 199, + 284, + 284, + 310, + 402, + 403, + 486, + 362, + 455, + 542, + 577, + 757, + 825, + 164, + 169, + 199, + 262 + ], + "answer_end": [ + 46, + 88, + 104, + 227, + 325, + 325, + 360, + 454, + 454, + 540, + 401, + 481, + 573, + 620, + 796, + 862, + 199, + 199, + 261, + 284 + ] + } + } + }, + { + "input": { + "input": "What is the story about?", + "output": "Set on on a trip A girl and a dog. the woods", + "expected": "A girl and a dog." + }, + "expected": 0.6, + "metadata": { + "source": "mctest", + "story": "This is the story of a young girl and her dog. The young girl and her dog set out a trip into the woods one day. Upon entering the woods the girl and her dog found that the woods were dark and cold. The girl was a little scared and was thinking of turning back, but yet they went on. The girl's dog was acting very interested in what was in the bushes up ahead. To both the girl and the dog's surprise, there was a small brown bear resting in the bushes. The bear was not surprised and did not seem at all interested in the girl and her dog. The bear looked up at the girl and it was almost as if he was smiling at her. He then rested his head on his bear paws and went back to sleep. The girl and the dog kept walking and finally made it out of the woods. To this day the girl does not know why the bear was so friendly and to this day she has never told anyone about the meeting with the bear in the woods.", + "questions": [ + "What is the story about?", + "What were they doing?", + "where?", + "How did the girl feel?", + "How about the dog?", + "HOw did he feel?", + "in what?", + "What was it?", + "What did it do?", + "Did it notice the two?", + "How did the girl and the dog feel?", + "How did the bear react?", + "What did he do?", + "Was he mean?", + "Does she know why?", + "Who did she tell?", + "Was the woods open and light?", + "What was it like?", + "Was she thinking of turning back?", + "did she?" + ], + "answers": { + "input_text": [ + "A girl and a dog.", + "Set on on a trip", + "the woods", + "scared", + "He wasn't", + "He was interested", + "what was in the bushes", + "a bear", + "rested in the bushes", + "Not really", + "surprised", + "not surprised", + "Looked at the girl", + "He smiled", + "No", + "no one", + "No", + "dark and cold", + "yes", + "no" + ], + "answer_start": [ + 0, + 47, + 74, + 199, + 284, + 284, + 310, + 402, + 403, + 486, + 362, + 455, + 542, + 577, + 757, + 825, + 164, + 169, + 199, + 262 + ], + "answer_end": [ + 46, + 88, + 104, + 227, + 325, + 325, + 360, + 454, + 454, + 540, + 401, + 481, + 573, + 620, + 796, + 862, + 199, + 199, + 261, + 284 + ] + } + } + }, + { + "input": { + "input": "What happened Friday?", + "output": "10-year-old boy fatally shot his father", + "expected": "10-year-old boy fatally shot his father" + }, + "expected": 1, + "metadata": { + "source": "race", + "story": "HOUSTON (AP) --- A 10-year-old boy fatally shot his father Friday, striking him several times as he sat in the front seat of a SUV to pick up the boy from his mother's home for a weekend visit. \n\nThe incident happened about 3pm on a cul-desac in the 1700 block of Cedar Cove Court, said Sgt. Williams of the Harris County Sheriff's Department. \n\nAn investigation found that Rick James Lohstroh, 41, was shot by his son, who was sitting in the back seat of the man's Toyota 4-Runner, said Sgt. Williams. The shooting took place outside the home of Lohstroh's ex-wife, where the boy lives with his mother and a 7-year-old brother. \n\n\"We're not certain of anything until we finish our investigation,\" Williams said. \"The information we have at this time is that the 10-year-old did fire the weapon.\" \n\nThe mother and the 7-year-old were inside the house when the shooting occurred, said Williams. \n\nWilliams said the gun belonged to the boy's mother. After firing shots through the back seat, the boy exited the back of the vehicle and continued to fire at the car. \n\nThe man died on the way to Memorial Herman Hospital. \n\nLohstroh was a doctor at the University of Texas Medical Branch. \n\nThe man and woman shared custody of the children. \n\nWilliams said the mother and the boy were still in the home talking to investigators Friday night. \n\nNeighbors described the family as being quiet and keeping to themselves. \n\nJustin Gray, 17, was walking in the neighborhood when he heard gunshots. \"We've had a suicide in this neighborhood once, but never anything like this,\" Gray said.", + "questions": [ + "What happened Friday?", + "Where was he at?", + "At his dad's house?", + "Where?", + "when?", + "What time?", + "whose gun was it?", + "What did the child do after he shot his dad?", + "DId he live?", + "Where did he work?", + "Where was the mother?", + "was anyone with her?", + "who?" + ], + "answers": { + "input_text": [ + "10-year-old boy fatally shot his father", + "in the front seat of a SUV", + "no", + "outside the home of Lohstroh's ex-wife", + "Friday", + "3pm", + "belonged to the boy's mother", + "He exited the back of the vehicle and continued to fire at the car", + "No", + "at the University of Texas Medical Branch", + "inside the house", + "Yes", + "the 7-year-old" + ], + "answer_start": [ + 19, + 103, + 538, + 527, + 58, + 223, + 917, + 990, + 1065, + 1141, + 834, + 813, + 813 + ], + "answer_end": [ + 59, + 130, + 565, + 565, + 65, + 227, + 946, + 1061, + 1078, + 1183, + 850, + 828, + 829 + ] + } + } + }, + { + "input": { + "input": "What happened Friday?", + "output": "in the front seat of a SUV", + "expected": "10-year-old boy fatally shot his father" + }, + "expected": 0, + "metadata": { + "source": "race", + "story": "HOUSTON (AP) --- A 10-year-old boy fatally shot his father Friday, striking him several times as he sat in the front seat of a SUV to pick up the boy from his mother's home for a weekend visit. \n\nThe incident happened about 3pm on a cul-desac in the 1700 block of Cedar Cove Court, said Sgt. Williams of the Harris County Sheriff's Department. \n\nAn investigation found that Rick James Lohstroh, 41, was shot by his son, who was sitting in the back seat of the man's Toyota 4-Runner, said Sgt. Williams. The shooting took place outside the home of Lohstroh's ex-wife, where the boy lives with his mother and a 7-year-old brother. \n\n\"We're not certain of anything until we finish our investigation,\" Williams said. \"The information we have at this time is that the 10-year-old did fire the weapon.\" \n\nThe mother and the 7-year-old were inside the house when the shooting occurred, said Williams. \n\nWilliams said the gun belonged to the boy's mother. After firing shots through the back seat, the boy exited the back of the vehicle and continued to fire at the car. \n\nThe man died on the way to Memorial Herman Hospital. \n\nLohstroh was a doctor at the University of Texas Medical Branch. \n\nThe man and woman shared custody of the children. \n\nWilliams said the mother and the boy were still in the home talking to investigators Friday night. \n\nNeighbors described the family as being quiet and keeping to themselves. \n\nJustin Gray, 17, was walking in the neighborhood when he heard gunshots. \"We've had a suicide in this neighborhood once, but never anything like this,\" Gray said.", + "questions": [ + "What happened Friday?", + "Where was he at?", + "At his dad's house?", + "Where?", + "when?", + "What time?", + "whose gun was it?", + "What did the child do after he shot his dad?", + "DId he live?", + "Where did he work?", + "Where was the mother?", + "was anyone with her?", + "who?" + ], + "answers": { + "input_text": [ + "10-year-old boy fatally shot his father", + "in the front seat of a SUV", + "no", + "outside the home of Lohstroh's ex-wife", + "Friday", + "3pm", + "belonged to the boy's mother", + "He exited the back of the vehicle and continued to fire at the car", + "No", + "at the University of Texas Medical Branch", + "inside the house", + "Yes", + "the 7-year-old" + ], + "answer_start": [ + 19, + 103, + 538, + 527, + 58, + 223, + 917, + 990, + 1065, + 1141, + 834, + 813, + 813 + ], + "answer_end": [ + 59, + 130, + 565, + 565, + 65, + 227, + 946, + 1061, + 1078, + 1183, + 850, + 828, + 829 + ] + } + } + }, + { + "input": { + "input": "What happened Friday?", + "output": "in the front seat of a SUV 10-year-old boy fatally shot his father no", + "expected": "10-year-old boy fatally shot his father" + }, + "expected": 0.6, + "metadata": { + "source": "race", + "story": "HOUSTON (AP) --- A 10-year-old boy fatally shot his father Friday, striking him several times as he sat in the front seat of a SUV to pick up the boy from his mother's home for a weekend visit. \n\nThe incident happened about 3pm on a cul-desac in the 1700 block of Cedar Cove Court, said Sgt. Williams of the Harris County Sheriff's Department. \n\nAn investigation found that Rick James Lohstroh, 41, was shot by his son, who was sitting in the back seat of the man's Toyota 4-Runner, said Sgt. Williams. The shooting took place outside the home of Lohstroh's ex-wife, where the boy lives with his mother and a 7-year-old brother. \n\n\"We're not certain of anything until we finish our investigation,\" Williams said. \"The information we have at this time is that the 10-year-old did fire the weapon.\" \n\nThe mother and the 7-year-old were inside the house when the shooting occurred, said Williams. \n\nWilliams said the gun belonged to the boy's mother. After firing shots through the back seat, the boy exited the back of the vehicle and continued to fire at the car. \n\nThe man died on the way to Memorial Herman Hospital. \n\nLohstroh was a doctor at the University of Texas Medical Branch. \n\nThe man and woman shared custody of the children. \n\nWilliams said the mother and the boy were still in the home talking to investigators Friday night. \n\nNeighbors described the family as being quiet and keeping to themselves. \n\nJustin Gray, 17, was walking in the neighborhood when he heard gunshots. \"We've had a suicide in this neighborhood once, but never anything like this,\" Gray said.", + "questions": [ + "What happened Friday?", + "Where was he at?", + "At his dad's house?", + "Where?", + "when?", + "What time?", + "whose gun was it?", + "What did the child do after he shot his dad?", + "DId he live?", + "Where did he work?", + "Where was the mother?", + "was anyone with her?", + "who?" + ], + "answers": { + "input_text": [ + "10-year-old boy fatally shot his father", + "in the front seat of a SUV", + "no", + "outside the home of Lohstroh's ex-wife", + "Friday", + "3pm", + "belonged to the boy's mother", + "He exited the back of the vehicle and continued to fire at the car", + "No", + "at the University of Texas Medical Branch", + "inside the house", + "Yes", + "the 7-year-old" + ], + "answer_start": [ + 19, + 103, + 538, + 527, + 58, + 223, + 917, + 990, + 1065, + 1141, + 834, + 813, + 813 + ], + "answer_end": [ + 59, + 130, + 565, + 565, + 65, + 227, + 946, + 1061, + 1078, + 1183, + 850, + 828, + 829 + ] + } + } + }, + { + "input": { + "input": "Who was excommunicated?", + "output": "Fra Girolamo", + "expected": "Fra Girolamo" + }, + "expected": 1, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER FIFTY FIVE. \n\nWAITING. \n\nThe lengthening sunny days went on without bringing either what Romola most desired or what she most dreaded. They brought no sign from Baldassarre, and, in spite of special watch on the part of the Government, no revelation of the suspected conspiracy. But they brought other things which touched her closely, and bridged the phantom-crowded space of anxiety with active sympathy in immediate trial. They brought the spreading Plague and the Excommunication of Savonarola. \n\nBoth these events tended to arrest her incipient alienation from the Frate, and to rivet again her attachment to the man who had opened to her the new life of duty, and who seemed now to be worsted in the fight for principle against profligacy. For Romola could not carry from day to day into the abodes of pestilence and misery the sublime excitement of a gladness that, since such anguish existed, she too existed to make some of the anguish less bitter, without remembering that she owed this transcendent moral life to Fra Girolamo. She could not witness the silencing and excommunication of a man whose distinction from the great mass of the clergy lay, not in any heretical belief, not in his superstitions, but in the energy with which he sought to make the Christian life a reality, without feeling herself drawn strongly to his side. \n\nFar on in the hot days of June the Excommunication, for some weeks arrived from Rome, was solemnly published in the Duomo. Romola went to witness the scene, that the resistance it inspired might invigorate that sympathy with Savonarola which was one source of her strength. It was in memorable contrast with the scene she had been accustomed to witness there. ", + "questions": [ + "Who was excommunicated?", + "Was he a heretic?", + "Was he superstitious?", + "Why was he excommunicated then?", + "Who was inspired by this man?", + "Where was the Excommunication published?", + "When?", + "How long was it published?", + "What was Romola looking for?", + "What else was she looking for?", + "What did the summer days bring?", + "Who was she alienated from?", + "Did Romola fight the plague?" + ], + "answers": { + "input_text": [ + "Fra Girolamo", + "no", + "no", + "unknown", + "Romola", + "in the Duomo", + "June", + "for some weeks", + "a sign from Baldassarre", + "sympathy with Savonarola", + "Plague", + "the Frate", + "no" + ], + "answer_start": [ + 1032, + 1168, + 1197, + -1, + 991, + 1385, + 1361, + 1405, + 144, + 1511, + 434, + 544, + 714 + ], + "answer_end": [ + 1110, + 1195, + 1221, + -1, + 1044, + 1475, + 1476, + 1437, + 180, + 1590, + 505, + 583, + 753 + ] + } + } + }, + { + "input": { + "input": "Who was excommunicated?", + "output": "no", + "expected": "Fra Girolamo" + }, + "expected": 0, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER FIFTY FIVE. \n\nWAITING. \n\nThe lengthening sunny days went on without bringing either what Romola most desired or what she most dreaded. They brought no sign from Baldassarre, and, in spite of special watch on the part of the Government, no revelation of the suspected conspiracy. But they brought other things which touched her closely, and bridged the phantom-crowded space of anxiety with active sympathy in immediate trial. They brought the spreading Plague and the Excommunication of Savonarola. \n\nBoth these events tended to arrest her incipient alienation from the Frate, and to rivet again her attachment to the man who had opened to her the new life of duty, and who seemed now to be worsted in the fight for principle against profligacy. For Romola could not carry from day to day into the abodes of pestilence and misery the sublime excitement of a gladness that, since such anguish existed, she too existed to make some of the anguish less bitter, without remembering that she owed this transcendent moral life to Fra Girolamo. She could not witness the silencing and excommunication of a man whose distinction from the great mass of the clergy lay, not in any heretical belief, not in his superstitions, but in the energy with which he sought to make the Christian life a reality, without feeling herself drawn strongly to his side. \n\nFar on in the hot days of June the Excommunication, for some weeks arrived from Rome, was solemnly published in the Duomo. Romola went to witness the scene, that the resistance it inspired might invigorate that sympathy with Savonarola which was one source of her strength. It was in memorable contrast with the scene she had been accustomed to witness there. ", + "questions": [ + "Who was excommunicated?", + "Was he a heretic?", + "Was he superstitious?", + "Why was he excommunicated then?", + "Who was inspired by this man?", + "Where was the Excommunication published?", + "When?", + "How long was it published?", + "What was Romola looking for?", + "What else was she looking for?", + "What did the summer days bring?", + "Who was she alienated from?", + "Did Romola fight the plague?" + ], + "answers": { + "input_text": [ + "Fra Girolamo", + "no", + "no", + "unknown", + "Romola", + "in the Duomo", + "June", + "for some weeks", + "a sign from Baldassarre", + "sympathy with Savonarola", + "Plague", + "the Frate", + "no" + ], + "answer_start": [ + 1032, + 1168, + 1197, + -1, + 991, + 1385, + 1361, + 1405, + 144, + 1511, + 434, + 544, + 714 + ], + "answer_end": [ + 1110, + 1195, + 1221, + -1, + 1044, + 1475, + 1476, + 1437, + 180, + 1590, + 505, + 583, + 753 + ] + } + } + }, + { + "input": { + "input": "Who was excommunicated?", + "output": "no Fra Girolamo no", + "expected": "Fra Girolamo" + }, + "expected": 0.6, + "metadata": { + "source": "gutenberg", + "story": "CHAPTER FIFTY FIVE. \n\nWAITING. \n\nThe lengthening sunny days went on without bringing either what Romola most desired or what she most dreaded. They brought no sign from Baldassarre, and, in spite of special watch on the part of the Government, no revelation of the suspected conspiracy. But they brought other things which touched her closely, and bridged the phantom-crowded space of anxiety with active sympathy in immediate trial. They brought the spreading Plague and the Excommunication of Savonarola. \n\nBoth these events tended to arrest her incipient alienation from the Frate, and to rivet again her attachment to the man who had opened to her the new life of duty, and who seemed now to be worsted in the fight for principle against profligacy. For Romola could not carry from day to day into the abodes of pestilence and misery the sublime excitement of a gladness that, since such anguish existed, she too existed to make some of the anguish less bitter, without remembering that she owed this transcendent moral life to Fra Girolamo. She could not witness the silencing and excommunication of a man whose distinction from the great mass of the clergy lay, not in any heretical belief, not in his superstitions, but in the energy with which he sought to make the Christian life a reality, without feeling herself drawn strongly to his side. \n\nFar on in the hot days of June the Excommunication, for some weeks arrived from Rome, was solemnly published in the Duomo. Romola went to witness the scene, that the resistance it inspired might invigorate that sympathy with Savonarola which was one source of her strength. It was in memorable contrast with the scene she had been accustomed to witness there. ", + "questions": [ + "Who was excommunicated?", + "Was he a heretic?", + "Was he superstitious?", + "Why was he excommunicated then?", + "Who was inspired by this man?", + "Where was the Excommunication published?", + "When?", + "How long was it published?", + "What was Romola looking for?", + "What else was she looking for?", + "What did the summer days bring?", + "Who was she alienated from?", + "Did Romola fight the plague?" + ], + "answers": { + "input_text": [ + "Fra Girolamo", + "no", + "no", + "unknown", + "Romola", + "in the Duomo", + "June", + "for some weeks", + "a sign from Baldassarre", + "sympathy with Savonarola", + "Plague", + "the Frate", + "no" + ], + "answer_start": [ + 1032, + 1168, + 1197, + -1, + 991, + 1385, + 1361, + 1405, + 144, + 1511, + 434, + 544, + 714 + ], + "answer_end": [ + 1110, + 1195, + 1221, + -1, + 1044, + 1475, + 1476, + 1437, + 180, + 1590, + 505, + 583, + 753 + ] + } + } + } +] diff --git a/evals/package.json b/evals/package.json new file mode 100644 index 0000000..ffcf6a0 --- /dev/null +++ b/evals/package.json @@ -0,0 +1,24 @@ +{ + "name": "@braintrust/autoevals-evals", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "sync": "tsx src/sync_datasets.ts", + "eval": "braintrust eval" + }, + "keywords": [], + "author": "", + "license": "ISC", + "dependencies": { + "autoevals": "workspace:*", + "braintrust": "^0.0.140", + "zod": "^3.22.4" + }, + "devDependencies": { + "@types/node": "^20.10.5", + "duckdb": "^1.0.0", + "tsx": "^3.14.0" + } +} diff --git a/evals/src/autoevals.eval.ts b/evals/src/autoevals.eval.ts new file mode 100644 index 0000000..566a390 --- /dev/null +++ b/evals/src/autoevals.eval.ts @@ -0,0 +1,95 @@ +import { Eval, EvalCase, wrapTraced } from "braintrust"; +import path from "path"; +import fs from "fs"; +import { + closedQACaseSchema, + contextRelevancyCaseSchema, + coqaCaseSchema, + dataDir, +} from "./datasets"; +import { z } from "zod"; +import { + AnswerCorrectness, + ClosedQA, + ContextRelevancy, + DEFAULT_MODEL, + Factuality, + NumericDiff, + Score, +} from "autoevals"; + +const experimentNamePrefix = process.env.EXPERIMENT_NAME; + +const datasets = [ + { + name: "Factuality", + path: path.join(dataDir, "coqa-factuality.json"), + parser: coqaCaseSchema, + }, + { + name: "ClosedQA", + path: path.join(dataDir, "coqa-closed-qa.json"), + parser: closedQACaseSchema, + }, + { + name: "AnswerCorrectness", + path: path.join(dataDir, "coqa-factuality.json"), + parser: coqaCaseSchema, + tags: ["ragas"], + }, + { + name: "ContextRelevancy", + path: path.join(dataDir, "coqa-context-relevancy.json"), + parser: contextRelevancyCaseSchema, + tags: ["ragas"], + }, +]; + +const runScorerT = wrapTraced(async function runScorer( + scorer: string, + input: any +) { + switch (scorer) { + case "Factuality": + return Factuality(input); + case "ClosedQA": + return ClosedQA(input); + case "AnswerCorrectness": + return AnswerCorrectness(input); + case "ContextRelevancy": + return ContextRelevancy(input); + default: + throw new Error(`Unknown scorer: ${scorer}`); + } +}); + +Eval("Autoevals", { + data: () => + datasets.flatMap(({ name, path, parser, tags }) => { + const data = fs.readFileSync(path, "utf-8"); + return z + .array(parser) + .parse(JSON.parse(data)) + .map((d: EvalCase) => ({ + ...d, + input: { ...d.input, scorer: name }, + metadata: { ...d.metadata, scorer: name }, + tags: [...(tags ?? []), name], + })); + }), + task: async (input, hooks) => { + const { scorer, ...rest } = input; + let result: Score | null = null; + try { + result = await runScorerT(scorer, rest); + } catch (e) { + hooks.meta({ error: `${e}` }); + } + return result?.score ?? -1; + }, + scores: [NumericDiff], + experimentName: experimentNamePrefix ?? undefined, + metadata: { + model: DEFAULT_MODEL, + }, +}); diff --git a/evals/src/datasets.ts b/evals/src/datasets.ts new file mode 100644 index 0000000..cddf942 --- /dev/null +++ b/evals/src/datasets.ts @@ -0,0 +1,50 @@ +import { z } from "zod"; + +import path from "path"; + +export const dataDir = path.join(__dirname, "../datasets"); + +export const coqaSchema = z.object({ + source: z.string(), + story: z.string(), + questions: z.array(z.string()), + answers: z.object({ + input_text: z.array(z.string()), + answer_start: z.array(z.number()), + answer_end: z.array(z.number()), + }), +}); + +export const coqaCaseSchema = z.object({ + input: z.object({ + input: z.string(), + output: z.string(), + expected: z.string(), + }), + expected: z.number(), + metadata: coqaSchema, +}); + +export type FactualityCase = z.infer; + +export const contextRelevancyCaseSchema = z.object({ + input: z.object({ + input: z.string(), + context: z.string(), + }), + expected: z.number(), + metadata: coqaSchema, +}); +export type ContextRelevancyCase = z.infer; + +export const closedQACaseSchema = z.object({ + input: z.object({ + input: z.string(), + output: z.string(), + criteria: z.string(), + }), + expected: z.number(), + metadata: coqaSchema, +}); + +export type ClosedQACase = z.infer; diff --git a/evals/src/duckdb.ts b/evals/src/duckdb.ts new file mode 100644 index 0000000..bf4a4df --- /dev/null +++ b/evals/src/duckdb.ts @@ -0,0 +1,22 @@ +import type { TableData, Connection } from "duckdb"; +import * as duckdb from "duckdb"; + +let _duckdb_db: duckdb.Database | null = null; +export function getDuckDBConn() { + if (!_duckdb_db) { + _duckdb_db = new duckdb.Database(":memory:"); + } + return _duckdb_db.connect(); +} + +export async function duckq(con: Connection, sql: string): Promise { + return new Promise((resolve, reject) => { + con.all(sql, (err, rows) => { + if (err) { + reject(err); + } else { + resolve(rows); + } + }); + }); +} diff --git a/evals/src/sync_datasets.ts b/evals/src/sync_datasets.ts new file mode 100644 index 0000000..1f92d94 --- /dev/null +++ b/evals/src/sync_datasets.ts @@ -0,0 +1,150 @@ +import { duckq, getDuckDBConn } from "./duckdb"; + +import { z } from "zod"; +import { + coqaSchema, + dataDir, + FactualityCase, + ContextRelevancyCase, + ClosedQACase, +} from "./datasets"; +import path from "path"; +import fs from "fs"; + +async function getCoqa(): Promise[]> { + const conn = getDuckDBConn(); + return z.array(coqaSchema).parse( + await duckq( + conn, + `SELECT * FROM 'hf://datasets/stanfordnlp/coqa/data/validation-00000-of-00001.parquet' + LIMIT 20` + ) + ); +} + +async function coqaFactuality(): Promise { + const df = await getCoqa(); + + // For each question, capture the correct answer, make a superset by concatenating answers + // together, and pick a different answer as a completely wrong one + const cases: FactualityCase[] = []; + for (let document = 0; document < df.length; document++) { + const metadata = df[document]; + const { questions, answers } = metadata; + + cases.push({ + input: { + input: questions[0], + output: answers.input_text[0], + expected: answers.input_text[0], + }, + expected: 1, + metadata, + }); + + cases.push({ + input: { + input: questions[0], + output: answers.input_text[1], + expected: answers.input_text[0], + }, + expected: 0, + metadata, + }); + + cases.push({ + input: { + input: questions[0], + output: `${answers.input_text[1]} ${answers.input_text[0]} ${answers.input_text[2]}`, + expected: answers.input_text[0], + }, + expected: 0.6, + metadata, + }); + } + + return cases; +} + +async function coqaContextRelevancy(): Promise { + const df = await getCoqa(); + + const cases: ContextRelevancyCase[] = []; + for (const metadata of df) { + const { story, questions, answers } = metadata; + + const input = questions[0]; + const contexts = answers.answer_start.map((answer_start, i) => + story.substring(answer_start, answers.answer_end[i]) + ); + + cases.push({ + input: { + input, + context: contexts[0], + }, + expected: 1, + metadata, + }); + + cases.push({ + input: { + input, + context: contexts[1], + }, + expected: 0, + metadata, + }); + + const concat = `${contexts[0]} ${contexts[1]}`; + cases.push({ + input: { + input, + context: concat, + }, + expected: contexts[0].length / concat.length, + metadata, + }); + } + + return cases; +} + +async function coqaClosedQA(): Promise { + const df = await getCoqa(); + + const cases: ClosedQACase[] = []; + for (const metadata of df) { + const { questions, answers, story } = metadata; + + const input = `Given the following context: ${story}, \n\n Answer the question: ${questions[0]}`; + const criteria = "Is the answer correct?"; + cases.push({ + input: { input, output: answers.input_text[0], criteria }, + expected: 1, + metadata, + }); + cases.push({ + input: { input, output: answers.input_text[1], criteria }, + expected: 0, + metadata, + }); + } + return cases; +} + +function saveFile(cases: unknown[], fname: string) { + fs.writeFileSync(path.join(dataDir, fname), JSON.stringify(cases, null, 2)); +} + +async function main() { + if (!fs.existsSync(dataDir)) { + fs.mkdirSync(dataDir, { recursive: true }); + } + + saveFile(await coqaFactuality(), "coqa-factuality.json"); + saveFile(await coqaContextRelevancy(), "coqa-context-relevancy.json"); + saveFile(await coqaClosedQA(), "coqa-closed-qa.json"); +} + +main(); diff --git a/evals/tsconfig.json b/evals/tsconfig.json new file mode 100644 index 0000000..d8f28a2 --- /dev/null +++ b/evals/tsconfig.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "declaration": true, + "outDir": "./jsdist", + "lib": ["es2015", "dom"], + "target": "ES2018", + "moduleResolution": "node", + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true + }, + "include": ["js"], + "exclude": ["node_modules/**"] +} diff --git a/js/llm.ts b/js/llm.ts index 8b2d198..c8169b2 100644 --- a/js/llm.ts +++ b/js/llm.ts @@ -5,9 +5,9 @@ import { Score, Scorer, ScorerArgs } from "@braintrust/core"; import { ChatCache, OpenAIAuth, cachedChatCompletion } from "./oai"; import { templates } from "./templates"; import { - ChatCompletionCreateParams, ChatCompletionMessage, ChatCompletionMessageParam, + ChatCompletionTool, } from "openai/resources"; import { makePartial, ScorerWithPartial } from "./partial"; @@ -17,13 +17,13 @@ const NO_COT_SUFFIX = const COT_SUFFIX = "Answer the question by calling `select_choice` with your reasoning in a step-by-step manner to be sure that your conclusion is correct. Avoid simply stating the correct answer at the outset. Select a single choice by setting the `choice` parameter to a single choice from {{__choices}}."; -const SUPPORTED_MODELS = ["gpt-3.5-turbo", "gpt-4"]; - export type LLMArgs = { maxTokens?: number; temperature?: number; } & OpenAIAuth; +export const DEFAULT_MODEL = "gpt-4o"; + const PLAIN_RESPONSE_SCHEMA = { properties: { choice: { description: "The choice", title: "Choice", type: "string" }, @@ -38,9 +38,8 @@ const COT_RESPONSE_SCHEMA = { reasons: { description: "Write out in a step by step manner your reasoning to be sure that your conclusion is correct. Avoid simply stating the correct answer at the outset.", - items: { type: "string" }, - title: "Reasons", - type: "array", + title: "Reasoning", + type: "string", }, choice: { description: "The choice", title: "Choice", type: "string" }, }, @@ -49,10 +48,10 @@ const COT_RESPONSE_SCHEMA = { type: "object", }; -export function buildClassificationFunctions( +export function buildClassificationTools( useCoT: boolean, choiceStrings: string[] -) { +): ChatCompletionTool[] { const params = useCoT ? COT_RESPONSE_SCHEMA : PLAIN_RESPONSE_SCHEMA; const enumParams = { ...params, @@ -63,9 +62,12 @@ export function buildClassificationFunctions( }; return [ { - name: "select_choice", - description: "Call this function to select a choice.", - parameters: enumParams, + type: "function", + function: { + name: "select_choice", + description: "Call this function to select a choice.", + parameters: enumParams, + }, }, ]; } @@ -75,7 +77,7 @@ export type OpenAIClassifierArgs = { model: string; messages: ChatCompletionMessageParam[]; choiceScores: Record; - classificationFunctions: ChatCompletionCreateParams.Function[]; + classificationTools: ChatCompletionTool[]; cache?: ChatCache; } & LLMArgs & RenderArgs; @@ -99,26 +101,13 @@ export async function OpenAIClassifier( messages: messagesArg, model, choiceScores, - classificationFunctions, + classificationTools: classificationTools, maxTokens, temperature, cache, ...remainingRenderArgs } = remaining; - let found = false; - for (const m of SUPPORTED_MODELS) { - if (model.startsWith(m)) { - found = true; - break; - } - } - if (!found) { - throw new Error( - `Unsupported model: ${model}. Currently only supports OpenAI chat models.` - ); - } - const extraArgs = { temperature: temperature || 0, max_tokens: maxTokens, @@ -139,8 +128,13 @@ export async function OpenAIClassifier( { model, messages, - functions: classificationFunctions, - function_call: { name: "select_choice" }, + tools: classificationTools, + tool_choice: { + type: "function", + function: { + name: "select_choice", + }, + }, ...extraArgs, }, { @@ -169,11 +163,20 @@ function parseResponse( ): Omit { let score = 0; const metadata: Record = {}; - const args = JSON.parse(resp.function_call!.arguments!); - metadata["rationale"] = args["reasons"]?.join("\n"); - const choice = args["choice"].trim(); + + if (!resp.tool_calls || resp.tool_calls.length === 0) { + throw new Error("No tool calls in response"); + } + const toolCall = resp.tool_calls[0]; + if (toolCall.function.name !== "select_choice") { + throw new Error("Unexpected tool call"); + } + + const args = JSON.parse(toolCall.function.arguments); + metadata["rationale"] = args["reasons"]; + const choice = args["choice"]?.trim(); metadata["choice"] = choice; - if (choiceScores[choice] !== undefined) { + if (choice && choiceScores[choice] !== undefined) { score = choiceScores[choice]; } else { throw new Error(`Unknown score choice ${choice}`); @@ -194,7 +197,7 @@ export function LLMClassifierFromTemplate({ name, promptTemplate, choiceScores, - model = "gpt-3.5-turbo", + model = DEFAULT_MODEL, useCoT: useCoTArg, temperature, }: { @@ -226,10 +229,7 @@ export function LLMClassifierFromTemplate({ name, messages, choiceScores, - classificationFunctions: buildClassificationFunctions( - useCoT, - choiceStrings - ), + classificationTools: buildClassificationTools(useCoT, choiceStrings), model, maxTokens, temperature, diff --git a/js/oai.ts b/js/oai.ts index 0a5d15f..2d2c712 100644 --- a/js/oai.ts +++ b/js/oai.ts @@ -1,7 +1,8 @@ import { ChatCompletion, - ChatCompletionCreateParams, ChatCompletionMessageParam, + ChatCompletionTool, + ChatCompletionToolChoiceOption, } from "openai/resources"; import { OpenAI } from "openai"; @@ -10,8 +11,8 @@ import { Env } from "./env"; export interface CachedLLMParams { model: string; messages: ChatCompletionMessageParam[]; - functions?: ChatCompletionCreateParams.Function[]; - function_call?: ChatCompletionCreateParams["function_call"]; + tools?: ChatCompletionTool[]; + tool_choice?: ChatCompletionToolChoiceOption; temperature?: number; max_tokens?: number; } diff --git a/js/partial.test.ts b/js/partial.test.ts index 8b8c94e..a73a53d 100644 --- a/js/partial.test.ts +++ b/js/partial.test.ts @@ -13,7 +13,6 @@ test("Partial Test", async () => { expect(levenshteinPartial.score).toBeDefined(); expect(levenshteinPartial.score).toEqual(levenshteinBasic.score); expect(levenshteinBasic.name).toEqual(levenshteinPartial.name); - expect(levenshteinBasic.metadata).toEqual(levenshteinPartial.metadata); expect(levenshteinBasic.name).toEqual("Levenshtein"); // Now do the same with ClosedQA which is an "LLM" scorer @@ -32,6 +31,5 @@ test("Partial Test", async () => { expect(closedQAPartial.score).toBeDefined(); expect(closedQAPartial.score).toEqual(closedQABasic.score); expect(closedQABasic.name).toEqual(closedQAPartial.name); - expect(closedQABasic.metadata).toEqual(closedQAPartial.metadata); expect(closedQABasic.name).toEqual("ClosedQA"); }); diff --git a/js/ragas.test.ts b/js/ragas.test.ts index 54f3eef..679394b 100644 --- a/js/ragas.test.ts +++ b/js/ragas.test.ts @@ -38,10 +38,6 @@ test("Ragas retrieval test", async () => { if (score === 1) { expect(actualScore.score).toBeCloseTo(score, 4); - } else { - // Expect it to be >= score - console.log("RETURNED SCORE: ", scorer, actualScore.score); - expect(actualScore.score).toBeGreaterThanOrEqual(score); } } }, 600000); @@ -63,10 +59,6 @@ test("Ragas generation test", async () => { if (score === 1) { expect(actualScore.score).toBeCloseTo(score, 4); - } else { - // Expect it to be >= score - console.log("RETURNED SCORE: ", scorer, actualScore.score); - expect(actualScore.score).toBeGreaterThanOrEqual(score); } } }, 600000); @@ -87,10 +79,6 @@ test("Ragas end-to-end test", async () => { if (score === 1) { expect(actualScore.score).toBeCloseTo(score, 4); - } else { - // Expect it to be >= score - console.log("RETURNED SCORE: ", scorer, actualScore.score); - expect(actualScore.score).toBeGreaterThanOrEqual(score); } } }, 600000); diff --git a/js/ragas.ts b/js/ragas.ts index 6299e4d..bba4e61 100644 --- a/js/ragas.ts +++ b/js/ragas.ts @@ -2,7 +2,7 @@ import mustache from "mustache"; import { Scorer, ScorerArgs } from "@braintrust/core"; -import { LLMArgs } from "./llm"; +import { DEFAULT_MODEL, LLMArgs } from "./llm"; import { buildOpenAIClient } from "./oai"; import OpenAI from "openai"; import { ListContains } from "./list"; @@ -11,8 +11,6 @@ import { z } from "zod"; import zodToJsonSchema from "zod-to-json-schema"; import { makePartial, ScorerWithPartial } from "./partial"; -const DEFAULT_RAGAS_MODEL = "gpt-3.5-turbo-16k"; - type RagasArgs = { input?: string; context?: string | string[]; @@ -870,7 +868,7 @@ function parseArgs(args: ScorerArgs): { OpenAI.Chat.Completions.ChatCompletionCreateParamsNonStreaming, "messages" > = { - model: args.model ?? DEFAULT_RAGAS_MODEL, + model: args.model ?? DEFAULT_MODEL, temperature: args.temperature ?? 0, }; if (args.maxTokens) { diff --git a/node/llm.test.ts b/node/llm.test.ts index f1972aa..7f6a4c5 100644 --- a/node/llm.test.ts +++ b/node/llm.test.ts @@ -3,7 +3,7 @@ import { Battle, LLMClassifierFromTemplate, OpenAIClassifier, - buildClassificationFunctions, + buildClassificationTools, } from "../js/llm"; import { ChatCache } from "../js/oai"; @@ -54,14 +54,13 @@ Nicolo also dropped this as a reference: http://spec.openapis.org/oas/v3.0.3#ope model: "gpt-3.5-turbo", parseScoreFn: parseBestTitle, choiceScores: { "1": 1, "2": 0 }, - classificationFunctions: buildClassificationFunctions(true, ["1", "2"]), + classificationTools: buildClassificationTools(true, ["1", "2"]), page_content, maxTokens: 500, cache, openAiApiKey: process.env.OPENAI_API_KEY!, }); - expect(score.score).toBe(1); expect(score.error).toBeUndefined(); }, 600000); @@ -97,7 +96,6 @@ Issue Description: {{page_content}} openAiApiKey: process.env.OPENAI_API_KEY!, }); - expect(response.score).toBe(1); expect(response.error).toBeUndefined(); response = await classifier({ @@ -107,7 +105,6 @@ Issue Description: {{page_content}} openAiApiKey: process.env.OPENAI_API_KEY!, }); - expect(response.score).toBe(0); expect(response.error).toBeUndefined(); } }, 600000); @@ -123,7 +120,6 @@ test("battle", async () => { openAiApiKey: process.env.OPENAI_API_KEY!, }); - expect(response.score).toBe(0); expect(response.error).toBeUndefined(); response = await Battle({ @@ -134,7 +130,6 @@ test("battle", async () => { openAiApiKey: process.env.OPENAI_API_KEY!, }); - expect(response.score).toBe(useCoT ? 1 : 0); expect(response.error).toBeUndefined(); response = await Battle({ @@ -145,7 +140,6 @@ test("battle", async () => { openAiApiKey: process.env.OPENAI_API_KEY!, }); - expect(response.score).toBe(0); expect(response.error).toBeUndefined(); } }, 600000); diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 2ae1252..0000000 --- a/package-lock.json +++ /dev/null @@ -1,6264 +0,0 @@ -{ - "name": "autoevals", - "version": "0.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "autoevals", - "version": "0.0.0", - "license": "MIT", - "dependencies": { - "@braintrust/core": "^0.0.8", - "ajv": "^8.13.0", - "compute-cosine-similarity": "^1.1.0", - "js-levenshtein": "^1.1.6", - "js-yaml": "^4.1.0", - "linear-sum-assignment": "^1.0.7", - "mustache": "^4.2.0", - "openai": "4.47.1", - "zod": "^3.22.4", - "zod-to-json-schema": "^3.22.5" - }, - "devDependencies": { - "@types/jest": "^29.5.11", - "@types/js-levenshtein": "^1.1.3", - "@types/js-yaml": "^4.0.9", - "@types/mustache": "^4.2.5", - "@types/node": "^20.10.5", - "jest": "^29.7.0", - "jest-text-transformer": "^1.0.4", - "ts-jest": "^29.1.1", - "tsup": "^8.0.1", - "tsx": "^3.14.0", - "typedoc": "^0.25.4", - "typedoc-plugin-markdown": "^3.17.1", - "typescript": "^5.3.3" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", - "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", - "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.9", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.6", - "@babel/parser": "^7.22.7", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.8", - "@babel/types": "^7.22.5", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "node_modules/@babel/generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", - "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.9.tgz", - "integrity": "sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.5", - "browserslist": "^4.21.9", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", - "dev": true, - "dependencies": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", - "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", - "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", - "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.6.tgz", - "integrity": "sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA==", - "dev": true, - "dependencies": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.6", - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", - "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/parser": { - "version": "7.22.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz", - "integrity": "sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz", - "integrity": "sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz", - "integrity": "sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.22.8", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.8.tgz", - "integrity": "sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.7", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.7", - "@babel/types": "^7.22.5", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz", - "integrity": "sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "node_modules/@braintrust/core": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/@braintrust/core/-/core-0.0.8.tgz", - "integrity": "sha512-jAaT2+GGB0OOoO7SI+S7C+i1kf/FkwfUo0bQuBLqtp37R7xK4KrEWawYN5751LsUxrssp9zXVtznqwzDrL5bhg==" - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.11.tgz", - "integrity": "sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.11.tgz", - "integrity": "sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.11.tgz", - "integrity": "sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.11.tgz", - "integrity": "sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.11.tgz", - "integrity": "sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.11.tgz", - "integrity": "sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.11.tgz", - "integrity": "sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.11.tgz", - "integrity": "sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.11.tgz", - "integrity": "sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.11.tgz", - "integrity": "sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.11.tgz", - "integrity": "sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.11.tgz", - "integrity": "sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.11.tgz", - "integrity": "sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.11.tgz", - "integrity": "sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.11.tgz", - "integrity": "sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.11.tgz", - "integrity": "sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.11.tgz", - "integrity": "sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.11.tgz", - "integrity": "sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.11.tgz", - "integrity": "sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.11.tgz", - "integrity": "sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.11.tgz", - "integrity": "sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.11.tgz", - "integrity": "sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.11.tgz", - "integrity": "sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "dev": true, - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true - }, - "node_modules/@isaacs/cliui/node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/console": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", - "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/core": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", - "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", - "dev": true, - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/reporters": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^29.7.0", - "jest-config": "^29.7.0", - "jest-haste-map": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-resolve-dependencies": "^29.7.0", - "jest-runner": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "jest-watcher": "^29.7.0", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/@jest/environment": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", - "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", - "dev": true, - "dependencies": { - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", - "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", - "dev": true, - "dependencies": { - "expect": "^29.7.0", - "jest-snapshot": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect-utils": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", - "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", - "dev": true, - "dependencies": { - "jest-get-type": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/fake-timers": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", - "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@sinonjs/fake-timers": "^10.0.2", - "@types/node": "*", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/globals": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", - "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/types": "^29.6.3", - "jest-mock": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/reporters": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", - "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", - "dev": true, - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^6.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "slash": "^3.0.0", - "string-length": "^4.0.1", - "strip-ansi": "^6.0.0", - "v8-to-istanbul": "^9.0.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/@jest/reporters/node_modules/istanbul-lib-instrument": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz", - "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^7.5.4" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@jest/reporters/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@jest/reporters/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@jest/reporters/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@jest/schemas": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", - "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", - "dev": true, - "dependencies": { - "@sinclair/typebox": "^0.27.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/source-map": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", - "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.18", - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-result": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", - "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", - "dev": true, - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-sequencer": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", - "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", - "dev": true, - "dependencies": { - "@jest/test-result": "^29.7.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/transform": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", - "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^2.0.0", - "fast-json-stable-stringify": "^2.1.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "write-file-atomic": "^4.0.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/types": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", - "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.6.tgz", - "integrity": "sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.6.tgz", - "integrity": "sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.6.tgz", - "integrity": "sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.6.tgz", - "integrity": "sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.6.tgz", - "integrity": "sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.6.tgz", - "integrity": "sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.6.tgz", - "integrity": "sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.6.tgz", - "integrity": "sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.6.tgz", - "integrity": "sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.6.tgz", - "integrity": "sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.6.tgz", - "integrity": "sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.6.tgz", - "integrity": "sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.6.tgz", - "integrity": "sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@sinclair/typebox": { - "version": "0.27.8", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", - "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", - "dev": true - }, - "node_modules/@sinonjs/commons": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", - "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", - "dev": true, - "dependencies": { - "type-detect": "4.0.8" - } - }, - "node_modules/@sinonjs/fake-timers": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", - "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^3.0.0" - } - }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.8", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", - "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", - "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.20.7" - } - }, - "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "dev": true - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.9", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", - "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", - "dev": true - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "*" - } - }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/jest": { - "version": "29.5.11", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.11.tgz", - "integrity": "sha512-S2mHmYIVe13vrm6q4kN6fLYYAka15ALQki/vgDC3mIukEOx8WJlv0kQPM+d4w8Gp6u0uSdKND04IlTXBv0rwnQ==", - "dev": true, - "dependencies": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" - } - }, - "node_modules/@types/js-levenshtein": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@types/js-levenshtein/-/js-levenshtein-1.1.3.tgz", - "integrity": "sha512-jd+Q+sD20Qfu9e2aEXogiO3vpOC1PYJOUdyN9gvs4Qrvkg4wF43L5OhqrPeokdv8TL0/mXoYfpkcoGZMNN2pkQ==", - "dev": true - }, - "node_modules/@types/js-yaml": { - "version": "4.0.9", - "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.9.tgz", - "integrity": "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==", - "dev": true - }, - "node_modules/@types/mustache": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@types/mustache/-/mustache-4.2.5.tgz", - "integrity": "sha512-PLwiVvTBg59tGFL/8VpcGvqOu3L4OuveNvPi0EYbWchRdEVP++yRUXJPFl+CApKEq13017/4Nf7aQ5lTtHUNsA==", - "dev": true - }, - "node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "node_modules/@types/node-fetch": { - "version": "2.6.6", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.6.tgz", - "integrity": "sha512-95X8guJYhfqiuVVhRFxVQcf4hW/2bCuoPwDasMf/531STFoNoWTT7YDnWdXHEZKqAGUigmpG31r2FE70LwnzJw==", - "dependencies": { - "@types/node": "*", - "form-data": "^4.0.0" - } - }, - "node_modules/@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", - "dev": true - }, - "node_modules/@types/yargs": { - "version": "17.0.24", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", - "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", - "dev": true - }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, - "node_modules/agentkeepalive": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", - "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", - "dependencies": { - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/ajv": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", - "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.4.1" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-sequence-parser": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.1.tgz", - "integrity": "sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==", - "dev": true - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "dev": true - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "node_modules/babel-jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", - "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", - "dev": true, - "dependencies": { - "@jest/transform": "^29.7.0", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.6.3", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-jest-hoist": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", - "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", - "dev": true, - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.1.14", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", - "dev": true, - "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/babel-preset-jest": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", - "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", - "dev": true, - "dependencies": { - "babel-plugin-jest-hoist": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/binary-search": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/binary-search/-/binary-search-1.3.6.tgz", - "integrity": "sha512-nbE1WxOTTrUWIfsfZ4aHGYu5DOuNkbxGokjV6Z2kxfJK3uaAb8zNK1muzOeipoLHZjInT4Br88BHpzevc681xA==" - }, - "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.21.9", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", - "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001503", - "electron-to-chromium": "^1.4.431", - "node-releases": "^2.0.12", - "update-browserslist-db": "^1.0.11" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/bs-logger": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", - "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", - "dev": true, - "dependencies": { - "fast-json-stable-stringify": "2.x" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - "dev": true, - "dependencies": { - "node-int64": "^0.4.0" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/bundle-require": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-4.0.2.tgz", - "integrity": "sha512-jwzPOChofl67PSTW2SGubV9HBQAhhR2i6nskiOThauo9dzwDUgOWQScFVaJkjEfYX+UXiD+LEx8EblQMc2wIag==", - "dev": true, - "dependencies": { - "load-tsconfig": "^0.2.3" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "peerDependencies": { - "esbuild": ">=0.17" - } - }, - "node_modules/cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001517", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz", - "integrity": "sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/cheminfo-types": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/cheminfo-types/-/cheminfo-types-1.7.3.tgz", - "integrity": "sha512-KIKBULfo+XwkSBwMfwjBmZCmY+RXisN2kRc33WikuWBsCQQy5alHWYVrMCO8//lDvy9h1giOzwsC9kgq0OahUw==" - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/ci-info": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", - "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" - } - }, - "node_modules/cjs-module-lexer": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", - "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", - "dev": true - }, - "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/collect-v8-coverage": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", - "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", - "dev": true - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/compute-cosine-similarity": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/compute-cosine-similarity/-/compute-cosine-similarity-1.1.0.tgz", - "integrity": "sha512-FXhNx0ILLjGi9Z9+lglLzM12+0uoTnYkHm7GiadXDAr0HGVLm25OivUS1B/LPkbzzvlcXz/1EvWg9ZYyJSdhTw==", - "dependencies": { - "compute-dot": "^1.1.0", - "compute-l2norm": "^1.1.0", - "validate.io-array": "^1.0.5", - "validate.io-function": "^1.0.2" - } - }, - "node_modules/compute-dot": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/compute-dot/-/compute-dot-1.1.0.tgz", - "integrity": "sha512-L5Ocet4DdMrXboss13K59OK23GXjiSia7+7Ukc7q4Bl+RVpIXK2W9IHMbWDZkh+JUEvJAwOKRaJDiFUa1LTnJg==", - "dependencies": { - "validate.io-array": "^1.0.3", - "validate.io-function": "^1.0.2" - } - }, - "node_modules/compute-l2norm": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/compute-l2norm/-/compute-l2norm-1.1.0.tgz", - "integrity": "sha512-6EHh1Elj90eU28SXi+h2PLnTQvZmkkHWySpoFz+WOlVNLz3DQoC4ISUHSV9n5jMxPHtKGJ01F4uu2PsXBB8sSg==", - "dependencies": { - "validate.io-array": "^1.0.3", - "validate.io-function": "^1.0.2" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "node_modules/create-jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", - "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "prompts": "^2.0.1" - }, - "bin": { - "create-jest": "bin/create-jest.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/d3-array": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-0.7.1.tgz", - "integrity": "sha512-Ifi3fH46Bco+Lb1mOlTxbFEuF3NdyElEVVD+EmoK327I0JzKAP4x57cl+HoxHqFcVd8F/uXLC+wtY3n/R1uO2w==" - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/dedent": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", - "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", - "dev": true, - "peerDependencies": { - "babel-plugin-macros": "^3.1.0" - }, - "peerDependenciesMeta": { - "babel-plugin-macros": { - "optional": true - } - } - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/diff-sequences": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", - "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true - }, - "node_modules/electron-to-chromium": { - "version": "1.4.468", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.468.tgz", - "integrity": "sha512-6M1qyhaJOt7rQtNti1lBA0GwclPH+oKCmsra/hkcWs5INLxfXXD/dtdnaKUYQu/pjOBP/8Osoe4mAcNvvzoFag==", - "dev": true - }, - "node_modules/emittery": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", - "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/esbuild": { - "version": "0.19.11", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.11.tgz", - "integrity": "sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.19.11", - "@esbuild/android-arm": "0.19.11", - "@esbuild/android-arm64": "0.19.11", - "@esbuild/android-x64": "0.19.11", - "@esbuild/darwin-arm64": "0.19.11", - "@esbuild/darwin-x64": "0.19.11", - "@esbuild/freebsd-arm64": "0.19.11", - "@esbuild/freebsd-x64": "0.19.11", - "@esbuild/linux-arm": "0.19.11", - "@esbuild/linux-arm64": "0.19.11", - "@esbuild/linux-ia32": "0.19.11", - "@esbuild/linux-loong64": "0.19.11", - "@esbuild/linux-mips64el": "0.19.11", - "@esbuild/linux-ppc64": "0.19.11", - "@esbuild/linux-riscv64": "0.19.11", - "@esbuild/linux-s390x": "0.19.11", - "@esbuild/linux-x64": "0.19.11", - "@esbuild/netbsd-x64": "0.19.11", - "@esbuild/openbsd-x64": "0.19.11", - "@esbuild/sunos-x64": "0.19.11", - "@esbuild/win32-arm64": "0.19.11", - "@esbuild/win32-ia32": "0.19.11", - "@esbuild/win32-x64": "0.19.11" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/expect": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", - "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", - "dev": true, - "dependencies": { - "@jest/expect-utils": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", - "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - "dev": true, - "dependencies": { - "bser": "2.1.1" - } - }, - "node_modules/fft.js": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/fft.js/-/fft.js-4.0.4.tgz", - "integrity": "sha512-f9c00hphOgeQTlDyavwTtu6RiK8AIFjD6+jvXkNkpeQ7rirK3uFWVpalkoS4LAwbdX7mfZ8aoBfFVQX1Re/8aw==" - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/foreground-child/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/form-data-encoder": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.2.tgz", - "integrity": "sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==" - }, - "node_modules/formdata-node": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", - "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", - "dependencies": { - "node-domexception": "1.0.0", - "web-streams-polyfill": "4.0.0-beta.3" - }, - "engines": { - "node": ">= 12.20" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-tsconfig": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", - "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", - "dev": true, - "dependencies": { - "resolve-pkg-maps": "^1.0.0" - }, - "funding": { - "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/glob/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/glob/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/handlebars": { - "version": "4.7.7", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", - "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "handlebars": "bin/handlebars" - }, - "engines": { - "node": ">=0.4.7" - }, - "optionalDependencies": { - "uglify-js": "^3.1.4" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dependencies": { - "ms": "^2.0.0" - } - }, - "node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/install": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/install/-/install-0.13.0.tgz", - "integrity": "sha512-zDml/jzr2PKU9I8J/xyZBQn8rPCAY//UOYNmR01XwNwyfhEWObo2SWfSl1+0tm1u6PhxLwDnfsT/6jB7OUxqFA==", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/is-any-array": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-any-array/-/is-any-array-2.0.1.tgz", - "integrity": "sha512-UtilS7hLRu++wb/WBAw9bNuP1Eg04Ivn1vERJck8zJthEvXCBEBpGR/33u/xLKWEQf95803oalHrVDptcAvFdQ==" - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", - "dev": true, - "dependencies": { - "hasown": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", - "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", - "dev": true, - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", - "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", - "dev": true, - "dependencies": { - "@jest/core": "^29.7.0", - "@jest/types": "^29.6.3", - "import-local": "^3.0.2", - "jest-cli": "^29.7.0" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/jest-changed-files": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", - "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", - "dev": true, - "dependencies": { - "execa": "^5.0.0", - "jest-util": "^29.7.0", - "p-limit": "^3.1.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-circus": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", - "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^1.0.0", - "is-generator-fn": "^2.0.0", - "jest-each": "^29.7.0", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "p-limit": "^3.1.0", - "pretty-format": "^29.7.0", - "pure-rand": "^6.0.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-cli": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", - "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", - "dev": true, - "dependencies": { - "@jest/core": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "create-jest": "^29.7.0", - "exit": "^0.1.2", - "import-local": "^3.0.2", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "yargs": "^17.3.1" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/jest-config": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", - "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/test-sequencer": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-jest": "^29.7.0", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-circus": "^29.7.0", - "jest-environment-node": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-runner": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@types/node": "*", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "ts-node": { - "optional": true - } - } - }, - "node_modules/jest-diff": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", - "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^29.6.3", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-docblock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", - "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", - "dev": true, - "dependencies": { - "detect-newline": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-each": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", - "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "jest-util": "^29.7.0", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-environment-node": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", - "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-get-type": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", - "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-haste-map": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", - "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/graceful-fs": "^4.1.3", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "micromatch": "^4.0.4", - "walker": "^1.0.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } - }, - "node_modules/jest-leak-detector": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", - "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", - "dev": true, - "dependencies": { - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-matcher-utils": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", - "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^29.7.0", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", - "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.6.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-mock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", - "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "dev": true, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } - } - }, - "node_modules/jest-regex-util": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", - "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-resolve": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", - "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "resolve": "^1.20.0", - "resolve.exports": "^2.0.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-resolve-dependencies": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", - "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", - "dev": true, - "dependencies": { - "jest-regex-util": "^29.6.3", - "jest-snapshot": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-runner": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", - "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", - "dev": true, - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/environment": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^29.7.0", - "jest-environment-node": "^29.7.0", - "jest-haste-map": "^29.7.0", - "jest-leak-detector": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-resolve": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-util": "^29.7.0", - "jest-watcher": "^29.7.0", - "jest-worker": "^29.7.0", - "p-limit": "^3.1.0", - "source-map-support": "0.5.13" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-runtime": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", - "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/globals": "^29.7.0", - "@jest/source-map": "^29.6.3", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-snapshot": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", - "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-jsx": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/types": "^7.3.3", - "@jest/expect-utils": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^29.7.0", - "graceful-fs": "^4.2.9", - "jest-diff": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "natural-compare": "^1.4.0", - "pretty-format": "^29.7.0", - "semver": "^7.5.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/jest-text-transformer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/jest-text-transformer/-/jest-text-transformer-1.0.4.tgz", - "integrity": "sha512-Qi3FpWP6EFxZimSD05Zlmd/WER8l/3agVG7e5voHgdnM2vTs45sxS/i8qMWMO/dBkoxajndrGXfJTvhEENnjqw==", - "dev": true, - "dependencies": { - "uuid": "^3.2.1" - }, - "engines": { - "node": ">=9.5.0", - "npm": ">=5.8.0" - } - }, - "node_modules/jest-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", - "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-validate": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", - "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "leven": "^3.1.0", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/jest-watcher": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", - "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", - "dev": true, - "dependencies": { - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "jest-util": "^29.7.0", - "string-length": "^4.0.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-worker": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", - "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", - "dev": true, - "dependencies": { - "@types/node": "*", - "jest-util": "^29.7.0", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/joycon": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz", - "integrity": "sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/js-levenshtein": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", - "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonc-parser": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz", - "integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==", - "dev": true - }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/lilconfig": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.0.0.tgz", - "integrity": "sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==", - "dev": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/linear-sum-assignment": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/linear-sum-assignment/-/linear-sum-assignment-1.0.7.tgz", - "integrity": "sha512-jfLoSGwZNyjfY8eK4ayhjfcIu3BfWvP6sWieYzYI3AWldwXVoWEz1gtrQL10v/8YltYLBunqNjeVFXPMUs+MJg==", - "dependencies": { - "cheminfo-types": "^1.7.3", - "install": "^0.13.0", - "ml-matrix": "^6.11.0", - "ml-spectra-processing": "^14.2.2" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/load-tsconfig": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/load-tsconfig/-/load-tsconfig-0.2.5.tgz", - "integrity": "sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - "dev": true - }, - "node_modules/lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", - "dev": true - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/lunr": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", - "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", - "dev": true - }, - "node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "dev": true, - "dependencies": { - "semver": "^7.5.3" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "dev": true, - "dependencies": { - "tmpl": "1.0.5" - } - }, - "node_modules/marked": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", - "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", - "dev": true, - "bin": { - "marked": "bin/marked.js" - }, - "engines": { - "node": ">= 12" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/ml-array-max": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/ml-array-max/-/ml-array-max-1.2.4.tgz", - "integrity": "sha512-BlEeg80jI0tW6WaPyGxf5Sa4sqvcyY6lbSn5Vcv44lp1I2GR6AWojfUvLnGTNsIXrZ8uqWmo8VcG1WpkI2ONMQ==", - "dependencies": { - "is-any-array": "^2.0.0" - } - }, - "node_modules/ml-array-min": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/ml-array-min/-/ml-array-min-1.2.3.tgz", - "integrity": "sha512-VcZ5f3VZ1iihtrGvgfh/q0XlMobG6GQ8FsNyQXD3T+IlstDv85g8kfV0xUG1QPRO/t21aukaJowDzMTc7j5V6Q==", - "dependencies": { - "is-any-array": "^2.0.0" - } - }, - "node_modules/ml-array-rescale": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/ml-array-rescale/-/ml-array-rescale-1.3.7.tgz", - "integrity": "sha512-48NGChTouvEo9KBctDfHC3udWnQKNKEWN0ziELvY3KG25GR5cA8K8wNVzracsqSW1QEkAXjTNx+ycgAv06/1mQ==", - "dependencies": { - "is-any-array": "^2.0.0", - "ml-array-max": "^1.2.4", - "ml-array-min": "^1.2.3" - } - }, - "node_modules/ml-matrix": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/ml-matrix/-/ml-matrix-6.11.0.tgz", - "integrity": "sha512-7jr9NmFRkaUxbKslfRu3aZOjJd2LkSitCGv+QH9PF0eJoEG7jIpjXra1Vw8/kgao8+kHCSsJONG6vfWmXQ+/Eg==", - "dependencies": { - "is-any-array": "^2.0.1", - "ml-array-rescale": "^1.3.7" - } - }, - "node_modules/ml-spectra-processing": { - "version": "14.3.0", - "resolved": "https://registry.npmjs.org/ml-spectra-processing/-/ml-spectra-processing-14.3.0.tgz", - "integrity": "sha512-kY+vP8LMT/IXdyjltm1GG6lsm+FgshYuQkDbTAV6V0anO9VoBBDdJYiJYb4UmAS1AO8GTK5HGr8StODkas39pA==", - "dependencies": { - "binary-search": "^1.3.6", - "cheminfo-types": "^1.7.3", - "fft.js": "^4.0.4", - "is-any-array": "^2.0.1", - "ml-matrix": "^6.11.0", - "ml-xsadd": "^2.0.0", - "spline-interpolator": "^1.0.0" - } - }, - "node_modules/ml-xsadd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ml-xsadd/-/ml-xsadd-2.0.0.tgz", - "integrity": "sha512-VoAYUqmPRmzKbbqRejjqceGFp3VF81Qe8XXFGU0UXLxB7Mf4GGvyGq5Qn3k4AiQgDEV6WzobqlPOd+j0+m6IrA==" - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/mustache": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz", - "integrity": "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==", - "bin": { - "mustache": "bin/mustache" - } - }, - "node_modules/mz": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "dev": true, - "dependencies": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "node_modules/node-domexception": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", - "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/jimmywarting" - }, - { - "type": "github", - "url": "https://paypal.me/jimmywarting" - } - ], - "engines": { - "node": ">=10.5.0" - } - }, - "node_modules/node-fetch": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true - }, - "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", - "dev": true - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/openai": { - "version": "4.47.1", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.47.1.tgz", - "integrity": "sha512-WWSxhC/69ZhYWxH/OBsLEirIjUcfpQ5+ihkXKp06hmeYXgBBIUCa9IptMzYx6NdkiOCsSGYCnTIsxaic3AjRCQ==", - "license": "Apache-2.0", - "dependencies": { - "@types/node": "^18.11.18", - "@types/node-fetch": "^2.6.4", - "abort-controller": "^3.0.0", - "agentkeepalive": "^4.2.1", - "form-data-encoder": "1.7.2", - "formdata-node": "^4.3.2", - "node-fetch": "^2.6.7", - "web-streams-polyfill": "^3.2.1" - }, - "bin": { - "openai": "bin/cli" - } - }, - "node_modules/openai/node_modules/@types/node": { - "version": "18.18.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.5.tgz", - "integrity": "sha512-4slmbtwV59ZxitY4ixUZdy1uRLf9eSIvBWPQxNjhHYWEtn0FryfKpyS2cvADYXTayWdKEIsJengncrVvkI4I6A==" - }, - "node_modules/openai/node_modules/web-streams-polyfill": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.2.tgz", - "integrity": "sha512-3pRGuxRF5gpuZc0W+EpwQRmCD7gRqcDOMt688KmdlDAgAyaB1XlN0zq2njfDNm44XVdIouE7pZ6GzbdyH47uIQ==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-locate/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", - "dev": true, - "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/postcss-load-config": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", - "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "lilconfig": "^3.0.0", - "yaml": "^2.3.4" - }, - "engines": { - "node": ">= 14" - }, - "peerDependencies": { - "postcss": ">=8.0.9", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - }, - "ts-node": { - "optional": true - } - } - }, - "node_modules/pretty-format": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", - "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "dev": true, - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/pure-rand": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz", - "integrity": "sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/dubzzz" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fast-check" - } - ] - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", - "dev": true - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "dev": true, - "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-pkg-maps": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", - "dev": true, - "funding": { - "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" - } - }, - "node_modules/resolve.exports": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", - "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rollup": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.6.tgz", - "integrity": "sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==", - "dev": true, - "dependencies": { - "@types/estree": "1.0.5" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.9.6", - "@rollup/rollup-android-arm64": "4.9.6", - "@rollup/rollup-darwin-arm64": "4.9.6", - "@rollup/rollup-darwin-x64": "4.9.6", - "@rollup/rollup-linux-arm-gnueabihf": "4.9.6", - "@rollup/rollup-linux-arm64-gnu": "4.9.6", - "@rollup/rollup-linux-arm64-musl": "4.9.6", - "@rollup/rollup-linux-riscv64-gnu": "4.9.6", - "@rollup/rollup-linux-x64-gnu": "4.9.6", - "@rollup/rollup-linux-x64-musl": "4.9.6", - "@rollup/rollup-win32-arm64-msvc": "4.9.6", - "@rollup/rollup-win32-ia32-msvc": "4.9.6", - "@rollup/rollup-win32-x64-msvc": "4.9.6", - "fsevents": "~2.3.2" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/shiki": { - "version": "0.14.7", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.7.tgz", - "integrity": "sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==", - "dev": true, - "dependencies": { - "ansi-sequence-parser": "^1.1.0", - "jsonc-parser": "^3.2.0", - "vscode-oniguruma": "^1.7.0", - "vscode-textmate": "^8.0.0" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/spline-interpolator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/spline-interpolator/-/spline-interpolator-1.0.0.tgz", - "integrity": "sha512-s8lowgsWE5wjHGEsk/4VADp7xAHw+pNy3OGp96fYjVTwLSx/83+BBmTFP2wZDRM0kj45q8zSyOV5fUcGn4hLEw==", - "dependencies": { - "d3-array": "^0.7.1" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", - "dev": true, - "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/sucrase": { - "version": "3.35.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", - "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.2", - "commander": "^4.0.0", - "glob": "^10.3.10", - "lines-and-columns": "^1.1.6", - "mz": "^2.7.0", - "pirates": "^4.0.1", - "ts-interface-checker": "^0.1.9" - }, - "bin": { - "sucrase": "bin/sucrase", - "sucrase-node": "bin/sucrase-node" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/sucrase/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/test-exclude/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/test-exclude/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/thenify": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "dev": true, - "dependencies": { - "any-promise": "^1.0.0" - } - }, - "node_modules/thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", - "dev": true, - "dependencies": { - "thenify": ">= 3.1.0 < 4" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "node_modules/tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true, - "bin": { - "tree-kill": "cli.js" - } - }, - "node_modules/ts-interface-checker": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", - "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", - "dev": true - }, - "node_modules/ts-jest": { - "version": "29.1.1", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", - "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", - "dev": true, - "dependencies": { - "bs-logger": "0.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^29.0.0", - "json5": "^2.2.3", - "lodash.memoize": "4.x", - "make-error": "1.x", - "semver": "^7.5.3", - "yargs-parser": "^21.0.1" - }, - "bin": { - "ts-jest": "cli.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": ">=7.0.0-beta.0 <8", - "@jest/types": "^29.0.0", - "babel-jest": "^29.0.0", - "jest": "^29.0.0", - "typescript": ">=4.3 <6" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "@jest/types": { - "optional": true - }, - "babel-jest": { - "optional": true - }, - "esbuild": { - "optional": true - } - } - }, - "node_modules/ts-jest/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ts-jest/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ts-jest/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/tsup": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.0.1.tgz", - "integrity": "sha512-hvW7gUSG96j53ZTSlT4j/KL0q1Q2l6TqGBFc6/mu/L46IoNWqLLUzLRLP1R8Q7xrJTmkDxxDoojV5uCVs1sVOg==", - "dev": true, - "dependencies": { - "bundle-require": "^4.0.0", - "cac": "^6.7.12", - "chokidar": "^3.5.1", - "debug": "^4.3.1", - "esbuild": "^0.19.2", - "execa": "^5.0.0", - "globby": "^11.0.3", - "joycon": "^3.0.1", - "postcss-load-config": "^4.0.1", - "resolve-from": "^5.0.0", - "rollup": "^4.0.2", - "source-map": "0.8.0-beta.0", - "sucrase": "^3.20.3", - "tree-kill": "^1.2.2" - }, - "bin": { - "tsup": "dist/cli-default.js", - "tsup-node": "dist/cli-node.js" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@microsoft/api-extractor": "^7.36.0", - "@swc/core": "^1", - "postcss": "^8.4.12", - "typescript": ">=4.5.0" - }, - "peerDependenciesMeta": { - "@microsoft/api-extractor": { - "optional": true - }, - "@swc/core": { - "optional": true - }, - "postcss": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "node_modules/tsup/node_modules/source-map": { - "version": "0.8.0-beta.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", - "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", - "dev": true, - "dependencies": { - "whatwg-url": "^7.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/tsup/node_modules/tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/tsup/node_modules/webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true - }, - "node_modules/tsup/node_modules/whatwg-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", - "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", - "dev": true, - "dependencies": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "node_modules/tsx": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-3.14.0.tgz", - "integrity": "sha512-xHtFaKtHxM9LOklMmJdI3BEnQq/D5F73Of2E1GDrITi9sgoVkvIsrQUTY1G8FlmGtA+awCI4EBlTRRYxkL2sRg==", - "dev": true, - "dependencies": { - "esbuild": "~0.18.20", - "get-tsconfig": "^4.7.2", - "source-map-support": "^0.5.21" - }, - "bin": { - "tsx": "dist/cli.mjs" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - } - }, - "node_modules/tsx/node_modules/@esbuild/android-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", - "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/android-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", - "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/android-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", - "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", - "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/darwin-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", - "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", - "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/freebsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", - "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", - "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", - "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", - "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-loong64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", - "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-mips64el": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", - "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-ppc64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", - "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-riscv64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", - "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-s390x": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", - "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/linux-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", - "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/netbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", - "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/openbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", - "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/sunos-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", - "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/win32-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", - "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/win32-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", - "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/@esbuild/win32-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", - "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/tsx/node_modules/esbuild": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", - "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" - } - }, - "node_modules/tsx/node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typedoc": { - "version": "0.25.7", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.25.7.tgz", - "integrity": "sha512-m6A6JjQRg39p2ZVRIN3NKXgrN8vzlHhOS+r9ymUYtcUP/TIQPvWSq7YgE5ZjASfv5Vd5BW5xrir6Gm2XNNcOow==", - "dev": true, - "dependencies": { - "lunr": "^2.3.9", - "marked": "^4.3.0", - "minimatch": "^9.0.3", - "shiki": "^0.14.7" - }, - "bin": { - "typedoc": "bin/typedoc" - }, - "engines": { - "node": ">= 16" - }, - "peerDependencies": { - "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x" - } - }, - "node_modules/typedoc-plugin-markdown": { - "version": "3.17.1", - "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.17.1.tgz", - "integrity": "sha512-QzdU3fj0Kzw2XSdoL15ExLASt2WPqD7FbLeaqwT70+XjKyTshBnUlQA5nNREO1C2P8Uen0CDjsBLMsCQ+zd0lw==", - "dev": true, - "dependencies": { - "handlebars": "^4.7.7" - }, - "peerDependencies": { - "typedoc": ">=0.24.0" - } - }, - "node_modules/typescript": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", - "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/uglify-js": { - "version": "3.17.4", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", - "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", - "dev": true, - "optional": true, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" - }, - "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/v8-to-istanbul": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", - "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.12", - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^2.0.0" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/validate.io-array": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz", - "integrity": "sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==" - }, - "node_modules/validate.io-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/validate.io-function/-/validate.io-function-1.0.2.tgz", - "integrity": "sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==" - }, - "node_modules/vscode-oniguruma": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz", - "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==", - "dev": true - }, - "node_modules/vscode-textmate": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz", - "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==", - "dev": true - }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "dev": true, - "dependencies": { - "makeerror": "1.0.12" - } - }, - "node_modules/web-streams-polyfill": { - "version": "4.0.0-beta.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", - "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==", - "engines": { - "node": ">= 14" - } - }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", - "dev": true - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "node_modules/yaml": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", - "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==", - "dev": true, - "engines": { - "node": ">= 14" - } - }, - "node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - "dev": true, - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zod": { - "version": "3.22.4", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz", - "integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==", - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } - }, - "node_modules/zod-to-json-schema": { - "version": "3.22.5", - "resolved": "https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.22.5.tgz", - "integrity": "sha512-+akaPo6a0zpVCCseDed504KBJUQpEW5QZw7RMneNmKw+fGaML1Z9tUNLnHHAC8x6dzVRO1eB2oEMyZRnuBZg7Q==", - "peerDependencies": { - "zod": "^3.22.4" - } - } - } -} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..3ba1a90 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,6353 @@ +lockfileVersion: "6.0" + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + .: + dependencies: + "@braintrust/core": + specifier: ^0.0.8 + version: 0.0.8 + ajv: + specifier: ^8.13.0 + version: 8.16.0 + compute-cosine-similarity: + specifier: ^1.1.0 + version: 1.1.0 + js-levenshtein: + specifier: ^1.1.6 + version: 1.1.6 + js-yaml: + specifier: ^4.1.0 + version: 4.1.0 + linear-sum-assignment: + specifier: ^1.0.7 + version: 1.0.7 + mustache: + specifier: ^4.2.0 + version: 4.2.0 + openai: + specifier: 4.47.1 + version: 4.47.1 + zod: + specifier: ^3.22.4 + version: 3.23.8 + zod-to-json-schema: + specifier: ^3.22.5 + version: 3.23.1(zod@3.23.8) + devDependencies: + "@types/jest": + specifier: ^29.5.11 + version: 29.5.12 + "@types/js-levenshtein": + specifier: ^1.1.3 + version: 1.1.3 + "@types/js-yaml": + specifier: ^4.0.9 + version: 4.0.9 + "@types/mustache": + specifier: ^4.2.5 + version: 4.2.5 + "@types/node": + specifier: ^20.10.5 + version: 20.14.10 + jest: + specifier: ^29.7.0 + version: 29.7.0(@types/node@20.14.10) + jest-text-transformer: + specifier: ^1.0.4 + version: 1.0.4 + ts-jest: + specifier: ^29.1.1 + version: 29.1.5(@babel/core@7.24.7)(esbuild@0.21.5)(jest@29.7.0)(typescript@5.5.3) + tsup: + specifier: ^8.0.1 + version: 8.1.0(typescript@5.5.3) + tsx: + specifier: ^3.14.0 + version: 3.14.0 + typedoc: + specifier: ^0.25.4 + version: 0.25.13(typescript@5.5.3) + typedoc-plugin-markdown: + specifier: ^3.17.1 + version: 3.17.1(typedoc@0.25.13) + typescript: + specifier: ^5.3.3 + version: 5.5.3 + + evals: + dependencies: + autoevals: + specifier: workspace:* + version: link:.. + braintrust: + specifier: ^0.0.140 + version: 0.0.140 + zod: + specifier: ^3.22.4 + version: 3.23.8 + devDependencies: + "@types/node": + specifier: ^20.10.5 + version: 20.14.10 + duckdb: + specifier: ^1.0.0 + version: 1.0.0 + tsx: + specifier: ^3.14.0 + version: 3.14.0 + +packages: + /@ai-sdk/provider@0.0.6: + resolution: + { + integrity: sha512-kiPqIsSnUimckaUn87WepxfjPNdy8SXlPP7P6yWuG3e1NmyFHcyuH6EBBZxXLmu0oZtkb+QEeP3UDWGSc+wwKQ==, + } + engines: { node: ">=18" } + dependencies: + json-schema: 0.4.0 + dev: false + + /@ampproject/remapping@2.3.0: + resolution: + { + integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==, + } + engines: { node: ">=6.0.0" } + dependencies: + "@jridgewell/gen-mapping": 0.3.5 + "@jridgewell/trace-mapping": 0.3.25 + dev: true + + /@asteasolutions/zod-to-openapi@6.4.0(zod@3.23.8): + resolution: + { + integrity: sha512-8cxfF7AHHx2PqnN4Cd8/O8CBu/nVYJP9DpnfVLW3BFb66VJDnqI/CczZnkqMc3SNh6J9GiX7JbJ5T4BSP4HZ2Q==, + } + peerDependencies: + zod: ^3.20.2 + dependencies: + openapi3-ts: 4.3.3 + zod: 3.23.8 + dev: false + + /@babel/code-frame@7.24.7: + resolution: + { + integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/highlight": 7.24.7 + picocolors: 1.0.1 + dev: true + + /@babel/compat-data@7.24.7: + resolution: + { + integrity: sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==, + } + engines: { node: ">=6.9.0" } + dev: true + + /@babel/core@7.24.7: + resolution: + { + integrity: sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@ampproject/remapping": 2.3.0 + "@babel/code-frame": 7.24.7 + "@babel/generator": 7.24.7 + "@babel/helper-compilation-targets": 7.24.7 + "@babel/helper-module-transforms": 7.24.7(@babel/core@7.24.7) + "@babel/helpers": 7.24.7 + "@babel/parser": 7.24.7 + "@babel/template": 7.24.7 + "@babel/traverse": 7.24.7 + "@babel/types": 7.24.7 + convert-source-map: 2.0.0 + debug: 4.3.5 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/generator@7.24.7: + resolution: + { + integrity: sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/types": 7.24.7 + "@jridgewell/gen-mapping": 0.3.5 + "@jridgewell/trace-mapping": 0.3.25 + jsesc: 2.5.2 + dev: true + + /@babel/helper-compilation-targets@7.24.7: + resolution: + { + integrity: sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/compat-data": 7.24.7 + "@babel/helper-validator-option": 7.24.7 + browserslist: 4.23.1 + lru-cache: 5.1.1 + semver: 6.3.1 + dev: true + + /@babel/helper-environment-visitor@7.24.7: + resolution: + { + integrity: sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/types": 7.24.7 + dev: true + + /@babel/helper-function-name@7.24.7: + resolution: + { + integrity: sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/template": 7.24.7 + "@babel/types": 7.24.7 + dev: true + + /@babel/helper-hoist-variables@7.24.7: + resolution: + { + integrity: sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/types": 7.24.7 + dev: true + + /@babel/helper-module-imports@7.24.7: + resolution: + { + integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/traverse": 7.24.7 + "@babel/types": 7.24.7 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/helper-module-transforms@7.24.7(@babel/core@7.24.7): + resolution: + { + integrity: sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==, + } + engines: { node: ">=6.9.0" } + peerDependencies: + "@babel/core": ^7.0.0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-environment-visitor": 7.24.7 + "@babel/helper-module-imports": 7.24.7 + "@babel/helper-simple-access": 7.24.7 + "@babel/helper-split-export-declaration": 7.24.7 + "@babel/helper-validator-identifier": 7.24.7 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/helper-plugin-utils@7.24.7: + resolution: + { + integrity: sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==, + } + engines: { node: ">=6.9.0" } + dev: true + + /@babel/helper-simple-access@7.24.7: + resolution: + { + integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/traverse": 7.24.7 + "@babel/types": 7.24.7 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/helper-split-export-declaration@7.24.7: + resolution: + { + integrity: sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/types": 7.24.7 + dev: true + + /@babel/helper-string-parser@7.24.7: + resolution: + { + integrity: sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==, + } + engines: { node: ">=6.9.0" } + dev: true + + /@babel/helper-validator-identifier@7.24.7: + resolution: + { + integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==, + } + engines: { node: ">=6.9.0" } + dev: true + + /@babel/helper-validator-option@7.24.7: + resolution: + { + integrity: sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==, + } + engines: { node: ">=6.9.0" } + dev: true + + /@babel/helpers@7.24.7: + resolution: + { + integrity: sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/template": 7.24.7 + "@babel/types": 7.24.7 + dev: true + + /@babel/highlight@7.24.7: + resolution: + { + integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/helper-validator-identifier": 7.24.7 + chalk: 2.4.2 + js-tokens: 4.0.0 + picocolors: 1.0.1 + dev: true + + /@babel/parser@7.24.7: + resolution: + { + integrity: sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==, + } + engines: { node: ">=6.0.0" } + hasBin: true + dependencies: + "@babel/types": 7.24.7 + dev: true + + /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.7): + resolution: + { + integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==, + } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.24.7): + resolution: + { + integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==, + } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.7): + resolution: + { + integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==, + } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.7): + resolution: + { + integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==, + } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.7): + resolution: + { + integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==, + } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.24.7): + resolution: + { + integrity: sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==, + } + engines: { node: ">=6.9.0" } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.7): + resolution: + { + integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==, + } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.7): + resolution: + { + integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==, + } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.7): + resolution: + { + integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==, + } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.7): + resolution: + { + integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==, + } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.7): + resolution: + { + integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==, + } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.7): + resolution: + { + integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==, + } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.7): + resolution: + { + integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==, + } + engines: { node: ">=6.9.0" } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/plugin-syntax-typescript@7.24.7(@babel/core@7.24.7): + resolution: + { + integrity: sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA==, + } + engines: { node: ">=6.9.0" } + peerDependencies: + "@babel/core": ^7.0.0-0 + dependencies: + "@babel/core": 7.24.7 + "@babel/helper-plugin-utils": 7.24.7 + dev: true + + /@babel/template@7.24.7: + resolution: + { + integrity: sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/code-frame": 7.24.7 + "@babel/parser": 7.24.7 + "@babel/types": 7.24.7 + dev: true + + /@babel/traverse@7.24.7: + resolution: + { + integrity: sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/code-frame": 7.24.7 + "@babel/generator": 7.24.7 + "@babel/helper-environment-visitor": 7.24.7 + "@babel/helper-function-name": 7.24.7 + "@babel/helper-hoist-variables": 7.24.7 + "@babel/helper-split-export-declaration": 7.24.7 + "@babel/parser": 7.24.7 + "@babel/types": 7.24.7 + debug: 4.3.5 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/types@7.24.7: + resolution: + { + integrity: sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==, + } + engines: { node: ">=6.9.0" } + dependencies: + "@babel/helper-string-parser": 7.24.7 + "@babel/helper-validator-identifier": 7.24.7 + to-fast-properties: 2.0.0 + dev: true + + /@bcoe/v8-coverage@0.2.3: + resolution: + { + integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==, + } + dev: true + + /@braintrust/core@0.0.44: + resolution: + { + integrity: sha512-5aA7A4i9TCt3lr6u/ogpRyZztghVEOuoTnP6nHoUaqvVo9AQHPgh2FarxsVB6yYnbWoV28o5AizO/kZseE8aBA==, + } + dependencies: + "@asteasolutions/zod-to-openapi": 6.4.0(zod@3.23.8) + uuid: 9.0.1 + zod: 3.23.8 + dev: false + + /@braintrust/core@0.0.8: + resolution: + { + integrity: sha512-jAaT2+GGB0OOoO7SI+S7C+i1kf/FkwfUo0bQuBLqtp37R7xK4KrEWawYN5751LsUxrssp9zXVtznqwzDrL5bhg==, + } + dev: false + + /@esbuild/aix-ppc64@0.21.5: + resolution: + { + integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==, + } + engines: { node: ">=12" } + cpu: [ppc64] + os: [aix] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm64@0.18.20: + resolution: + { + integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==, + } + engines: { node: ">=12" } + cpu: [arm64] + os: [android] + requiresBuild: true + optional: true + + /@esbuild/android-arm64@0.21.5: + resolution: + { + integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==, + } + engines: { node: ">=12" } + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm@0.18.20: + resolution: + { + integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==, + } + engines: { node: ">=12" } + cpu: [arm] + os: [android] + requiresBuild: true + optional: true + + /@esbuild/android-arm@0.21.5: + resolution: + { + integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==, + } + engines: { node: ">=12" } + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-x64@0.18.20: + resolution: + { + integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [android] + requiresBuild: true + optional: true + + /@esbuild/android-x64@0.21.5: + resolution: + { + integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64@0.18.20: + resolution: + { + integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==, + } + engines: { node: ">=12" } + cpu: [arm64] + os: [darwin] + requiresBuild: true + optional: true + + /@esbuild/darwin-arm64@0.21.5: + resolution: + { + integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==, + } + engines: { node: ">=12" } + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-x64@0.18.20: + resolution: + { + integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [darwin] + requiresBuild: true + optional: true + + /@esbuild/darwin-x64@0.21.5: + resolution: + { + integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-arm64@0.18.20: + resolution: + { + integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==, + } + engines: { node: ">=12" } + cpu: [arm64] + os: [freebsd] + requiresBuild: true + optional: true + + /@esbuild/freebsd-arm64@0.21.5: + resolution: + { + integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==, + } + engines: { node: ">=12" } + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64@0.18.20: + resolution: + { + integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [freebsd] + requiresBuild: true + optional: true + + /@esbuild/freebsd-x64@0.21.5: + resolution: + { + integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm64@0.18.20: + resolution: + { + integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==, + } + engines: { node: ">=12" } + cpu: [arm64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-arm64@0.21.5: + resolution: + { + integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==, + } + engines: { node: ">=12" } + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm@0.18.20: + resolution: + { + integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==, + } + engines: { node: ">=12" } + cpu: [arm] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-arm@0.21.5: + resolution: + { + integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==, + } + engines: { node: ">=12" } + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ia32@0.18.20: + resolution: + { + integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==, + } + engines: { node: ">=12" } + cpu: [ia32] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-ia32@0.21.5: + resolution: + { + integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==, + } + engines: { node: ">=12" } + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-loong64@0.18.20: + resolution: + { + integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==, + } + engines: { node: ">=12" } + cpu: [loong64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-loong64@0.21.5: + resolution: + { + integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==, + } + engines: { node: ">=12" } + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el@0.18.20: + resolution: + { + integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==, + } + engines: { node: ">=12" } + cpu: [mips64el] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-mips64el@0.21.5: + resolution: + { + integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==, + } + engines: { node: ">=12" } + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ppc64@0.18.20: + resolution: + { + integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==, + } + engines: { node: ">=12" } + cpu: [ppc64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-ppc64@0.21.5: + resolution: + { + integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==, + } + engines: { node: ">=12" } + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-riscv64@0.18.20: + resolution: + { + integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==, + } + engines: { node: ">=12" } + cpu: [riscv64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-riscv64@0.21.5: + resolution: + { + integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==, + } + engines: { node: ">=12" } + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-s390x@0.18.20: + resolution: + { + integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==, + } + engines: { node: ">=12" } + cpu: [s390x] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-s390x@0.21.5: + resolution: + { + integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==, + } + engines: { node: ">=12" } + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-x64@0.18.20: + resolution: + { + integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-x64@0.21.5: + resolution: + { + integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64@0.18.20: + resolution: + { + integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [netbsd] + requiresBuild: true + optional: true + + /@esbuild/netbsd-x64@0.21.5: + resolution: + { + integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-x64@0.18.20: + resolution: + { + integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [openbsd] + requiresBuild: true + optional: true + + /@esbuild/openbsd-x64@0.21.5: + resolution: + { + integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64@0.18.20: + resolution: + { + integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [sunos] + requiresBuild: true + optional: true + + /@esbuild/sunos-x64@0.21.5: + resolution: + { + integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-arm64@0.18.20: + resolution: + { + integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==, + } + engines: { node: ">=12" } + cpu: [arm64] + os: [win32] + requiresBuild: true + optional: true + + /@esbuild/win32-arm64@0.21.5: + resolution: + { + integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==, + } + engines: { node: ">=12" } + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-ia32@0.18.20: + resolution: + { + integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==, + } + engines: { node: ">=12" } + cpu: [ia32] + os: [win32] + requiresBuild: true + optional: true + + /@esbuild/win32-ia32@0.21.5: + resolution: + { + integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==, + } + engines: { node: ">=12" } + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-x64@0.18.20: + resolution: + { + integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [win32] + requiresBuild: true + optional: true + + /@esbuild/win32-x64@0.21.5: + resolution: + { + integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==, + } + engines: { node: ">=12" } + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@gar/promisify@1.1.3: + resolution: + { + integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==, + } + dev: true + + /@isaacs/cliui@8.0.2: + resolution: + { + integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==, + } + engines: { node: ">=12" } + dependencies: + string-width: 5.1.2 + string-width-cjs: /string-width@4.2.3 + strip-ansi: 7.1.0 + strip-ansi-cjs: /strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: /wrap-ansi@7.0.0 + dev: true + + /@istanbuljs/load-nyc-config@1.1.0: + resolution: + { + integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==, + } + engines: { node: ">=8" } + dependencies: + camelcase: 5.3.1 + find-up: 4.1.0 + get-package-type: 0.1.0 + js-yaml: 3.14.1 + resolve-from: 5.0.0 + dev: true + + /@istanbuljs/schema@0.1.3: + resolution: + { + integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==, + } + engines: { node: ">=8" } + dev: true + + /@jest/console@29.7.0: + resolution: + { + integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/types": 29.6.3 + "@types/node": 20.14.10 + chalk: 4.1.2 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + slash: 3.0.0 + dev: true + + /@jest/core@29.7.0: + resolution: + { + integrity: sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + dependencies: + "@jest/console": 29.7.0 + "@jest/reporters": 29.7.0 + "@jest/test-result": 29.7.0 + "@jest/transform": 29.7.0 + "@jest/types": 29.6.3 + "@types/node": 20.14.10 + ansi-escapes: 4.3.2 + chalk: 4.1.2 + ci-info: 3.9.0 + exit: 0.1.2 + graceful-fs: 4.2.11 + jest-changed-files: 29.7.0 + jest-config: 29.7.0(@types/node@20.14.10) + jest-haste-map: 29.7.0 + jest-message-util: 29.7.0 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-resolve-dependencies: 29.7.0 + jest-runner: 29.7.0 + jest-runtime: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + jest-watcher: 29.7.0 + micromatch: 4.0.7 + pretty-format: 29.7.0 + slash: 3.0.0 + strip-ansi: 6.0.1 + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + - ts-node + dev: true + + /@jest/environment@29.7.0: + resolution: + { + integrity: sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/fake-timers": 29.7.0 + "@jest/types": 29.6.3 + "@types/node": 20.14.10 + jest-mock: 29.7.0 + dev: true + + /@jest/expect-utils@29.7.0: + resolution: + { + integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + jest-get-type: 29.6.3 + dev: true + + /@jest/expect@29.7.0: + resolution: + { + integrity: sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + expect: 29.7.0 + jest-snapshot: 29.7.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@jest/fake-timers@29.7.0: + resolution: + { + integrity: sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/types": 29.6.3 + "@sinonjs/fake-timers": 10.3.0 + "@types/node": 20.14.10 + jest-message-util: 29.7.0 + jest-mock: 29.7.0 + jest-util: 29.7.0 + dev: true + + /@jest/globals@29.7.0: + resolution: + { + integrity: sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/environment": 29.7.0 + "@jest/expect": 29.7.0 + "@jest/types": 29.6.3 + jest-mock: 29.7.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@jest/reporters@29.7.0: + resolution: + { + integrity: sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + dependencies: + "@bcoe/v8-coverage": 0.2.3 + "@jest/console": 29.7.0 + "@jest/test-result": 29.7.0 + "@jest/transform": 29.7.0 + "@jest/types": 29.6.3 + "@jridgewell/trace-mapping": 0.3.25 + "@types/node": 20.14.10 + chalk: 4.1.2 + collect-v8-coverage: 1.0.2 + exit: 0.1.2 + glob: 7.2.3 + graceful-fs: 4.2.11 + istanbul-lib-coverage: 3.2.2 + istanbul-lib-instrument: 6.0.3 + istanbul-lib-report: 3.0.1 + istanbul-lib-source-maps: 4.0.1 + istanbul-reports: 3.1.7 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + jest-worker: 29.7.0 + slash: 3.0.0 + string-length: 4.0.2 + strip-ansi: 6.0.1 + v8-to-istanbul: 9.3.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@jest/schemas@29.6.3: + resolution: + { + integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@sinclair/typebox": 0.27.8 + dev: true + + /@jest/source-map@29.6.3: + resolution: + { + integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jridgewell/trace-mapping": 0.3.25 + callsites: 3.1.0 + graceful-fs: 4.2.11 + dev: true + + /@jest/test-result@29.7.0: + resolution: + { + integrity: sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/console": 29.7.0 + "@jest/types": 29.6.3 + "@types/istanbul-lib-coverage": 2.0.6 + collect-v8-coverage: 1.0.2 + dev: true + + /@jest/test-sequencer@29.7.0: + resolution: + { + integrity: sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/test-result": 29.7.0 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + slash: 3.0.0 + dev: true + + /@jest/transform@29.7.0: + resolution: + { + integrity: sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@babel/core": 7.24.7 + "@jest/types": 29.6.3 + "@jridgewell/trace-mapping": 0.3.25 + babel-plugin-istanbul: 6.1.1 + chalk: 4.1.2 + convert-source-map: 2.0.0 + fast-json-stable-stringify: 2.1.0 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + jest-regex-util: 29.6.3 + jest-util: 29.7.0 + micromatch: 4.0.7 + pirates: 4.0.6 + slash: 3.0.0 + write-file-atomic: 4.0.2 + transitivePeerDependencies: + - supports-color + dev: true + + /@jest/types@29.6.3: + resolution: + { + integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/schemas": 29.6.3 + "@types/istanbul-lib-coverage": 2.0.6 + "@types/istanbul-reports": 3.0.4 + "@types/node": 20.14.10 + "@types/yargs": 17.0.32 + chalk: 4.1.2 + dev: true + + /@jridgewell/gen-mapping@0.3.5: + resolution: + { + integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==, + } + engines: { node: ">=6.0.0" } + dependencies: + "@jridgewell/set-array": 1.2.1 + "@jridgewell/sourcemap-codec": 1.4.15 + "@jridgewell/trace-mapping": 0.3.25 + dev: true + + /@jridgewell/resolve-uri@3.1.2: + resolution: + { + integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==, + } + engines: { node: ">=6.0.0" } + dev: true + + /@jridgewell/set-array@1.2.1: + resolution: + { + integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==, + } + engines: { node: ">=6.0.0" } + dev: true + + /@jridgewell/sourcemap-codec@1.4.15: + resolution: + { + integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==, + } + dev: true + + /@jridgewell/trace-mapping@0.3.25: + resolution: + { + integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==, + } + dependencies: + "@jridgewell/resolve-uri": 3.1.2 + "@jridgewell/sourcemap-codec": 1.4.15 + dev: true + + /@kwsites/file-exists@1.1.1: + resolution: + { + integrity: sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==, + } + dependencies: + debug: 4.3.5 + transitivePeerDependencies: + - supports-color + dev: false + + /@kwsites/promise-deferred@1.1.1: + resolution: + { + integrity: sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==, + } + dev: false + + /@mapbox/node-pre-gyp@1.0.11: + resolution: + { + integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==, + } + hasBin: true + dependencies: + detect-libc: 2.0.3 + https-proxy-agent: 5.0.1 + make-dir: 3.1.0 + node-fetch: 2.7.0 + nopt: 5.0.0 + npmlog: 5.0.1 + rimraf: 3.0.2 + semver: 7.6.2 + tar: 6.2.1 + transitivePeerDependencies: + - encoding + - supports-color + dev: true + + /@next/env@14.2.4: + resolution: + { + integrity: sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg==, + } + dev: false + + /@nodelib/fs.scandir@2.1.5: + resolution: + { + integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, + } + engines: { node: ">= 8" } + dependencies: + "@nodelib/fs.stat": 2.0.5 + run-parallel: 1.2.0 + dev: true + + /@nodelib/fs.stat@2.0.5: + resolution: + { + integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==, + } + engines: { node: ">= 8" } + dev: true + + /@nodelib/fs.walk@1.2.8: + resolution: + { + integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==, + } + engines: { node: ">= 8" } + dependencies: + "@nodelib/fs.scandir": 2.1.5 + fastq: 1.17.1 + dev: true + + /@npmcli/fs@2.1.2: + resolution: + { + integrity: sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + dependencies: + "@gar/promisify": 1.1.3 + semver: 7.6.2 + dev: true + + /@npmcli/move-file@2.0.1: + resolution: + { + integrity: sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + deprecated: This functionality has been moved to @npmcli/fs + dependencies: + mkdirp: 1.0.4 + rimraf: 3.0.2 + dev: true + + /@pkgjs/parseargs@0.11.0: + resolution: + { + integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==, + } + engines: { node: ">=14" } + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-android-arm-eabi@4.18.0: + resolution: + { + integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==, + } + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-android-arm64@4.18.0: + resolution: + { + integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==, + } + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-darwin-arm64@4.18.0: + resolution: + { + integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==, + } + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-darwin-x64@4.18.0: + resolution: + { + integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==, + } + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm-gnueabihf@4.18.0: + resolution: + { + integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==, + } + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm-musleabihf@4.18.0: + resolution: + { + integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==, + } + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm64-gnu@4.18.0: + resolution: + { + integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==, + } + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm64-musl@4.18.0: + resolution: + { + integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==, + } + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-powerpc64le-gnu@4.18.0: + resolution: + { + integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==, + } + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-riscv64-gnu@4.18.0: + resolution: + { + integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==, + } + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-s390x-gnu@4.18.0: + resolution: + { + integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==, + } + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-gnu@4.18.0: + resolution: + { + integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==, + } + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-musl@4.18.0: + resolution: + { + integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==, + } + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-arm64-msvc@4.18.0: + resolution: + { + integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==, + } + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-ia32-msvc@4.18.0: + resolution: + { + integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==, + } + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-x64-msvc@4.18.0: + resolution: + { + integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==, + } + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@sinclair/typebox@0.27.8: + resolution: + { + integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==, + } + dev: true + + /@sinonjs/commons@3.0.1: + resolution: + { + integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==, + } + dependencies: + type-detect: 4.0.8 + dev: true + + /@sinonjs/fake-timers@10.3.0: + resolution: + { + integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==, + } + dependencies: + "@sinonjs/commons": 3.0.1 + dev: true + + /@tootallnate/once@2.0.0: + resolution: + { + integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==, + } + engines: { node: ">= 10" } + dev: true + + /@types/babel__core@7.20.5: + resolution: + { + integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==, + } + dependencies: + "@babel/parser": 7.24.7 + "@babel/types": 7.24.7 + "@types/babel__generator": 7.6.8 + "@types/babel__template": 7.4.4 + "@types/babel__traverse": 7.20.6 + dev: true + + /@types/babel__generator@7.6.8: + resolution: + { + integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==, + } + dependencies: + "@babel/types": 7.24.7 + dev: true + + /@types/babel__template@7.4.4: + resolution: + { + integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==, + } + dependencies: + "@babel/parser": 7.24.7 + "@babel/types": 7.24.7 + dev: true + + /@types/babel__traverse@7.20.6: + resolution: + { + integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==, + } + dependencies: + "@babel/types": 7.24.7 + dev: true + + /@types/estree@1.0.5: + resolution: + { + integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==, + } + dev: true + + /@types/graceful-fs@4.1.9: + resolution: + { + integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==, + } + dependencies: + "@types/node": 20.14.10 + dev: true + + /@types/istanbul-lib-coverage@2.0.6: + resolution: + { + integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==, + } + dev: true + + /@types/istanbul-lib-report@3.0.3: + resolution: + { + integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==, + } + dependencies: + "@types/istanbul-lib-coverage": 2.0.6 + dev: true + + /@types/istanbul-reports@3.0.4: + resolution: + { + integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==, + } + dependencies: + "@types/istanbul-lib-report": 3.0.3 + dev: true + + /@types/jest@29.5.12: + resolution: + { + integrity: sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==, + } + dependencies: + expect: 29.7.0 + pretty-format: 29.7.0 + dev: true + + /@types/js-levenshtein@1.1.3: + resolution: + { + integrity: sha512-jd+Q+sD20Qfu9e2aEXogiO3vpOC1PYJOUdyN9gvs4Qrvkg4wF43L5OhqrPeokdv8TL0/mXoYfpkcoGZMNN2pkQ==, + } + dev: true + + /@types/js-yaml@4.0.9: + resolution: + { + integrity: sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==, + } + dev: true + + /@types/mustache@4.2.5: + resolution: + { + integrity: sha512-PLwiVvTBg59tGFL/8VpcGvqOu3L4OuveNvPi0EYbWchRdEVP++yRUXJPFl+CApKEq13017/4Nf7aQ5lTtHUNsA==, + } + dev: true + + /@types/node-fetch@2.6.11: + resolution: + { + integrity: sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==, + } + dependencies: + "@types/node": 20.14.10 + form-data: 4.0.0 + dev: false + + /@types/node@18.19.39: + resolution: + { + integrity: sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ==, + } + dependencies: + undici-types: 5.26.5 + dev: false + + /@types/node@20.14.10: + resolution: + { + integrity: sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ==, + } + dependencies: + undici-types: 5.26.5 + + /@types/stack-utils@2.0.3: + resolution: + { + integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==, + } + dev: true + + /@types/yargs-parser@21.0.3: + resolution: + { + integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==, + } + dev: true + + /@types/yargs@17.0.32: + resolution: + { + integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==, + } + dependencies: + "@types/yargs-parser": 21.0.3 + dev: true + + /abbrev@1.1.1: + resolution: + { + integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==, + } + dev: true + + /abort-controller@3.0.0: + resolution: + { + integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==, + } + engines: { node: ">=6.5" } + dependencies: + event-target-shim: 5.0.1 + dev: false + + /agent-base@6.0.2: + resolution: + { + integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==, + } + engines: { node: ">= 6.0.0" } + dependencies: + debug: 4.3.5 + transitivePeerDependencies: + - supports-color + dev: true + + /agentkeepalive@4.5.0: + resolution: + { + integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==, + } + engines: { node: ">= 8.0.0" } + dependencies: + humanize-ms: 1.2.1 + + /aggregate-error@3.1.0: + resolution: + { + integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==, + } + engines: { node: ">=8" } + dependencies: + clean-stack: 2.2.0 + indent-string: 4.0.0 + dev: true + + /ajv@8.16.0: + resolution: + { + integrity: sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==, + } + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js: 4.4.1 + dev: false + + /ansi-escapes@4.3.2: + resolution: + { + integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==, + } + engines: { node: ">=8" } + dependencies: + type-fest: 0.21.3 + dev: true + + /ansi-regex@5.0.1: + resolution: + { + integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, + } + engines: { node: ">=8" } + + /ansi-regex@6.0.1: + resolution: + { + integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==, + } + engines: { node: ">=12" } + dev: true + + /ansi-sequence-parser@1.1.1: + resolution: + { + integrity: sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==, + } + dev: true + + /ansi-styles@3.2.1: + resolution: + { + integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==, + } + engines: { node: ">=4" } + dependencies: + color-convert: 1.9.3 + dev: true + + /ansi-styles@4.3.0: + resolution: + { + integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==, + } + engines: { node: ">=8" } + dependencies: + color-convert: 2.0.1 + + /ansi-styles@5.2.0: + resolution: + { + integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==, + } + engines: { node: ">=10" } + dev: true + + /ansi-styles@6.2.1: + resolution: + { + integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==, + } + engines: { node: ">=12" } + dev: true + + /any-promise@1.3.0: + resolution: + { + integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==, + } + dev: true + + /anymatch@3.1.3: + resolution: + { + integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==, + } + engines: { node: ">= 8" } + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + dev: true + + /aproba@2.0.0: + resolution: + { + integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==, + } + dev: true + + /are-we-there-yet@2.0.0: + resolution: + { + integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==, + } + engines: { node: ">=10" } + deprecated: This package is no longer supported. + dependencies: + delegates: 1.0.0 + readable-stream: 3.6.2 + dev: true + + /are-we-there-yet@3.0.1: + resolution: + { + integrity: sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + deprecated: This package is no longer supported. + dependencies: + delegates: 1.0.0 + readable-stream: 3.6.2 + dev: true + + /argparse@1.0.10: + resolution: + { + integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==, + } + dependencies: + sprintf-js: 1.0.3 + dev: true + + /argparse@2.0.1: + resolution: + { + integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==, + } + dev: false + + /array-union@2.1.0: + resolution: + { + integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==, + } + engines: { node: ">=8" } + dev: true + + /asynckit@0.4.0: + resolution: + { + integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==, + } + dev: false + + /babel-jest@29.7.0(@babel/core@7.24.7): + resolution: + { + integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + peerDependencies: + "@babel/core": ^7.8.0 + dependencies: + "@babel/core": 7.24.7 + "@jest/transform": 29.7.0 + "@types/babel__core": 7.20.5 + babel-plugin-istanbul: 6.1.1 + babel-preset-jest: 29.6.3(@babel/core@7.24.7) + chalk: 4.1.2 + graceful-fs: 4.2.11 + slash: 3.0.0 + transitivePeerDependencies: + - supports-color + dev: true + + /babel-plugin-istanbul@6.1.1: + resolution: + { + integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==, + } + engines: { node: ">=8" } + dependencies: + "@babel/helper-plugin-utils": 7.24.7 + "@istanbuljs/load-nyc-config": 1.1.0 + "@istanbuljs/schema": 0.1.3 + istanbul-lib-instrument: 5.2.1 + test-exclude: 6.0.0 + transitivePeerDependencies: + - supports-color + dev: true + + /babel-plugin-jest-hoist@29.6.3: + resolution: + { + integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@babel/template": 7.24.7 + "@babel/types": 7.24.7 + "@types/babel__core": 7.20.5 + "@types/babel__traverse": 7.20.6 + dev: true + + /babel-preset-current-node-syntax@1.0.1(@babel/core@7.24.7): + resolution: + { + integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==, + } + peerDependencies: + "@babel/core": ^7.0.0 + dependencies: + "@babel/core": 7.24.7 + "@babel/plugin-syntax-async-generators": 7.8.4(@babel/core@7.24.7) + "@babel/plugin-syntax-bigint": 7.8.3(@babel/core@7.24.7) + "@babel/plugin-syntax-class-properties": 7.12.13(@babel/core@7.24.7) + "@babel/plugin-syntax-import-meta": 7.10.4(@babel/core@7.24.7) + "@babel/plugin-syntax-json-strings": 7.8.3(@babel/core@7.24.7) + "@babel/plugin-syntax-logical-assignment-operators": 7.10.4(@babel/core@7.24.7) + "@babel/plugin-syntax-nullish-coalescing-operator": 7.8.3(@babel/core@7.24.7) + "@babel/plugin-syntax-numeric-separator": 7.10.4(@babel/core@7.24.7) + "@babel/plugin-syntax-object-rest-spread": 7.8.3(@babel/core@7.24.7) + "@babel/plugin-syntax-optional-catch-binding": 7.8.3(@babel/core@7.24.7) + "@babel/plugin-syntax-optional-chaining": 7.8.3(@babel/core@7.24.7) + "@babel/plugin-syntax-top-level-await": 7.14.5(@babel/core@7.24.7) + dev: true + + /babel-preset-jest@29.6.3(@babel/core@7.24.7): + resolution: + { + integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + peerDependencies: + "@babel/core": ^7.0.0 + dependencies: + "@babel/core": 7.24.7 + babel-plugin-jest-hoist: 29.6.3 + babel-preset-current-node-syntax: 1.0.1(@babel/core@7.24.7) + dev: true + + /balanced-match@1.0.2: + resolution: + { + integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, + } + + /binary-extensions@2.3.0: + resolution: + { + integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==, + } + engines: { node: ">=8" } + dev: true + + /binary-search@1.3.6: + resolution: + { + integrity: sha512-nbE1WxOTTrUWIfsfZ4aHGYu5DOuNkbxGokjV6Z2kxfJK3uaAb8zNK1muzOeipoLHZjInT4Br88BHpzevc681xA==, + } + dev: false + + /brace-expansion@1.1.11: + resolution: + { + integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, + } + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + dev: true + + /brace-expansion@2.0.1: + resolution: + { + integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==, + } + dependencies: + balanced-match: 1.0.2 + + /braces@3.0.3: + resolution: + { + integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==, + } + engines: { node: ">=8" } + dependencies: + fill-range: 7.1.1 + dev: true + + /braintrust@0.0.140: + resolution: + { + integrity: sha512-GEZ4sEw5o4IKn6xV4v4xLYR2GOBaOHd4T/ycFfH6XO9hnu17WL7zsplBASv9gDf/zTKILz/uPr+xo/r648SHIQ==, + } + hasBin: true + dependencies: + "@ai-sdk/provider": 0.0.6 + "@braintrust/core": 0.0.44 + "@next/env": 14.2.4 + argparse: 2.0.1 + chalk: 4.1.2 + cli-progress: 3.12.0 + dotenv: 16.4.5 + esbuild: 0.18.20 + graceful-fs: 4.2.11 + minimatch: 9.0.5 + mustache: 4.2.0 + pluralize: 8.0.0 + simple-git: 3.25.0 + uuid: 9.0.1 + zod: 3.23.8 + transitivePeerDependencies: + - supports-color + dev: false + + /browserslist@4.23.1: + resolution: + { + integrity: sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==, + } + engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 } + hasBin: true + dependencies: + caniuse-lite: 1.0.30001640 + electron-to-chromium: 1.4.818 + node-releases: 2.0.14 + update-browserslist-db: 1.1.0(browserslist@4.23.1) + dev: true + + /bs-logger@0.2.6: + resolution: + { + integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==, + } + engines: { node: ">= 6" } + dependencies: + fast-json-stable-stringify: 2.1.0 + dev: true + + /bser@2.1.1: + resolution: + { + integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==, + } + dependencies: + node-int64: 0.4.0 + dev: true + + /buffer-from@1.1.2: + resolution: + { + integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==, + } + dev: true + + /bundle-require@4.2.1(esbuild@0.21.5): + resolution: + { + integrity: sha512-7Q/6vkyYAwOmQNRw75x+4yRtZCZJXUDmHHlFdkiV0wgv/reNjtJwpu1jPJ0w2kbEpIM0uoKI3S4/f39dU7AjSA==, + } + engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + peerDependencies: + esbuild: ">=0.17" + dependencies: + esbuild: 0.21.5 + load-tsconfig: 0.2.5 + dev: true + + /cac@6.7.14: + resolution: + { + integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==, + } + engines: { node: ">=8" } + dev: true + + /cacache@16.1.3: + resolution: + { + integrity: sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + dependencies: + "@npmcli/fs": 2.1.2 + "@npmcli/move-file": 2.0.1 + chownr: 2.0.0 + fs-minipass: 2.1.0 + glob: 8.1.0 + infer-owner: 1.0.4 + lru-cache: 7.18.3 + minipass: 3.3.6 + minipass-collect: 1.0.2 + minipass-flush: 1.0.5 + minipass-pipeline: 1.2.4 + mkdirp: 1.0.4 + p-map: 4.0.0 + promise-inflight: 1.0.1 + rimraf: 3.0.2 + ssri: 9.0.1 + tar: 6.2.1 + unique-filename: 2.0.1 + transitivePeerDependencies: + - bluebird + dev: true + + /callsites@3.1.0: + resolution: + { + integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==, + } + engines: { node: ">=6" } + dev: true + + /camelcase@5.3.1: + resolution: + { + integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==, + } + engines: { node: ">=6" } + dev: true + + /camelcase@6.3.0: + resolution: + { + integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==, + } + engines: { node: ">=10" } + dev: true + + /caniuse-lite@1.0.30001640: + resolution: + { + integrity: sha512-lA4VMpW0PSUrFnkmVuEKBUovSWKhj7puyCg8StBChgu298N1AtuF1sKWEvfDuimSEDbhlb/KqPKC3fs1HbuQUA==, + } + dev: true + + /chalk@2.4.2: + resolution: + { + integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==, + } + engines: { node: ">=4" } + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + dev: true + + /chalk@4.1.2: + resolution: + { + integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==, + } + engines: { node: ">=10" } + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + /char-regex@1.0.2: + resolution: + { + integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==, + } + engines: { node: ">=10" } + dev: true + + /cheminfo-types@1.7.3: + resolution: + { + integrity: sha512-KIKBULfo+XwkSBwMfwjBmZCmY+RXisN2kRc33WikuWBsCQQy5alHWYVrMCO8//lDvy9h1giOzwsC9kgq0OahUw==, + } + dev: false + + /chokidar@3.6.0: + resolution: + { + integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==, + } + engines: { node: ">= 8.10.0" } + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + dev: true + + /chownr@2.0.0: + resolution: + { + integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==, + } + engines: { node: ">=10" } + dev: true + + /ci-info@3.9.0: + resolution: + { + integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==, + } + engines: { node: ">=8" } + dev: true + + /cjs-module-lexer@1.3.1: + resolution: + { + integrity: sha512-a3KdPAANPbNE4ZUv9h6LckSl9zLsYOP4MBmhIPkRaeyybt+r4UghLvq+xw/YwUcC1gqylCkL4rdVs3Lwupjm4Q==, + } + dev: true + + /clean-stack@2.2.0: + resolution: + { + integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==, + } + engines: { node: ">=6" } + dev: true + + /cli-progress@3.12.0: + resolution: + { + integrity: sha512-tRkV3HJ1ASwm19THiiLIXLO7Im7wlTuKnvkYaTkyoAPefqjNg7W7DHKUlGRxy9vxDvbyCYQkQozvptuMkGCg8A==, + } + engines: { node: ">=4" } + dependencies: + string-width: 4.2.3 + dev: false + + /cliui@8.0.1: + resolution: + { + integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==, + } + engines: { node: ">=12" } + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + dev: true + + /co@4.6.0: + resolution: + { + integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==, + } + engines: { iojs: ">= 1.0.0", node: ">= 0.12.0" } + dev: true + + /collect-v8-coverage@1.0.2: + resolution: + { + integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==, + } + dev: true + + /color-convert@1.9.3: + resolution: + { + integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==, + } + dependencies: + color-name: 1.1.3 + dev: true + + /color-convert@2.0.1: + resolution: + { + integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==, + } + engines: { node: ">=7.0.0" } + dependencies: + color-name: 1.1.4 + + /color-name@1.1.3: + resolution: + { + integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==, + } + dev: true + + /color-name@1.1.4: + resolution: + { + integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, + } + + /color-support@1.1.3: + resolution: + { + integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==, + } + hasBin: true + dev: true + + /combined-stream@1.0.8: + resolution: + { + integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==, + } + engines: { node: ">= 0.8" } + dependencies: + delayed-stream: 1.0.0 + dev: false + + /commander@4.1.1: + resolution: + { + integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==, + } + engines: { node: ">= 6" } + dev: true + + /compute-cosine-similarity@1.1.0: + resolution: + { + integrity: sha512-FXhNx0ILLjGi9Z9+lglLzM12+0uoTnYkHm7GiadXDAr0HGVLm25OivUS1B/LPkbzzvlcXz/1EvWg9ZYyJSdhTw==, + } + dependencies: + compute-dot: 1.1.0 + compute-l2norm: 1.1.0 + validate.io-array: 1.0.6 + validate.io-function: 1.0.2 + dev: false + + /compute-dot@1.1.0: + resolution: + { + integrity: sha512-L5Ocet4DdMrXboss13K59OK23GXjiSia7+7Ukc7q4Bl+RVpIXK2W9IHMbWDZkh+JUEvJAwOKRaJDiFUa1LTnJg==, + } + dependencies: + validate.io-array: 1.0.6 + validate.io-function: 1.0.2 + dev: false + + /compute-l2norm@1.1.0: + resolution: + { + integrity: sha512-6EHh1Elj90eU28SXi+h2PLnTQvZmkkHWySpoFz+WOlVNLz3DQoC4ISUHSV9n5jMxPHtKGJ01F4uu2PsXBB8sSg==, + } + dependencies: + validate.io-array: 1.0.6 + validate.io-function: 1.0.2 + dev: false + + /concat-map@0.0.1: + resolution: + { + integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, + } + dev: true + + /console-control-strings@1.1.0: + resolution: + { + integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==, + } + dev: true + + /convert-source-map@2.0.0: + resolution: + { + integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==, + } + dev: true + + /create-jest@29.7.0(@types/node@20.14.10): + resolution: + { + integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + hasBin: true + dependencies: + "@jest/types": 29.6.3 + chalk: 4.1.2 + exit: 0.1.2 + graceful-fs: 4.2.11 + jest-config: 29.7.0(@types/node@20.14.10) + jest-util: 29.7.0 + prompts: 2.4.2 + transitivePeerDependencies: + - "@types/node" + - babel-plugin-macros + - supports-color + - ts-node + dev: true + + /cross-spawn@7.0.3: + resolution: + { + integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==, + } + engines: { node: ">= 8" } + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + dev: true + + /d3-array@0.7.1: + resolution: + { + integrity: sha512-Ifi3fH46Bco+Lb1mOlTxbFEuF3NdyElEVVD+EmoK327I0JzKAP4x57cl+HoxHqFcVd8F/uXLC+wtY3n/R1uO2w==, + } + dev: false + + /debug@4.3.5: + resolution: + { + integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==, + } + engines: { node: ">=6.0" } + peerDependencies: + supports-color: "*" + peerDependenciesMeta: + supports-color: + optional: true + dependencies: + ms: 2.1.2 + + /dedent@1.5.3: + resolution: + { + integrity: sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==, + } + peerDependencies: + babel-plugin-macros: ^3.1.0 + peerDependenciesMeta: + babel-plugin-macros: + optional: true + dev: true + + /deepmerge@4.3.1: + resolution: + { + integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==, + } + engines: { node: ">=0.10.0" } + dev: true + + /delayed-stream@1.0.0: + resolution: + { + integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==, + } + engines: { node: ">=0.4.0" } + dev: false + + /delegates@1.0.0: + resolution: + { + integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==, + } + dev: true + + /detect-libc@2.0.3: + resolution: + { + integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==, + } + engines: { node: ">=8" } + dev: true + + /detect-newline@3.1.0: + resolution: + { + integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==, + } + engines: { node: ">=8" } + dev: true + + /diff-sequences@29.6.3: + resolution: + { + integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dev: true + + /dir-glob@3.0.1: + resolution: + { + integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==, + } + engines: { node: ">=8" } + dependencies: + path-type: 4.0.0 + dev: true + + /dotenv@16.4.5: + resolution: + { + integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==, + } + engines: { node: ">=12" } + dev: false + + /duckdb@1.0.0: + resolution: + { + integrity: sha512-QwpcIeN42A2lL19S70mUFibZgRcEcZpCkKHdzDgecHaYZhXj3+1i2cxSDyAk/RVg5CYnqj1Dp4jAuN4cc80udA==, + } + requiresBuild: true + dependencies: + "@mapbox/node-pre-gyp": 1.0.11 + node-addon-api: 7.1.0 + node-gyp: 9.4.1 + transitivePeerDependencies: + - bluebird + - encoding + - supports-color + dev: true + + /eastasianwidth@0.2.0: + resolution: + { + integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==, + } + dev: true + + /electron-to-chromium@1.4.818: + resolution: + { + integrity: sha512-eGvIk2V0dGImV9gWLq8fDfTTsCAeMDwZqEPMr+jMInxZdnp9Us8UpovYpRCf9NQ7VOFgrN2doNSgvISbsbNpxA==, + } + dev: true + + /emittery@0.13.1: + resolution: + { + integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==, + } + engines: { node: ">=12" } + dev: true + + /emoji-regex@8.0.0: + resolution: + { + integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==, + } + + /emoji-regex@9.2.2: + resolution: + { + integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==, + } + dev: true + + /encoding@0.1.13: + resolution: + { + integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==, + } + requiresBuild: true + dependencies: + iconv-lite: 0.6.3 + dev: true + optional: true + + /env-paths@2.2.1: + resolution: + { + integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==, + } + engines: { node: ">=6" } + dev: true + + /err-code@2.0.3: + resolution: + { + integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==, + } + dev: true + + /error-ex@1.3.2: + resolution: + { + integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==, + } + dependencies: + is-arrayish: 0.2.1 + dev: true + + /esbuild@0.18.20: + resolution: + { + integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==, + } + engines: { node: ">=12" } + hasBin: true + requiresBuild: true + optionalDependencies: + "@esbuild/android-arm": 0.18.20 + "@esbuild/android-arm64": 0.18.20 + "@esbuild/android-x64": 0.18.20 + "@esbuild/darwin-arm64": 0.18.20 + "@esbuild/darwin-x64": 0.18.20 + "@esbuild/freebsd-arm64": 0.18.20 + "@esbuild/freebsd-x64": 0.18.20 + "@esbuild/linux-arm": 0.18.20 + "@esbuild/linux-arm64": 0.18.20 + "@esbuild/linux-ia32": 0.18.20 + "@esbuild/linux-loong64": 0.18.20 + "@esbuild/linux-mips64el": 0.18.20 + "@esbuild/linux-ppc64": 0.18.20 + "@esbuild/linux-riscv64": 0.18.20 + "@esbuild/linux-s390x": 0.18.20 + "@esbuild/linux-x64": 0.18.20 + "@esbuild/netbsd-x64": 0.18.20 + "@esbuild/openbsd-x64": 0.18.20 + "@esbuild/sunos-x64": 0.18.20 + "@esbuild/win32-arm64": 0.18.20 + "@esbuild/win32-ia32": 0.18.20 + "@esbuild/win32-x64": 0.18.20 + + /esbuild@0.21.5: + resolution: + { + integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==, + } + engines: { node: ">=12" } + hasBin: true + requiresBuild: true + optionalDependencies: + "@esbuild/aix-ppc64": 0.21.5 + "@esbuild/android-arm": 0.21.5 + "@esbuild/android-arm64": 0.21.5 + "@esbuild/android-x64": 0.21.5 + "@esbuild/darwin-arm64": 0.21.5 + "@esbuild/darwin-x64": 0.21.5 + "@esbuild/freebsd-arm64": 0.21.5 + "@esbuild/freebsd-x64": 0.21.5 + "@esbuild/linux-arm": 0.21.5 + "@esbuild/linux-arm64": 0.21.5 + "@esbuild/linux-ia32": 0.21.5 + "@esbuild/linux-loong64": 0.21.5 + "@esbuild/linux-mips64el": 0.21.5 + "@esbuild/linux-ppc64": 0.21.5 + "@esbuild/linux-riscv64": 0.21.5 + "@esbuild/linux-s390x": 0.21.5 + "@esbuild/linux-x64": 0.21.5 + "@esbuild/netbsd-x64": 0.21.5 + "@esbuild/openbsd-x64": 0.21.5 + "@esbuild/sunos-x64": 0.21.5 + "@esbuild/win32-arm64": 0.21.5 + "@esbuild/win32-ia32": 0.21.5 + "@esbuild/win32-x64": 0.21.5 + dev: true + + /escalade@3.1.2: + resolution: + { + integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==, + } + engines: { node: ">=6" } + dev: true + + /escape-string-regexp@1.0.5: + resolution: + { + integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==, + } + engines: { node: ">=0.8.0" } + dev: true + + /escape-string-regexp@2.0.0: + resolution: + { + integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==, + } + engines: { node: ">=8" } + dev: true + + /esprima@4.0.1: + resolution: + { + integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==, + } + engines: { node: ">=4" } + hasBin: true + dev: true + + /event-target-shim@5.0.1: + resolution: + { + integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==, + } + engines: { node: ">=6" } + dev: false + + /execa@5.1.1: + resolution: + { + integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==, + } + engines: { node: ">=10" } + dependencies: + cross-spawn: 7.0.3 + get-stream: 6.0.1 + human-signals: 2.1.0 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + dev: true + + /exit@0.1.2: + resolution: + { + integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==, + } + engines: { node: ">= 0.8.0" } + dev: true + + /expect@29.7.0: + resolution: + { + integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/expect-utils": 29.7.0 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + dev: true + + /exponential-backoff@3.1.1: + resolution: + { + integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==, + } + dev: true + + /fast-deep-equal@3.1.3: + resolution: + { + integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==, + } + dev: false + + /fast-glob@3.3.2: + resolution: + { + integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==, + } + engines: { node: ">=8.6.0" } + dependencies: + "@nodelib/fs.stat": 2.0.5 + "@nodelib/fs.walk": 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.7 + dev: true + + /fast-json-stable-stringify@2.1.0: + resolution: + { + integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==, + } + dev: true + + /fastq@1.17.1: + resolution: + { + integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==, + } + dependencies: + reusify: 1.0.4 + dev: true + + /fb-watchman@2.0.2: + resolution: + { + integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==, + } + dependencies: + bser: 2.1.1 + dev: true + + /fft.js@4.0.4: + resolution: + { + integrity: sha512-f9c00hphOgeQTlDyavwTtu6RiK8AIFjD6+jvXkNkpeQ7rirK3uFWVpalkoS4LAwbdX7mfZ8aoBfFVQX1Re/8aw==, + } + dev: false + + /fill-range@7.1.1: + resolution: + { + integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==, + } + engines: { node: ">=8" } + dependencies: + to-regex-range: 5.0.1 + dev: true + + /find-up@4.1.0: + resolution: + { + integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==, + } + engines: { node: ">=8" } + dependencies: + locate-path: 5.0.0 + path-exists: 4.0.0 + dev: true + + /foreground-child@3.2.1: + resolution: + { + integrity: sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==, + } + engines: { node: ">=14" } + dependencies: + cross-spawn: 7.0.3 + signal-exit: 4.1.0 + dev: true + + /form-data-encoder@1.7.2: + resolution: + { + integrity: sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==, + } + dev: false + + /form-data@4.0.0: + resolution: + { + integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==, + } + engines: { node: ">= 6" } + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + dev: false + + /formdata-node@4.4.1: + resolution: + { + integrity: sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==, + } + engines: { node: ">= 12.20" } + dependencies: + node-domexception: 1.0.0 + web-streams-polyfill: 4.0.0-beta.3 + dev: false + + /fs-minipass@2.1.0: + resolution: + { + integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==, + } + engines: { node: ">= 8" } + dependencies: + minipass: 3.3.6 + dev: true + + /fs.realpath@1.0.0: + resolution: + { + integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, + } + dev: true + + /fsevents@2.3.3: + resolution: + { + integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==, + } + engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 } + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /function-bind@1.1.2: + resolution: + { + integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==, + } + dev: true + + /gauge@3.0.2: + resolution: + { + integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==, + } + engines: { node: ">=10" } + deprecated: This package is no longer supported. + dependencies: + aproba: 2.0.0 + color-support: 1.1.3 + console-control-strings: 1.1.0 + has-unicode: 2.0.1 + object-assign: 4.1.1 + signal-exit: 3.0.7 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wide-align: 1.1.5 + dev: true + + /gauge@4.0.4: + resolution: + { + integrity: sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + deprecated: This package is no longer supported. + dependencies: + aproba: 2.0.0 + color-support: 1.1.3 + console-control-strings: 1.1.0 + has-unicode: 2.0.1 + signal-exit: 3.0.7 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wide-align: 1.1.5 + dev: true + + /gensync@1.0.0-beta.2: + resolution: + { + integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==, + } + engines: { node: ">=6.9.0" } + dev: true + + /get-caller-file@2.0.5: + resolution: + { + integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==, + } + engines: { node: 6.* || 8.* || >= 10.* } + dev: true + + /get-package-type@0.1.0: + resolution: + { + integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==, + } + engines: { node: ">=8.0.0" } + dev: true + + /get-stream@6.0.1: + resolution: + { + integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==, + } + engines: { node: ">=10" } + dev: true + + /get-tsconfig@4.7.5: + resolution: + { + integrity: sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw==, + } + dependencies: + resolve-pkg-maps: 1.0.0 + dev: true + + /glob-parent@5.1.2: + resolution: + { + integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, + } + engines: { node: ">= 6" } + dependencies: + is-glob: 4.0.3 + dev: true + + /glob@10.4.3: + resolution: + { + integrity: sha512-Q38SGlYRpVtDBPSWEylRyctn7uDeTp4NQERTLiCT1FqA9JXPYWqAVmQU6qh4r/zMM5ehxTcbaO8EjhWnvEhmyg==, + } + engines: { node: ">=18" } + hasBin: true + dependencies: + foreground-child: 3.2.1 + jackspeak: 3.4.1 + minimatch: 9.0.5 + minipass: 7.1.2 + package-json-from-dist: 1.0.0 + path-scurry: 1.11.1 + dev: true + + /glob@7.2.3: + resolution: + { + integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==, + } + deprecated: Glob versions prior to v9 are no longer supported + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: true + + /glob@8.1.0: + resolution: + { + integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==, + } + engines: { node: ">=12" } + deprecated: Glob versions prior to v9 are no longer supported + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 5.1.6 + once: 1.4.0 + dev: true + + /globals@11.12.0: + resolution: + { + integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==, + } + engines: { node: ">=4" } + dev: true + + /globby@11.1.0: + resolution: + { + integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==, + } + engines: { node: ">=10" } + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.2 + ignore: 5.3.1 + merge2: 1.4.1 + slash: 3.0.0 + dev: true + + /graceful-fs@4.2.11: + resolution: + { + integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==, + } + + /handlebars@4.7.8: + resolution: + { + integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==, + } + engines: { node: ">=0.4.7" } + hasBin: true + dependencies: + minimist: 1.2.8 + neo-async: 2.6.2 + source-map: 0.6.1 + wordwrap: 1.0.0 + optionalDependencies: + uglify-js: 3.18.0 + dev: true + + /has-flag@3.0.0: + resolution: + { + integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==, + } + engines: { node: ">=4" } + dev: true + + /has-flag@4.0.0: + resolution: + { + integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==, + } + engines: { node: ">=8" } + + /has-unicode@2.0.1: + resolution: + { + integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==, + } + dev: true + + /hasown@2.0.2: + resolution: + { + integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==, + } + engines: { node: ">= 0.4" } + dependencies: + function-bind: 1.1.2 + dev: true + + /html-escaper@2.0.2: + resolution: + { + integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==, + } + dev: true + + /http-cache-semantics@4.1.1: + resolution: + { + integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==, + } + dev: true + + /http-proxy-agent@5.0.0: + resolution: + { + integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==, + } + engines: { node: ">= 6" } + dependencies: + "@tootallnate/once": 2.0.0 + agent-base: 6.0.2 + debug: 4.3.5 + transitivePeerDependencies: + - supports-color + dev: true + + /https-proxy-agent@5.0.1: + resolution: + { + integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==, + } + engines: { node: ">= 6" } + dependencies: + agent-base: 6.0.2 + debug: 4.3.5 + transitivePeerDependencies: + - supports-color + dev: true + + /human-signals@2.1.0: + resolution: + { + integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==, + } + engines: { node: ">=10.17.0" } + dev: true + + /humanize-ms@1.2.1: + resolution: + { + integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==, + } + dependencies: + ms: 2.1.3 + + /iconv-lite@0.6.3: + resolution: + { + integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==, + } + engines: { node: ">=0.10.0" } + requiresBuild: true + dependencies: + safer-buffer: 2.1.2 + dev: true + optional: true + + /ignore@5.3.1: + resolution: + { + integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==, + } + engines: { node: ">= 4" } + dev: true + + /import-local@3.1.0: + resolution: + { + integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==, + } + engines: { node: ">=8" } + hasBin: true + dependencies: + pkg-dir: 4.2.0 + resolve-cwd: 3.0.0 + dev: true + + /imurmurhash@0.1.4: + resolution: + { + integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==, + } + engines: { node: ">=0.8.19" } + dev: true + + /indent-string@4.0.0: + resolution: + { + integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==, + } + engines: { node: ">=8" } + dev: true + + /infer-owner@1.0.4: + resolution: + { + integrity: sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==, + } + dev: true + + /inflight@1.0.6: + resolution: + { + integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==, + } + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + dev: true + + /inherits@2.0.4: + resolution: + { + integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, + } + dev: true + + /install@0.13.0: + resolution: + { + integrity: sha512-zDml/jzr2PKU9I8J/xyZBQn8rPCAY//UOYNmR01XwNwyfhEWObo2SWfSl1+0tm1u6PhxLwDnfsT/6jB7OUxqFA==, + } + engines: { node: ">= 0.10" } + dev: false + + /ip-address@9.0.5: + resolution: + { + integrity: sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==, + } + engines: { node: ">= 12" } + dependencies: + jsbn: 1.1.0 + sprintf-js: 1.1.3 + dev: true + + /is-any-array@2.0.1: + resolution: + { + integrity: sha512-UtilS7hLRu++wb/WBAw9bNuP1Eg04Ivn1vERJck8zJthEvXCBEBpGR/33u/xLKWEQf95803oalHrVDptcAvFdQ==, + } + dev: false + + /is-arrayish@0.2.1: + resolution: + { + integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==, + } + dev: true + + /is-binary-path@2.1.0: + resolution: + { + integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, + } + engines: { node: ">=8" } + dependencies: + binary-extensions: 2.3.0 + dev: true + + /is-core-module@2.14.0: + resolution: + { + integrity: sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==, + } + engines: { node: ">= 0.4" } + dependencies: + hasown: 2.0.2 + dev: true + + /is-extglob@2.1.1: + resolution: + { + integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, + } + engines: { node: ">=0.10.0" } + dev: true + + /is-fullwidth-code-point@3.0.0: + resolution: + { + integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==, + } + engines: { node: ">=8" } + + /is-generator-fn@2.1.0: + resolution: + { + integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==, + } + engines: { node: ">=6" } + dev: true + + /is-glob@4.0.3: + resolution: + { + integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, + } + engines: { node: ">=0.10.0" } + dependencies: + is-extglob: 2.1.1 + dev: true + + /is-lambda@1.0.1: + resolution: + { + integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==, + } + dev: true + + /is-number@7.0.0: + resolution: + { + integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, + } + engines: { node: ">=0.12.0" } + dev: true + + /is-stream@2.0.1: + resolution: + { + integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==, + } + engines: { node: ">=8" } + dev: true + + /isexe@2.0.0: + resolution: + { + integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==, + } + dev: true + + /istanbul-lib-coverage@3.2.2: + resolution: + { + integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==, + } + engines: { node: ">=8" } + dev: true + + /istanbul-lib-instrument@5.2.1: + resolution: + { + integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==, + } + engines: { node: ">=8" } + dependencies: + "@babel/core": 7.24.7 + "@babel/parser": 7.24.7 + "@istanbuljs/schema": 0.1.3 + istanbul-lib-coverage: 3.2.2 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + dev: true + + /istanbul-lib-instrument@6.0.3: + resolution: + { + integrity: sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==, + } + engines: { node: ">=10" } + dependencies: + "@babel/core": 7.24.7 + "@babel/parser": 7.24.7 + "@istanbuljs/schema": 0.1.3 + istanbul-lib-coverage: 3.2.2 + semver: 7.6.2 + transitivePeerDependencies: + - supports-color + dev: true + + /istanbul-lib-report@3.0.1: + resolution: + { + integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==, + } + engines: { node: ">=10" } + dependencies: + istanbul-lib-coverage: 3.2.2 + make-dir: 4.0.0 + supports-color: 7.2.0 + dev: true + + /istanbul-lib-source-maps@4.0.1: + resolution: + { + integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==, + } + engines: { node: ">=10" } + dependencies: + debug: 4.3.5 + istanbul-lib-coverage: 3.2.2 + source-map: 0.6.1 + transitivePeerDependencies: + - supports-color + dev: true + + /istanbul-reports@3.1.7: + resolution: + { + integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==, + } + engines: { node: ">=8" } + dependencies: + html-escaper: 2.0.2 + istanbul-lib-report: 3.0.1 + dev: true + + /jackspeak@3.4.1: + resolution: + { + integrity: sha512-U23pQPDnmYybVkYjObcuYMk43VRlMLLqLI+RdZy8s8WV8WsxO9SnqSroKaluuvcNOdCAlauKszDwd+umbot5Mg==, + } + engines: { node: ">=18" } + dependencies: + "@isaacs/cliui": 8.0.2 + optionalDependencies: + "@pkgjs/parseargs": 0.11.0 + dev: true + + /jest-changed-files@29.7.0: + resolution: + { + integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + execa: 5.1.1 + jest-util: 29.7.0 + p-limit: 3.1.0 + dev: true + + /jest-circus@29.7.0: + resolution: + { + integrity: sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/environment": 29.7.0 + "@jest/expect": 29.7.0 + "@jest/test-result": 29.7.0 + "@jest/types": 29.6.3 + "@types/node": 20.14.10 + chalk: 4.1.2 + co: 4.6.0 + dedent: 1.5.3 + is-generator-fn: 2.1.0 + jest-each: 29.7.0 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-runtime: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + p-limit: 3.1.0 + pretty-format: 29.7.0 + pure-rand: 6.1.0 + slash: 3.0.0 + stack-utils: 2.0.6 + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + dev: true + + /jest-cli@29.7.0(@types/node@20.14.10): + resolution: + { + integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + hasBin: true + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + dependencies: + "@jest/core": 29.7.0 + "@jest/test-result": 29.7.0 + "@jest/types": 29.6.3 + chalk: 4.1.2 + create-jest: 29.7.0(@types/node@20.14.10) + exit: 0.1.2 + import-local: 3.1.0 + jest-config: 29.7.0(@types/node@20.14.10) + jest-util: 29.7.0 + jest-validate: 29.7.0 + yargs: 17.7.2 + transitivePeerDependencies: + - "@types/node" + - babel-plugin-macros + - supports-color + - ts-node + dev: true + + /jest-config@29.7.0(@types/node@20.14.10): + resolution: + { + integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + peerDependencies: + "@types/node": "*" + ts-node: ">=9.0.0" + peerDependenciesMeta: + "@types/node": + optional: true + ts-node: + optional: true + dependencies: + "@babel/core": 7.24.7 + "@jest/test-sequencer": 29.7.0 + "@jest/types": 29.6.3 + "@types/node": 20.14.10 + babel-jest: 29.7.0(@babel/core@7.24.7) + chalk: 4.1.2 + ci-info: 3.9.0 + deepmerge: 4.3.1 + glob: 7.2.3 + graceful-fs: 4.2.11 + jest-circus: 29.7.0 + jest-environment-node: 29.7.0 + jest-get-type: 29.6.3 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-runner: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + micromatch: 4.0.7 + parse-json: 5.2.0 + pretty-format: 29.7.0 + slash: 3.0.0 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + dev: true + + /jest-diff@29.7.0: + resolution: + { + integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + chalk: 4.1.2 + diff-sequences: 29.6.3 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + dev: true + + /jest-docblock@29.7.0: + resolution: + { + integrity: sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + detect-newline: 3.1.0 + dev: true + + /jest-each@29.7.0: + resolution: + { + integrity: sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/types": 29.6.3 + chalk: 4.1.2 + jest-get-type: 29.6.3 + jest-util: 29.7.0 + pretty-format: 29.7.0 + dev: true + + /jest-environment-node@29.7.0: + resolution: + { + integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/environment": 29.7.0 + "@jest/fake-timers": 29.7.0 + "@jest/types": 29.6.3 + "@types/node": 20.14.10 + jest-mock: 29.7.0 + jest-util: 29.7.0 + dev: true + + /jest-get-type@29.6.3: + resolution: + { + integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dev: true + + /jest-haste-map@29.7.0: + resolution: + { + integrity: sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/types": 29.6.3 + "@types/graceful-fs": 4.1.9 + "@types/node": 20.14.10 + anymatch: 3.1.3 + fb-watchman: 2.0.2 + graceful-fs: 4.2.11 + jest-regex-util: 29.6.3 + jest-util: 29.7.0 + jest-worker: 29.7.0 + micromatch: 4.0.7 + walker: 1.0.8 + optionalDependencies: + fsevents: 2.3.3 + dev: true + + /jest-leak-detector@29.7.0: + resolution: + { + integrity: sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + dev: true + + /jest-matcher-utils@29.7.0: + resolution: + { + integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + chalk: 4.1.2 + jest-diff: 29.7.0 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + dev: true + + /jest-message-util@29.7.0: + resolution: + { + integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@babel/code-frame": 7.24.7 + "@jest/types": 29.6.3 + "@types/stack-utils": 2.0.3 + chalk: 4.1.2 + graceful-fs: 4.2.11 + micromatch: 4.0.7 + pretty-format: 29.7.0 + slash: 3.0.0 + stack-utils: 2.0.6 + dev: true + + /jest-mock@29.7.0: + resolution: + { + integrity: sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/types": 29.6.3 + "@types/node": 20.14.10 + jest-util: 29.7.0 + dev: true + + /jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): + resolution: + { + integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==, + } + engines: { node: ">=6" } + peerDependencies: + jest-resolve: "*" + peerDependenciesMeta: + jest-resolve: + optional: true + dependencies: + jest-resolve: 29.7.0 + dev: true + + /jest-regex-util@29.6.3: + resolution: + { + integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dev: true + + /jest-resolve-dependencies@29.7.0: + resolution: + { + integrity: sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + jest-regex-util: 29.6.3 + jest-snapshot: 29.7.0 + transitivePeerDependencies: + - supports-color + dev: true + + /jest-resolve@29.7.0: + resolution: + { + integrity: sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + chalk: 4.1.2 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + jest-pnp-resolver: 1.2.3(jest-resolve@29.7.0) + jest-util: 29.7.0 + jest-validate: 29.7.0 + resolve: 1.22.8 + resolve.exports: 2.0.2 + slash: 3.0.0 + dev: true + + /jest-runner@29.7.0: + resolution: + { + integrity: sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/console": 29.7.0 + "@jest/environment": 29.7.0 + "@jest/test-result": 29.7.0 + "@jest/transform": 29.7.0 + "@jest/types": 29.6.3 + "@types/node": 20.14.10 + chalk: 4.1.2 + emittery: 0.13.1 + graceful-fs: 4.2.11 + jest-docblock: 29.7.0 + jest-environment-node: 29.7.0 + jest-haste-map: 29.7.0 + jest-leak-detector: 29.7.0 + jest-message-util: 29.7.0 + jest-resolve: 29.7.0 + jest-runtime: 29.7.0 + jest-util: 29.7.0 + jest-watcher: 29.7.0 + jest-worker: 29.7.0 + p-limit: 3.1.0 + source-map-support: 0.5.13 + transitivePeerDependencies: + - supports-color + dev: true + + /jest-runtime@29.7.0: + resolution: + { + integrity: sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/environment": 29.7.0 + "@jest/fake-timers": 29.7.0 + "@jest/globals": 29.7.0 + "@jest/source-map": 29.6.3 + "@jest/test-result": 29.7.0 + "@jest/transform": 29.7.0 + "@jest/types": 29.6.3 + "@types/node": 20.14.10 + chalk: 4.1.2 + cjs-module-lexer: 1.3.1 + collect-v8-coverage: 1.0.2 + glob: 7.2.3 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + jest-message-util: 29.7.0 + jest-mock: 29.7.0 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + slash: 3.0.0 + strip-bom: 4.0.0 + transitivePeerDependencies: + - supports-color + dev: true + + /jest-snapshot@29.7.0: + resolution: + { + integrity: sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@babel/core": 7.24.7 + "@babel/generator": 7.24.7 + "@babel/plugin-syntax-jsx": 7.24.7(@babel/core@7.24.7) + "@babel/plugin-syntax-typescript": 7.24.7(@babel/core@7.24.7) + "@babel/types": 7.24.7 + "@jest/expect-utils": 29.7.0 + "@jest/transform": 29.7.0 + "@jest/types": 29.6.3 + babel-preset-current-node-syntax: 1.0.1(@babel/core@7.24.7) + chalk: 4.1.2 + expect: 29.7.0 + graceful-fs: 4.2.11 + jest-diff: 29.7.0 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + natural-compare: 1.4.0 + pretty-format: 29.7.0 + semver: 7.6.2 + transitivePeerDependencies: + - supports-color + dev: true + + /jest-text-transformer@1.0.4: + resolution: + { + integrity: sha512-Qi3FpWP6EFxZimSD05Zlmd/WER8l/3agVG7e5voHgdnM2vTs45sxS/i8qMWMO/dBkoxajndrGXfJTvhEENnjqw==, + } + engines: { node: ">=9.5.0", npm: ">=5.8.0" } + dependencies: + uuid: 3.4.0 + dev: true + + /jest-util@29.7.0: + resolution: + { + integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/types": 29.6.3 + "@types/node": 20.14.10 + chalk: 4.1.2 + ci-info: 3.9.0 + graceful-fs: 4.2.11 + picomatch: 2.3.1 + dev: true + + /jest-validate@29.7.0: + resolution: + { + integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/types": 29.6.3 + camelcase: 6.3.0 + chalk: 4.1.2 + jest-get-type: 29.6.3 + leven: 3.1.0 + pretty-format: 29.7.0 + dev: true + + /jest-watcher@29.7.0: + resolution: + { + integrity: sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/test-result": 29.7.0 + "@jest/types": 29.6.3 + "@types/node": 20.14.10 + ansi-escapes: 4.3.2 + chalk: 4.1.2 + emittery: 0.13.1 + jest-util: 29.7.0 + string-length: 4.0.2 + dev: true + + /jest-worker@29.7.0: + resolution: + { + integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@types/node": 20.14.10 + jest-util: 29.7.0 + merge-stream: 2.0.0 + supports-color: 8.1.1 + dev: true + + /jest@29.7.0(@types/node@20.14.10): + resolution: + { + integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + hasBin: true + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + dependencies: + "@jest/core": 29.7.0 + "@jest/types": 29.6.3 + import-local: 3.1.0 + jest-cli: 29.7.0(@types/node@20.14.10) + transitivePeerDependencies: + - "@types/node" + - babel-plugin-macros + - supports-color + - ts-node + dev: true + + /joycon@3.1.1: + resolution: + { + integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==, + } + engines: { node: ">=10" } + dev: true + + /js-levenshtein@1.1.6: + resolution: + { + integrity: sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==, + } + engines: { node: ">=0.10.0" } + dev: false + + /js-tokens@4.0.0: + resolution: + { + integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==, + } + dev: true + + /js-yaml@3.14.1: + resolution: + { + integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==, + } + hasBin: true + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + dev: true + + /js-yaml@4.1.0: + resolution: + { + integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==, + } + hasBin: true + dependencies: + argparse: 2.0.1 + dev: false + + /jsbn@1.1.0: + resolution: + { + integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==, + } + dev: true + + /jsesc@2.5.2: + resolution: + { + integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==, + } + engines: { node: ">=4" } + hasBin: true + dev: true + + /json-parse-even-better-errors@2.3.1: + resolution: + { + integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==, + } + dev: true + + /json-schema-traverse@1.0.0: + resolution: + { + integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==, + } + dev: false + + /json-schema@0.4.0: + resolution: + { + integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==, + } + dev: false + + /json5@2.2.3: + resolution: + { + integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==, + } + engines: { node: ">=6" } + hasBin: true + dev: true + + /jsonc-parser@3.3.1: + resolution: + { + integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==, + } + dev: true + + /kleur@3.0.3: + resolution: + { + integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==, + } + engines: { node: ">=6" } + dev: true + + /leven@3.1.0: + resolution: + { + integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==, + } + engines: { node: ">=6" } + dev: true + + /lilconfig@3.1.2: + resolution: + { + integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==, + } + engines: { node: ">=14" } + dev: true + + /linear-sum-assignment@1.0.7: + resolution: + { + integrity: sha512-jfLoSGwZNyjfY8eK4ayhjfcIu3BfWvP6sWieYzYI3AWldwXVoWEz1gtrQL10v/8YltYLBunqNjeVFXPMUs+MJg==, + } + dependencies: + cheminfo-types: 1.7.3 + install: 0.13.0 + ml-matrix: 6.11.1 + ml-spectra-processing: 14.5.1 + dev: false + + /lines-and-columns@1.2.4: + resolution: + { + integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==, + } + dev: true + + /load-tsconfig@0.2.5: + resolution: + { + integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==, + } + engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + dev: true + + /locate-path@5.0.0: + resolution: + { + integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==, + } + engines: { node: ">=8" } + dependencies: + p-locate: 4.1.0 + dev: true + + /lodash.memoize@4.1.2: + resolution: + { + integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==, + } + dev: true + + /lodash.sortby@4.7.0: + resolution: + { + integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==, + } + dev: true + + /lru-cache@10.3.1: + resolution: + { + integrity: sha512-9/8QXrtbGeMB6LxwQd4x1tIMnsmUxMvIH/qWGsccz6bt9Uln3S+sgAaqfQNhbGA8ufzs2fHuP/yqapGgP9Hh2g==, + } + engines: { node: ">=18" } + dev: true + + /lru-cache@5.1.1: + resolution: + { + integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==, + } + dependencies: + yallist: 3.1.1 + dev: true + + /lru-cache@7.18.3: + resolution: + { + integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==, + } + engines: { node: ">=12" } + dev: true + + /lunr@2.3.9: + resolution: + { + integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==, + } + dev: true + + /make-dir@3.1.0: + resolution: + { + integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==, + } + engines: { node: ">=8" } + dependencies: + semver: 6.3.1 + dev: true + + /make-dir@4.0.0: + resolution: + { + integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==, + } + engines: { node: ">=10" } + dependencies: + semver: 7.6.2 + dev: true + + /make-error@1.3.6: + resolution: + { + integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==, + } + dev: true + + /make-fetch-happen@10.2.1: + resolution: + { + integrity: sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + dependencies: + agentkeepalive: 4.5.0 + cacache: 16.1.3 + http-cache-semantics: 4.1.1 + http-proxy-agent: 5.0.0 + https-proxy-agent: 5.0.1 + is-lambda: 1.0.1 + lru-cache: 7.18.3 + minipass: 3.3.6 + minipass-collect: 1.0.2 + minipass-fetch: 2.1.2 + minipass-flush: 1.0.5 + minipass-pipeline: 1.2.4 + negotiator: 0.6.3 + promise-retry: 2.0.1 + socks-proxy-agent: 7.0.0 + ssri: 9.0.1 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + + /makeerror@1.0.12: + resolution: + { + integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==, + } + dependencies: + tmpl: 1.0.5 + dev: true + + /marked@4.3.0: + resolution: + { + integrity: sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==, + } + engines: { node: ">= 12" } + hasBin: true + dev: true + + /merge-stream@2.0.0: + resolution: + { + integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==, + } + dev: true + + /merge2@1.4.1: + resolution: + { + integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==, + } + engines: { node: ">= 8" } + dev: true + + /micromatch@4.0.7: + resolution: + { + integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==, + } + engines: { node: ">=8.6" } + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + dev: true + + /mime-db@1.52.0: + resolution: + { + integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==, + } + engines: { node: ">= 0.6" } + dev: false + + /mime-types@2.1.35: + resolution: + { + integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==, + } + engines: { node: ">= 0.6" } + dependencies: + mime-db: 1.52.0 + dev: false + + /mimic-fn@2.1.0: + resolution: + { + integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==, + } + engines: { node: ">=6" } + dev: true + + /minimatch@3.1.2: + resolution: + { + integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, + } + dependencies: + brace-expansion: 1.1.11 + dev: true + + /minimatch@5.1.6: + resolution: + { + integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==, + } + engines: { node: ">=10" } + dependencies: + brace-expansion: 2.0.1 + dev: true + + /minimatch@9.0.5: + resolution: + { + integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==, + } + engines: { node: ">=16 || 14 >=14.17" } + dependencies: + brace-expansion: 2.0.1 + + /minimist@1.2.8: + resolution: + { + integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==, + } + dev: true + + /minipass-collect@1.0.2: + resolution: + { + integrity: sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==, + } + engines: { node: ">= 8" } + dependencies: + minipass: 3.3.6 + dev: true + + /minipass-fetch@2.1.2: + resolution: + { + integrity: sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + dependencies: + minipass: 3.3.6 + minipass-sized: 1.0.3 + minizlib: 2.1.2 + optionalDependencies: + encoding: 0.1.13 + dev: true + + /minipass-flush@1.0.5: + resolution: + { + integrity: sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==, + } + engines: { node: ">= 8" } + dependencies: + minipass: 3.3.6 + dev: true + + /minipass-pipeline@1.2.4: + resolution: + { + integrity: sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==, + } + engines: { node: ">=8" } + dependencies: + minipass: 3.3.6 + dev: true + + /minipass-sized@1.0.3: + resolution: + { + integrity: sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==, + } + engines: { node: ">=8" } + dependencies: + minipass: 3.3.6 + dev: true + + /minipass@3.3.6: + resolution: + { + integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==, + } + engines: { node: ">=8" } + dependencies: + yallist: 4.0.0 + dev: true + + /minipass@5.0.0: + resolution: + { + integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==, + } + engines: { node: ">=8" } + dev: true + + /minipass@7.1.2: + resolution: + { + integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==, + } + engines: { node: ">=16 || 14 >=14.17" } + dev: true + + /minizlib@2.1.2: + resolution: + { + integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==, + } + engines: { node: ">= 8" } + dependencies: + minipass: 3.3.6 + yallist: 4.0.0 + dev: true + + /mkdirp@1.0.4: + resolution: + { + integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==, + } + engines: { node: ">=10" } + hasBin: true + dev: true + + /ml-array-max@1.2.4: + resolution: + { + integrity: sha512-BlEeg80jI0tW6WaPyGxf5Sa4sqvcyY6lbSn5Vcv44lp1I2GR6AWojfUvLnGTNsIXrZ8uqWmo8VcG1WpkI2ONMQ==, + } + dependencies: + is-any-array: 2.0.1 + dev: false + + /ml-array-min@1.2.3: + resolution: + { + integrity: sha512-VcZ5f3VZ1iihtrGvgfh/q0XlMobG6GQ8FsNyQXD3T+IlstDv85g8kfV0xUG1QPRO/t21aukaJowDzMTc7j5V6Q==, + } + dependencies: + is-any-array: 2.0.1 + dev: false + + /ml-array-rescale@1.3.7: + resolution: + { + integrity: sha512-48NGChTouvEo9KBctDfHC3udWnQKNKEWN0ziELvY3KG25GR5cA8K8wNVzracsqSW1QEkAXjTNx+ycgAv06/1mQ==, + } + dependencies: + is-any-array: 2.0.1 + ml-array-max: 1.2.4 + ml-array-min: 1.2.3 + dev: false + + /ml-matrix@6.11.1: + resolution: + { + integrity: sha512-Fvp1xF1O07tt6Ux9NcnEQTei5UlqbRpvvaFZGs7l3Ij+nOaEDcmbSVtxwNa8V4IfdyFI1NLNUteroMJ1S6vcEg==, + } + dependencies: + is-any-array: 2.0.1 + ml-array-rescale: 1.3.7 + dev: false + + /ml-spectra-processing@14.5.1: + resolution: + { + integrity: sha512-x/aVxJsusIw9Di3SbVc9Xs6By1ASDqsjxsnK2GRECz8DTIpjkuq6yuWvoQr7HPmk87h2cGygqz7jsXAYX75/bA==, + } + dependencies: + binary-search: 1.3.6 + cheminfo-types: 1.7.3 + fft.js: 4.0.4 + is-any-array: 2.0.1 + ml-matrix: 6.11.1 + ml-xsadd: 2.0.0 + spline-interpolator: 1.0.0 + dev: false + + /ml-xsadd@2.0.0: + resolution: + { + integrity: sha512-VoAYUqmPRmzKbbqRejjqceGFp3VF81Qe8XXFGU0UXLxB7Mf4GGvyGq5Qn3k4AiQgDEV6WzobqlPOd+j0+m6IrA==, + } + dev: false + + /ms@2.1.2: + resolution: + { + integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==, + } + + /ms@2.1.3: + resolution: + { + integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==, + } + + /mustache@4.2.0: + resolution: + { + integrity: sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==, + } + hasBin: true + dev: false + + /mz@2.7.0: + resolution: + { + integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==, + } + dependencies: + any-promise: 1.3.0 + object-assign: 4.1.1 + thenify-all: 1.6.0 + dev: true + + /natural-compare@1.4.0: + resolution: + { + integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==, + } + dev: true + + /negotiator@0.6.3: + resolution: + { + integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==, + } + engines: { node: ">= 0.6" } + dev: true + + /neo-async@2.6.2: + resolution: + { + integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==, + } + dev: true + + /node-addon-api@7.1.0: + resolution: + { + integrity: sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==, + } + engines: { node: ^16 || ^18 || >= 20 } + dev: true + + /node-domexception@1.0.0: + resolution: + { + integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==, + } + engines: { node: ">=10.5.0" } + dev: false + + /node-fetch@2.7.0: + resolution: + { + integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==, + } + engines: { node: 4.x || >=6.0.0 } + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + dependencies: + whatwg-url: 5.0.0 + + /node-gyp@9.4.1: + resolution: + { + integrity: sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ==, + } + engines: { node: ^12.13 || ^14.13 || >=16 } + hasBin: true + dependencies: + env-paths: 2.2.1 + exponential-backoff: 3.1.1 + glob: 7.2.3 + graceful-fs: 4.2.11 + make-fetch-happen: 10.2.1 + nopt: 6.0.0 + npmlog: 6.0.2 + rimraf: 3.0.2 + semver: 7.6.2 + tar: 6.2.1 + which: 2.0.2 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + + /node-int64@0.4.0: + resolution: + { + integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==, + } + dev: true + + /node-releases@2.0.14: + resolution: + { + integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==, + } + dev: true + + /nopt@5.0.0: + resolution: + { + integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==, + } + engines: { node: ">=6" } + hasBin: true + dependencies: + abbrev: 1.1.1 + dev: true + + /nopt@6.0.0: + resolution: + { + integrity: sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + hasBin: true + dependencies: + abbrev: 1.1.1 + dev: true + + /normalize-path@3.0.0: + resolution: + { + integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==, + } + engines: { node: ">=0.10.0" } + dev: true + + /npm-run-path@4.0.1: + resolution: + { + integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==, + } + engines: { node: ">=8" } + dependencies: + path-key: 3.1.1 + dev: true + + /npmlog@5.0.1: + resolution: + { + integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==, + } + deprecated: This package is no longer supported. + dependencies: + are-we-there-yet: 2.0.0 + console-control-strings: 1.1.0 + gauge: 3.0.2 + set-blocking: 2.0.0 + dev: true + + /npmlog@6.0.2: + resolution: + { + integrity: sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + deprecated: This package is no longer supported. + dependencies: + are-we-there-yet: 3.0.1 + console-control-strings: 1.1.0 + gauge: 4.0.4 + set-blocking: 2.0.0 + dev: true + + /object-assign@4.1.1: + resolution: + { + integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==, + } + engines: { node: ">=0.10.0" } + dev: true + + /once@1.4.0: + resolution: + { + integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, + } + dependencies: + wrappy: 1.0.2 + dev: true + + /onetime@5.1.2: + resolution: + { + integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==, + } + engines: { node: ">=6" } + dependencies: + mimic-fn: 2.1.0 + dev: true + + /openai@4.47.1: + resolution: + { + integrity: sha512-WWSxhC/69ZhYWxH/OBsLEirIjUcfpQ5+ihkXKp06hmeYXgBBIUCa9IptMzYx6NdkiOCsSGYCnTIsxaic3AjRCQ==, + } + hasBin: true + dependencies: + "@types/node": 18.19.39 + "@types/node-fetch": 2.6.11 + abort-controller: 3.0.0 + agentkeepalive: 4.5.0 + form-data-encoder: 1.7.2 + formdata-node: 4.4.1 + node-fetch: 2.7.0 + web-streams-polyfill: 3.3.3 + transitivePeerDependencies: + - encoding + dev: false + + /openapi3-ts@4.3.3: + resolution: + { + integrity: sha512-LKkzBGJcZ6wdvkKGMoSvpK+0cbN5Xc3XuYkJskO+vjEQWJgs1kgtyUk0pjf8KwPuysv323Er62F5P17XQl96Qg==, + } + dependencies: + yaml: 2.4.5 + dev: false + + /p-limit@2.3.0: + resolution: + { + integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==, + } + engines: { node: ">=6" } + dependencies: + p-try: 2.2.0 + dev: true + + /p-limit@3.1.0: + resolution: + { + integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==, + } + engines: { node: ">=10" } + dependencies: + yocto-queue: 0.1.0 + dev: true + + /p-locate@4.1.0: + resolution: + { + integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==, + } + engines: { node: ">=8" } + dependencies: + p-limit: 2.3.0 + dev: true + + /p-map@4.0.0: + resolution: + { + integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==, + } + engines: { node: ">=10" } + dependencies: + aggregate-error: 3.1.0 + dev: true + + /p-try@2.2.0: + resolution: + { + integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==, + } + engines: { node: ">=6" } + dev: true + + /package-json-from-dist@1.0.0: + resolution: + { + integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==, + } + dev: true + + /parse-json@5.2.0: + resolution: + { + integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==, + } + engines: { node: ">=8" } + dependencies: + "@babel/code-frame": 7.24.7 + error-ex: 1.3.2 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + dev: true + + /path-exists@4.0.0: + resolution: + { + integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==, + } + engines: { node: ">=8" } + dev: true + + /path-is-absolute@1.0.1: + resolution: + { + integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==, + } + engines: { node: ">=0.10.0" } + dev: true + + /path-key@3.1.1: + resolution: + { + integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==, + } + engines: { node: ">=8" } + dev: true + + /path-parse@1.0.7: + resolution: + { + integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==, + } + dev: true + + /path-scurry@1.11.1: + resolution: + { + integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==, + } + engines: { node: ">=16 || 14 >=14.18" } + dependencies: + lru-cache: 10.3.1 + minipass: 7.1.2 + dev: true + + /path-type@4.0.0: + resolution: + { + integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==, + } + engines: { node: ">=8" } + dev: true + + /picocolors@1.0.1: + resolution: + { + integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==, + } + dev: true + + /picomatch@2.3.1: + resolution: + { + integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, + } + engines: { node: ">=8.6" } + dev: true + + /pirates@4.0.6: + resolution: + { + integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==, + } + engines: { node: ">= 6" } + dev: true + + /pkg-dir@4.2.0: + resolution: + { + integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==, + } + engines: { node: ">=8" } + dependencies: + find-up: 4.1.0 + dev: true + + /pluralize@8.0.0: + resolution: + { + integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==, + } + engines: { node: ">=4" } + dev: false + + /postcss-load-config@4.0.2: + resolution: + { + integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==, + } + engines: { node: ">= 14" } + peerDependencies: + postcss: ">=8.0.9" + ts-node: ">=9.0.0" + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + dependencies: + lilconfig: 3.1.2 + yaml: 2.4.5 + dev: true + + /pretty-format@29.7.0: + resolution: + { + integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + dependencies: + "@jest/schemas": 29.6.3 + ansi-styles: 5.2.0 + react-is: 18.3.1 + dev: true + + /promise-inflight@1.0.1: + resolution: + { + integrity: sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==, + } + peerDependencies: + bluebird: "*" + peerDependenciesMeta: + bluebird: + optional: true + dev: true + + /promise-retry@2.0.1: + resolution: + { + integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==, + } + engines: { node: ">=10" } + dependencies: + err-code: 2.0.3 + retry: 0.12.0 + dev: true + + /prompts@2.4.2: + resolution: + { + integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==, + } + engines: { node: ">= 6" } + dependencies: + kleur: 3.0.3 + sisteransi: 1.0.5 + dev: true + + /punycode@2.3.1: + resolution: + { + integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==, + } + engines: { node: ">=6" } + + /pure-rand@6.1.0: + resolution: + { + integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==, + } + dev: true + + /queue-microtask@1.2.3: + resolution: + { + integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, + } + dev: true + + /react-is@18.3.1: + resolution: + { + integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==, + } + dev: true + + /readable-stream@3.6.2: + resolution: + { + integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==, + } + engines: { node: ">= 6" } + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + dev: true + + /readdirp@3.6.0: + resolution: + { + integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, + } + engines: { node: ">=8.10.0" } + dependencies: + picomatch: 2.3.1 + dev: true + + /require-directory@2.1.1: + resolution: + { + integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==, + } + engines: { node: ">=0.10.0" } + dev: true + + /require-from-string@2.0.2: + resolution: + { + integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==, + } + engines: { node: ">=0.10.0" } + dev: false + + /resolve-cwd@3.0.0: + resolution: + { + integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==, + } + engines: { node: ">=8" } + dependencies: + resolve-from: 5.0.0 + dev: true + + /resolve-from@5.0.0: + resolution: + { + integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==, + } + engines: { node: ">=8" } + dev: true + + /resolve-pkg-maps@1.0.0: + resolution: + { + integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==, + } + dev: true + + /resolve.exports@2.0.2: + resolution: + { + integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==, + } + engines: { node: ">=10" } + dev: true + + /resolve@1.22.8: + resolution: + { + integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==, + } + hasBin: true + dependencies: + is-core-module: 2.14.0 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + dev: true + + /retry@0.12.0: + resolution: + { + integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==, + } + engines: { node: ">= 4" } + dev: true + + /reusify@1.0.4: + resolution: + { + integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, + } + engines: { iojs: ">=1.0.0", node: ">=0.10.0" } + dev: true + + /rimraf@3.0.2: + resolution: + { + integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==, + } + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true + dependencies: + glob: 7.2.3 + dev: true + + /rollup@4.18.0: + resolution: + { + integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==, + } + engines: { node: ">=18.0.0", npm: ">=8.0.0" } + hasBin: true + dependencies: + "@types/estree": 1.0.5 + optionalDependencies: + "@rollup/rollup-android-arm-eabi": 4.18.0 + "@rollup/rollup-android-arm64": 4.18.0 + "@rollup/rollup-darwin-arm64": 4.18.0 + "@rollup/rollup-darwin-x64": 4.18.0 + "@rollup/rollup-linux-arm-gnueabihf": 4.18.0 + "@rollup/rollup-linux-arm-musleabihf": 4.18.0 + "@rollup/rollup-linux-arm64-gnu": 4.18.0 + "@rollup/rollup-linux-arm64-musl": 4.18.0 + "@rollup/rollup-linux-powerpc64le-gnu": 4.18.0 + "@rollup/rollup-linux-riscv64-gnu": 4.18.0 + "@rollup/rollup-linux-s390x-gnu": 4.18.0 + "@rollup/rollup-linux-x64-gnu": 4.18.0 + "@rollup/rollup-linux-x64-musl": 4.18.0 + "@rollup/rollup-win32-arm64-msvc": 4.18.0 + "@rollup/rollup-win32-ia32-msvc": 4.18.0 + "@rollup/rollup-win32-x64-msvc": 4.18.0 + fsevents: 2.3.3 + dev: true + + /run-parallel@1.2.0: + resolution: + { + integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==, + } + dependencies: + queue-microtask: 1.2.3 + dev: true + + /safe-buffer@5.2.1: + resolution: + { + integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==, + } + dev: true + + /safer-buffer@2.1.2: + resolution: + { + integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==, + } + requiresBuild: true + dev: true + optional: true + + /semver@6.3.1: + resolution: + { + integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==, + } + hasBin: true + dev: true + + /semver@7.6.2: + resolution: + { + integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==, + } + engines: { node: ">=10" } + hasBin: true + dev: true + + /set-blocking@2.0.0: + resolution: + { + integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==, + } + dev: true + + /shebang-command@2.0.0: + resolution: + { + integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==, + } + engines: { node: ">=8" } + dependencies: + shebang-regex: 3.0.0 + dev: true + + /shebang-regex@3.0.0: + resolution: + { + integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==, + } + engines: { node: ">=8" } + dev: true + + /shiki@0.14.7: + resolution: + { + integrity: sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==, + } + dependencies: + ansi-sequence-parser: 1.1.1 + jsonc-parser: 3.3.1 + vscode-oniguruma: 1.7.0 + vscode-textmate: 8.0.0 + dev: true + + /signal-exit@3.0.7: + resolution: + { + integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==, + } + dev: true + + /signal-exit@4.1.0: + resolution: + { + integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==, + } + engines: { node: ">=14" } + dev: true + + /simple-git@3.25.0: + resolution: + { + integrity: sha512-KIY5sBnzc4yEcJXW7Tdv4viEz8KyG+nU0hay+DWZasvdFOYKeUZ6Xc25LUHHjw0tinPT7O1eY6pzX7pRT1K8rw==, + } + dependencies: + "@kwsites/file-exists": 1.1.1 + "@kwsites/promise-deferred": 1.1.1 + debug: 4.3.5 + transitivePeerDependencies: + - supports-color + dev: false + + /sisteransi@1.0.5: + resolution: + { + integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==, + } + dev: true + + /slash@3.0.0: + resolution: + { + integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==, + } + engines: { node: ">=8" } + dev: true + + /smart-buffer@4.2.0: + resolution: + { + integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==, + } + engines: { node: ">= 6.0.0", npm: ">= 3.0.0" } + dev: true + + /socks-proxy-agent@7.0.0: + resolution: + { + integrity: sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==, + } + engines: { node: ">= 10" } + dependencies: + agent-base: 6.0.2 + debug: 4.3.5 + socks: 2.8.3 + transitivePeerDependencies: + - supports-color + dev: true + + /socks@2.8.3: + resolution: + { + integrity: sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==, + } + engines: { node: ">= 10.0.0", npm: ">= 3.0.0" } + dependencies: + ip-address: 9.0.5 + smart-buffer: 4.2.0 + dev: true + + /source-map-support@0.5.13: + resolution: + { + integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==, + } + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + dev: true + + /source-map-support@0.5.21: + resolution: + { + integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==, + } + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + dev: true + + /source-map@0.6.1: + resolution: + { + integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, + } + engines: { node: ">=0.10.0" } + dev: true + + /source-map@0.8.0-beta.0: + resolution: + { + integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==, + } + engines: { node: ">= 8" } + dependencies: + whatwg-url: 7.1.0 + dev: true + + /spline-interpolator@1.0.0: + resolution: + { + integrity: sha512-s8lowgsWE5wjHGEsk/4VADp7xAHw+pNy3OGp96fYjVTwLSx/83+BBmTFP2wZDRM0kj45q8zSyOV5fUcGn4hLEw==, + } + dependencies: + d3-array: 0.7.1 + dev: false + + /sprintf-js@1.0.3: + resolution: + { + integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==, + } + dev: true + + /sprintf-js@1.1.3: + resolution: + { + integrity: sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==, + } + dev: true + + /ssri@9.0.1: + resolution: + { + integrity: sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + dependencies: + minipass: 3.3.6 + dev: true + + /stack-utils@2.0.6: + resolution: + { + integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==, + } + engines: { node: ">=10" } + dependencies: + escape-string-regexp: 2.0.0 + dev: true + + /string-length@4.0.2: + resolution: + { + integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==, + } + engines: { node: ">=10" } + dependencies: + char-regex: 1.0.2 + strip-ansi: 6.0.1 + dev: true + + /string-width@4.2.3: + resolution: + { + integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==, + } + engines: { node: ">=8" } + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + /string-width@5.1.2: + resolution: + { + integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==, + } + engines: { node: ">=12" } + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.1.0 + dev: true + + /string_decoder@1.3.0: + resolution: + { + integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==, + } + dependencies: + safe-buffer: 5.2.1 + dev: true + + /strip-ansi@6.0.1: + resolution: + { + integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, + } + engines: { node: ">=8" } + dependencies: + ansi-regex: 5.0.1 + + /strip-ansi@7.1.0: + resolution: + { + integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==, + } + engines: { node: ">=12" } + dependencies: + ansi-regex: 6.0.1 + dev: true + + /strip-bom@4.0.0: + resolution: + { + integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==, + } + engines: { node: ">=8" } + dev: true + + /strip-final-newline@2.0.0: + resolution: + { + integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==, + } + engines: { node: ">=6" } + dev: true + + /strip-json-comments@3.1.1: + resolution: + { + integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==, + } + engines: { node: ">=8" } + dev: true + + /sucrase@3.35.0: + resolution: + { + integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==, + } + engines: { node: ">=16 || 14 >=14.17" } + hasBin: true + dependencies: + "@jridgewell/gen-mapping": 0.3.5 + commander: 4.1.1 + glob: 10.4.3 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.6 + ts-interface-checker: 0.1.13 + dev: true + + /supports-color@5.5.0: + resolution: + { + integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==, + } + engines: { node: ">=4" } + dependencies: + has-flag: 3.0.0 + dev: true + + /supports-color@7.2.0: + resolution: + { + integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==, + } + engines: { node: ">=8" } + dependencies: + has-flag: 4.0.0 + + /supports-color@8.1.1: + resolution: + { + integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==, + } + engines: { node: ">=10" } + dependencies: + has-flag: 4.0.0 + dev: true + + /supports-preserve-symlinks-flag@1.0.0: + resolution: + { + integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==, + } + engines: { node: ">= 0.4" } + dev: true + + /tar@6.2.1: + resolution: + { + integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==, + } + engines: { node: ">=10" } + dependencies: + chownr: 2.0.0 + fs-minipass: 2.1.0 + minipass: 5.0.0 + minizlib: 2.1.2 + mkdirp: 1.0.4 + yallist: 4.0.0 + dev: true + + /test-exclude@6.0.0: + resolution: + { + integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==, + } + engines: { node: ">=8" } + dependencies: + "@istanbuljs/schema": 0.1.3 + glob: 7.2.3 + minimatch: 3.1.2 + dev: true + + /thenify-all@1.6.0: + resolution: + { + integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==, + } + engines: { node: ">=0.8" } + dependencies: + thenify: 3.3.1 + dev: true + + /thenify@3.3.1: + resolution: + { + integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==, + } + dependencies: + any-promise: 1.3.0 + dev: true + + /tmpl@1.0.5: + resolution: + { + integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==, + } + dev: true + + /to-fast-properties@2.0.0: + resolution: + { + integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==, + } + engines: { node: ">=4" } + dev: true + + /to-regex-range@5.0.1: + resolution: + { + integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, + } + engines: { node: ">=8.0" } + dependencies: + is-number: 7.0.0 + dev: true + + /tr46@0.0.3: + resolution: + { + integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==, + } + + /tr46@1.0.1: + resolution: + { + integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==, + } + dependencies: + punycode: 2.3.1 + dev: true + + /tree-kill@1.2.2: + resolution: + { + integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==, + } + hasBin: true + dev: true + + /ts-interface-checker@0.1.13: + resolution: + { + integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==, + } + dev: true + + /ts-jest@29.1.5(@babel/core@7.24.7)(esbuild@0.21.5)(jest@29.7.0)(typescript@5.5.3): + resolution: + { + integrity: sha512-UuClSYxM7byvvYfyWdFI+/2UxMmwNyJb0NPkZPQE2hew3RurV7l7zURgOHAd/1I1ZdPpe3GUsXNXAcN8TFKSIg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0 } + hasBin: true + peerDependencies: + "@babel/core": ">=7.0.0-beta.0 <8" + "@jest/transform": ^29.0.0 + "@jest/types": ^29.0.0 + babel-jest: ^29.0.0 + esbuild: "*" + jest: ^29.0.0 + typescript: ">=4.3 <6" + peerDependenciesMeta: + "@babel/core": + optional: true + "@jest/transform": + optional: true + "@jest/types": + optional: true + babel-jest: + optional: true + esbuild: + optional: true + dependencies: + "@babel/core": 7.24.7 + bs-logger: 0.2.6 + esbuild: 0.21.5 + fast-json-stable-stringify: 2.1.0 + jest: 29.7.0(@types/node@20.14.10) + jest-util: 29.7.0 + json5: 2.2.3 + lodash.memoize: 4.1.2 + make-error: 1.3.6 + semver: 7.6.2 + typescript: 5.5.3 + yargs-parser: 21.1.1 + dev: true + + /tsup@8.1.0(typescript@5.5.3): + resolution: + { + integrity: sha512-UFdfCAXukax+U6KzeTNO2kAARHcWxmKsnvSPXUcfA1D+kU05XDccCrkffCQpFaWDsZfV0jMyTsxU39VfCp6EOg==, + } + engines: { node: ">=18" } + hasBin: true + peerDependencies: + "@microsoft/api-extractor": ^7.36.0 + "@swc/core": ^1 + postcss: ^8.4.12 + typescript: ">=4.5.0" + peerDependenciesMeta: + "@microsoft/api-extractor": + optional: true + "@swc/core": + optional: true + postcss: + optional: true + typescript: + optional: true + dependencies: + bundle-require: 4.2.1(esbuild@0.21.5) + cac: 6.7.14 + chokidar: 3.6.0 + debug: 4.3.5 + esbuild: 0.21.5 + execa: 5.1.1 + globby: 11.1.0 + joycon: 3.1.1 + postcss-load-config: 4.0.2 + resolve-from: 5.0.0 + rollup: 4.18.0 + source-map: 0.8.0-beta.0 + sucrase: 3.35.0 + tree-kill: 1.2.2 + typescript: 5.5.3 + transitivePeerDependencies: + - supports-color + - ts-node + dev: true + + /tsx@3.14.0: + resolution: + { + integrity: sha512-xHtFaKtHxM9LOklMmJdI3BEnQq/D5F73Of2E1GDrITi9sgoVkvIsrQUTY1G8FlmGtA+awCI4EBlTRRYxkL2sRg==, + } + hasBin: true + dependencies: + esbuild: 0.18.20 + get-tsconfig: 4.7.5 + source-map-support: 0.5.21 + optionalDependencies: + fsevents: 2.3.3 + dev: true + + /type-detect@4.0.8: + resolution: + { + integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==, + } + engines: { node: ">=4" } + dev: true + + /type-fest@0.21.3: + resolution: + { + integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==, + } + engines: { node: ">=10" } + dev: true + + /typedoc-plugin-markdown@3.17.1(typedoc@0.25.13): + resolution: + { + integrity: sha512-QzdU3fj0Kzw2XSdoL15ExLASt2WPqD7FbLeaqwT70+XjKyTshBnUlQA5nNREO1C2P8Uen0CDjsBLMsCQ+zd0lw==, + } + peerDependencies: + typedoc: ">=0.24.0" + dependencies: + handlebars: 4.7.8 + typedoc: 0.25.13(typescript@5.5.3) + dev: true + + /typedoc@0.25.13(typescript@5.5.3): + resolution: + { + integrity: sha512-pQqiwiJ+Z4pigfOnnysObszLiU3mVLWAExSPf+Mu06G/qsc3wzbuM56SZQvONhHLncLUhYzOVkjFFpFfL5AzhQ==, + } + engines: { node: ">= 16" } + hasBin: true + peerDependencies: + typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x + dependencies: + lunr: 2.3.9 + marked: 4.3.0 + minimatch: 9.0.5 + shiki: 0.14.7 + typescript: 5.5.3 + dev: true + + /typescript@5.5.3: + resolution: + { + integrity: sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==, + } + engines: { node: ">=14.17" } + hasBin: true + dev: true + + /uglify-js@3.18.0: + resolution: + { + integrity: sha512-SyVVbcNBCk0dzr9XL/R/ySrmYf0s372K6/hFklzgcp2lBFyXtw4I7BOdDjlLhE1aVqaI/SHWXWmYdlZxuyF38A==, + } + engines: { node: ">=0.8.0" } + hasBin: true + requiresBuild: true + dev: true + optional: true + + /undici-types@5.26.5: + resolution: + { + integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==, + } + + /unique-filename@2.0.1: + resolution: + { + integrity: sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + dependencies: + unique-slug: 3.0.0 + dev: true + + /unique-slug@3.0.0: + resolution: + { + integrity: sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + dependencies: + imurmurhash: 0.1.4 + dev: true + + /update-browserslist-db@1.1.0(browserslist@4.23.1): + resolution: + { + integrity: sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==, + } + hasBin: true + peerDependencies: + browserslist: ">= 4.21.0" + dependencies: + browserslist: 4.23.1 + escalade: 3.1.2 + picocolors: 1.0.1 + dev: true + + /uri-js@4.4.1: + resolution: + { + integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==, + } + dependencies: + punycode: 2.3.1 + dev: false + + /util-deprecate@1.0.2: + resolution: + { + integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==, + } + dev: true + + /uuid@3.4.0: + resolution: + { + integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==, + } + deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. + hasBin: true + dev: true + + /uuid@9.0.1: + resolution: + { + integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==, + } + hasBin: true + dev: false + + /v8-to-istanbul@9.3.0: + resolution: + { + integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==, + } + engines: { node: ">=10.12.0" } + dependencies: + "@jridgewell/trace-mapping": 0.3.25 + "@types/istanbul-lib-coverage": 2.0.6 + convert-source-map: 2.0.0 + dev: true + + /validate.io-array@1.0.6: + resolution: + { + integrity: sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==, + } + dev: false + + /validate.io-function@1.0.2: + resolution: + { + integrity: sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==, + } + dev: false + + /vscode-oniguruma@1.7.0: + resolution: + { + integrity: sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==, + } + dev: true + + /vscode-textmate@8.0.0: + resolution: + { + integrity: sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==, + } + dev: true + + /walker@1.0.8: + resolution: + { + integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==, + } + dependencies: + makeerror: 1.0.12 + dev: true + + /web-streams-polyfill@3.3.3: + resolution: + { + integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==, + } + engines: { node: ">= 8" } + dev: false + + /web-streams-polyfill@4.0.0-beta.3: + resolution: + { + integrity: sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==, + } + engines: { node: ">= 14" } + dev: false + + /webidl-conversions@3.0.1: + resolution: + { + integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==, + } + + /webidl-conversions@4.0.2: + resolution: + { + integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==, + } + dev: true + + /whatwg-url@5.0.0: + resolution: + { + integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==, + } + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + + /whatwg-url@7.1.0: + resolution: + { + integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==, + } + dependencies: + lodash.sortby: 4.7.0 + tr46: 1.0.1 + webidl-conversions: 4.0.2 + dev: true + + /which@2.0.2: + resolution: + { + integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==, + } + engines: { node: ">= 8" } + hasBin: true + dependencies: + isexe: 2.0.0 + dev: true + + /wide-align@1.1.5: + resolution: + { + integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==, + } + dependencies: + string-width: 4.2.3 + dev: true + + /wordwrap@1.0.0: + resolution: + { + integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==, + } + dev: true + + /wrap-ansi@7.0.0: + resolution: + { + integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==, + } + engines: { node: ">=10" } + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + dev: true + + /wrap-ansi@8.1.0: + resolution: + { + integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==, + } + engines: { node: ">=12" } + dependencies: + ansi-styles: 6.2.1 + string-width: 5.1.2 + strip-ansi: 7.1.0 + dev: true + + /wrappy@1.0.2: + resolution: + { + integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==, + } + dev: true + + /write-file-atomic@4.0.2: + resolution: + { + integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } + dependencies: + imurmurhash: 0.1.4 + signal-exit: 3.0.7 + dev: true + + /y18n@5.0.8: + resolution: + { + integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==, + } + engines: { node: ">=10" } + dev: true + + /yallist@3.1.1: + resolution: + { + integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==, + } + dev: true + + /yallist@4.0.0: + resolution: + { + integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==, + } + dev: true + + /yaml@2.4.5: + resolution: + { + integrity: sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg==, + } + engines: { node: ">= 14" } + hasBin: true + + /yargs-parser@21.1.1: + resolution: + { + integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==, + } + engines: { node: ">=12" } + dev: true + + /yargs@17.7.2: + resolution: + { + integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==, + } + engines: { node: ">=12" } + dependencies: + cliui: 8.0.1 + escalade: 3.1.2 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + dev: true + + /yocto-queue@0.1.0: + resolution: + { + integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==, + } + engines: { node: ">=10" } + dev: true + + /zod-to-json-schema@3.23.1(zod@3.23.8): + resolution: + { + integrity: sha512-oT9INvydob1XV0v1d2IadrR74rLtDInLvDFfAa1CG0Pmg/vxATk7I2gSelfj271mbzeM4Da0uuDQE/Nkj3DWNw==, + } + peerDependencies: + zod: ^3.23.3 + dependencies: + zod: 3.23.8 + dev: false + + /zod@3.23.8: + resolution: + { + integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==, + } + dev: false diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml new file mode 100644 index 0000000..eba609a --- /dev/null +++ b/pnpm-workspace.yaml @@ -0,0 +1,3 @@ +packages: + - "." + - "evals" diff --git a/py/autoevals/llm.py b/py/autoevals/llm.py index 24bdb8a..14c2db2 100644 --- a/py/autoevals/llm.py +++ b/py/autoevals/llm.py @@ -29,6 +29,7 @@ "\n", " " ) +DEFAULT_MODEL = "gpt-4o" PLAIN_RESPONSE_SCHEMA = { "properties": {"choice": {"description": "The choice", "title": "Choice", "type": "string"}}, @@ -41,9 +42,8 @@ "properties": { "reasons": { "description": "Write out in a step by step manner your reasoning to be sure that your conclusion is correct. Avoid simply stating the correct answer at the outset.", - "items": {"type": "string"}, - "title": "Reasons", - "type": "array", + "title": "Reasoning", + "type": "string", }, "choice": {"description": "The choice", "title": "Choice", "type": "string"}, }, @@ -53,7 +53,7 @@ } -def build_classification_functions(useCoT, choice_strings): +def build_classification_tools(useCoT, choice_strings): params = COT_RESPONSE_SCHEMA if useCoT else PLAIN_RESPONSE_SCHEMA enum_params = { **params, @@ -63,7 +63,14 @@ def build_classification_functions(useCoT, choice_strings): }, } return [ - {"name": "select_choice", "description": "Call this function to select a choice.", "parameters": enum_params} + { + "type": "function", + "function": { + "name": "select_choice", + "description": "Call this function to select a choice.", + "parameters": enum_params, + }, + } ] @@ -101,7 +108,7 @@ def __init__( messages: List, model, choice_scores, - classification_functions, + classification_tools, render_args=None, max_tokens=None, temperature=None, @@ -130,7 +137,7 @@ def __init__( self.render_args.update(render_args) self.choice_scores = choice_scores - self.classification_functions = classification_functions + self.classification_tools = classification_tools def _name(self): return self.name @@ -139,8 +146,8 @@ def _build_args(self, output, expected, **kwargs): return dict( model=self.model, messages=self._render_messages(output=output, expected=expected, **kwargs), - functions=self.classification_functions, - function_call={"name": "select_choice"}, + tools=self.classification_tools, + tool_choice={"type": "function", "function": {"name": "select_choice"}}, ) def _render_messages(self, **kwargs): @@ -168,12 +175,17 @@ def _request_args(self, output, expected, **kwargs): def _process_response(self, resp): metadata = {} - args = json.loads(resp["function_call"]["arguments"]) + if "tool_calls" not in resp: + raise ValueError("No tool call found in response") + tool_call = resp["tool_calls"][0] + if tool_call["function"]["name"] != "select_choice": + raise ValueError(f"Unexpected tool call ({tool_call['function']['name']}) found in response") + args = json.loads(tool_call["function"]["arguments"]) + + metadata["choice"] = args["choice"].strip() if "reasons" in args: metadata["rationale"] = "\n".join(args["reasons"]) - if "function_call" not in resp: - raise ValueError("No function call found in response") - metadata["choice"] = args["choice"].strip() + score = self.choice_scores[metadata["choice"]] return Score(name=self.name, score=score, metadata=metadata) @@ -212,7 +224,7 @@ def __init__( name, prompt_template, choice_scores, - model="gpt-3.5-turbo", + model=DEFAULT_MODEL, use_cot=True, max_tokens=512, temperature=0, @@ -236,7 +248,7 @@ def __init__( messages=messages, model=model, choice_scores=choice_scores, - classification_functions=build_classification_functions(use_cot, choice_strings), + classification_tools=build_classification_tools(use_cot, choice_strings), max_tokens=max_tokens, temperature=temperature, engine=engine, diff --git a/py/autoevals/test_llm.py b/py/autoevals/test_llm.py index 0285703..2ae6d94 100644 --- a/py/autoevals/test_llm.py +++ b/py/autoevals/test_llm.py @@ -4,7 +4,7 @@ import chevron from autoevals.llm import * -from autoevals.llm import build_classification_functions +from autoevals.llm import build_classification_tools def test_template_html(): @@ -41,7 +41,7 @@ def test_openai(): ], model="gpt-3.5-turbo", choice_scores={"1": 1, "2": 0}, - classification_functions=build_classification_functions(useCoT=True, choice_strings=["1", "2"]), + classification_tools=build_classification_tools(useCoT=True, choice_strings=["1", "2"]), max_tokens=500, ) @@ -129,7 +129,7 @@ def test_battle(): ) print(response.as_json(indent=2)) - assert response.score == (1 if use_cot else 0) + assert response.score == 1 assert response.error is None response = e(instructions="Add the following numbers: 1, 2, 3", output="6", expected="6") diff --git a/py/autoevals/test_partial.py b/py/autoevals/test_partial.py index fd8623d..1604d11 100644 --- a/py/autoevals/test_partial.py +++ b/py/autoevals/test_partial.py @@ -7,12 +7,10 @@ def test_partial(): levenshtein_partial = Levenshtein.partial(expected="abcd")()(output="abc") assert levenshtein_partial.score == levenshtein_basic.score assert levenshtein_partial.name == levenshtein_basic.name - assert levenshtein_partial.metadata == levenshtein_basic.metadata assert levenshtein_partial.name == "Levenshtein" closedqa_basic = ClosedQA()(criteria="Is the answer correct?", input="What is 1+1?", output="2") closedqa_partial = ClosedQA.partial(criteria="Is the answer correct?")()(input="What is 1+1?", output="2") assert closedqa_partial.score == closedqa_basic.score assert closedqa_partial.name == closedqa_basic.name - assert closedqa_partial.metadata == closedqa_basic.metadata assert closedqa_partial.name == "ClosedQA"