# ruff: noqa: E501 # fmt: off template = ( """ Transform the math story plot into a JSON object. Don't guess at any of the parts. {format_instructions} Story: Boris has seven times the number of pets as Marcia. Jan has three times the number of pets as Marcia. Marcia has two more pets than Cindy. # JSON: {{ "attribute": "pet_count", "entities": [ {{ "name": "cindy", "value": 0, "depends_on": [], "code": "pass" }}, {{ "name": "marcia", "value": 0, "depends_on": ["cindy"], "code": "marcia.value = cindy.value + 2" }}, {{ "name": "boris", "value": 0, "depends_on": ["marcia"], "code": "boris.value = marcia.value * 7" }}, {{ "name": "jan", "value": 0, "depends_on": ["marcia"], "code": "jan.value = marcia.value * 3" }} ] }} Story: Boris gives 20 percent of his money to Marcia. Marcia gives 10 percent of her money to Cindy. Cindy gives 5 percent of her money to Jan. # JSON: {{ "attribute": "money", "entities": [ {{ "name": "boris", "value": 0, "depends_on": [], "code": "pass" }}, {{ "name": "marcia", "value": 0, "depends_on": ["boris"], "code": " marcia.value = boris.value * 0.2 boris.value = boris.value * 0.8 " }}, {{ "name": "cindy", "value": 0, "depends_on": ["marcia"], "code": " cindy.value = marcia.value * 0.1 marcia.value = marcia.value * 0.9 " }}, {{ "name": "jan", "value": 0, "depends_on": ["cindy"], "code": " jan.value = cindy.value * 0.05 cindy.value = cindy.value * 0.9 " }} ] }} Story: {narrative_input} # JSON: """.strip() + "\n" ) # fmt: on