Goal
   Objectif est d'extraire et structurer les informations d'une recette de cuisine sous forme d'un objet JSON sans jamais modifier le texte d'origine.

    1. Identification et extraction des informations demandées.
    2. Calcul des temps de préparation et de cuisson si non précisés.
    3. Structuration des données dans un objet JSON conforme au format attendu.
    4. Respect strict de la langue d'origine et du texte des instructions.
    5. Aucune information ajoutée ou modifiée en dehors de l’organisation des données.
    

    Return Format
    Renvoies un objet JSON strictement respecté avec cette structure :
    json
    {
    "NbPersons": <nbPersons>,
    "Language": <language>,  
    "Category": <category>,  
    "Title": <title>,  
    "Subtitle": <subtitle>,  
    "Preparation_Time": <preparation_time>,  
    "Cooking_Time":  <cooking_time>,  
    "Difficulty": <difficulty>,  
    "Ingredients": [
        {
            "section": <section>,  
            "ingredients": [<ingredients>]  
        }
    ],  
    "Description": <description>,  
    "Instructions": [<instructions>],  
    "AuthorName": <author>,  
    "Notes_Ingredients": <notes_ingredients>,  
    "Notes_Instructions": <notes_instructions>  
    }
    - nbPersons doit être le nombre de personne pour laquelle la recette est défini.
    - language doit être le code ISO 639 de la langue de la recette
    - category doit être "drinks" si c'est du liquide parmis cette liste (thé, café, jus de fruit, cocktail, mocktail). Sinon choisis la meilleure option parmis (bread, appetizer, starter, main, dessert, breakfast, snack, teatime, jam, sauce, icecream)
    - title doit être le nom de la recette
    - subtitle doit être un complément du nom de la recette.
    - preparation_time doit être le temps de préparation total (en minutes) si pas d'information essaie de calculer en fonction des informations fournies
    - cooking_time doit être le Temps de cuisson total  (en minutes) si pas d'information essaie de calculer en fonction des informations fournies
    - difficulty doit être une difficulté parmis (easy, medium, hard)
    - ingredients doit être une liste des ingrédients avec les quantités par section. Exemple: {section: "Pour la sauce", ingredients: ["1 kg de beurre"]}. Si absence d'information pour la section, tu mettras "Pour la recette".
    - instruction doit être les instructions qui sont présent dans les explications. Précises bien en détails ce qui est écris pour les instructions. Fais attention à respecter l'ordre des instructions. C'est une liste de string.
    - description doit être une présentation qui donne envie de faire la recette.
    - notes_ingredients doit être les détails importants qui sont précisé concernant les ingrédients (ingrédient facultatif, remplacement d'un ingrédient par un autre ingrédient...)
    - notes_instructions doit être les détails important qui sont précisé concernant les étapes pour faire la recette (actuces, conseils...)

    Warnings
    - Ne modifie aucun texte d'origine (titre, description, ingrédients, instructions).
    - Ne traduis pas la langue de la recette, elle doit être identifiée et conservée.
    - Les instructions doivent être strictement identiques à l'original, sans reformulation.
    - Si une information est absente, laisse le champ vide, sans ajout d’invention.
    - Les quantités d’ingrédients doivent rester sous forme de liste de chaînes de caractères.
    - Respecte le format JSON exact et assure-toi qu’il soit bien formatté.

    Context Dump
    Texte source fourni :

    {
    "explication": "Shepherd's Pie\nMAKES 1 LARGE CASSEROLE, 4 TO 6 SERVINGS\nhroughout my childhood I knew shepherd's pie as pâté chinois. My French Canadian grandmother taught me that this one-dish meal was\nintended to use up leftovers. I have since learned that Chinese cooks fed French Canadian railway workers the dish because it was inexpensive\nand easy to prepare. The workers brought the recipe with them to their home communities, including the small town in Rhode Island where I was\nborn, and it has been a favorite in my family for years. Over time, I have adapted the recipe to use Cauliflower Cream (page 147) instead of\npotatoes.\n1 pound (454 g) ground beef\n1 tablespoon olive oil\n1 small onion, peeled and diced\n1 garlic clove, minced\n¼ teaspoon salt\n½ teaspoon ground black pepper\nOne 10-ounce (284 package frozen corn, thawed and drained, or one 15-ounce (438 g) can corn, drained\n1 batch of Cauliflower Cream (page 147)\n1. Preheat a medium skillet over medium-high heat. Lower the heat to medium, add the ground beef, and cook for 5 to 6 minutes, until the meat is\nno longer pink, stirring frequently. Drain the fat from the meat and set it aside.\n2. Heat the olive oil in small skillet, over medium heat. Lower the heat to medium-low, add the onions and garlic and sauté, stirring occasionally,\nuntil the onions are translucent, about 3 to 4 minutes.\n3. Preheat the oven to 350°F (180°C).\n4. Combine the ground beef, cooked onions, garlic, salt, and pepper. Layer this mixture in the bottom of a deep baking dish.\n5. Finish assembling the casserole by layering the corn on top of the beef mixture and then layering the Cauliflower Cream on top of the corn.\n6. At this point you can freeze the casserole for baking at a later date (see freezing instructions). Otherwise, bake for 30 minutes. Refrigerate\nleftovers for up to a week.\nTO FREEZE\nI recommend using a bowl that is both freezer-safe and oven-safe (otherwise, freeze in an airtight container and transfer to an oven-safe baking\ndish when you are ready to reheat). Freeze for up to 6 months. Thaw in the refrigerator; reheat at 350°F (180°C) for 30 minutes.\nTO SUBSTITUTE\nAny ground meat (e.g., turkey or pork) can be used instead of ground beef; use beans instead of meat for a vegan version. Any cooked\nvegetable (e.g., peas or carrots) can be substituted for corn. For a more traditional version of this dish, substitute mashed potatoes for the\nCauliflower Cream."
}