+
    è7Êj7  ã                   óF  € R t ^ RIt^ RIHt ]! ]4      P                  4       P                  t^tRt	^At
^=tRtRtRtR t]! 4       t]! R ] 4       4      t]! R	 ] 4       4      t]! R
 ] 4       4      t]],          t]],          t]]	,          t]]
,          t]]],
          ,          t]]],
          ,          t]! R]R R24       ]! R]R,          R R24       ]! R]R R24       ]! R]R R]R R24       ]! R]R 24       ]! R]R 24       ]! R] R24       ]! R4       R# )z¸Case C2 - Emergency food-extension model.
Edit assumptions and compare strategies. All flight manifest values are fictional case data; physical logic follows conservation constraints.
N)ÚPathi:  i<  iX  gš™™™™™É?c                  óÞ   € . p \        \        R ,          RR7      ;_uu_ 4       p\        P                  ! V4       F  q P	                  V4       K  	  RRR4       V #   + '       g   i     T # ; i)z13_FOOD_STOCK_C2.csvz	utf-8-sig)ÚencodingN)ÚopenÚHEREÚcsvÚ
DictReaderÚappend)ÚrowsÚfÚrs      Ú15_FOOD_EXTENSION_MODEL_C2.pyÚ
load_stockr      sO   € Ø	€DÜ	ŒdÐ)Õ)°;×	?Õ	?À1Ü—’ Ö"ˆA§K¡K°¦NÑ"÷ 
@à€K÷ 
@Ö	?à€Kús   £.AÁA,	c              #   ót   "  € T F.  p\        VR ,          4      \        VR,          4      ,          x € K0  	  R# 5i)Údry_mass_kgÚkcal_per_kg_dryN©Úfloat©Ú.0r   s   & r   Ú	<genexpr>r      s-   é € ÐQÉDÀqŒu�Q�}Õ%Ó&¤u¨QÐ/@Õ-AÓ'B×BÒBËDùó   ‚68c              #   ót   "  € T F.  p\        VR ,          4      \        VR,          4      ,          x € K0  	  R# 5i)r   Úprotein_g_per_kgNr   r   s   & r   r   r      s/   é € ÐUÑPTÈ1”%˜˜-Õ(Ó)¬%°Ð2DÕ0EÓ*F×FÒFÓPTùr   c              #   ót   "  € T F.  p\        VR ,          4      \        VR,          4      ,          x € K0  	  R# 5i)r   Úrehydration_water_L_per_kgNr   r   s   & r   r   r      s0   é € Ð^ÑY]ÐTU”�q˜Õ'Ó(¬¨qÐ1MÕ/NÓ)O×OÒOÓY]ùr   zStock energy: z,.0fz kcalzStock protein: iè  z,.1fz kg proteinzWater to rehydrate full stock: z LzAssumed algae contribution: z kcal/day, z.0fz g protein/dayz%Days supported by energy constraint: z.1fz&Days supported by protein constraint: zNominal target to Node Zero: z dayszfNOTE: This does not model micronutrients, individual medical risk, culture failure, or reserve margin.)Ú__doc__r   Úpathlibr   Ú__file__ÚresolveÚparentr   ÚCREWÚTARGET_KCAL_PER_PERSON_DAYÚTARGET_PROTEIN_G_PER_PERSON_DAYÚEXPECTED_DAYS_TO_NODEÚALGAE_KCAL_PER_KGÚALGAE_PROTEIN_G_PER_KGÚASSUMED_AVG_ALGAE_KG_DAYr   r
   ÚsumÚ
stock_kcalÚstock_proteinÚwater_neededÚ
algae_kcalÚalgae_proteinÚdaily_kcal_needÚdaily_protein_needÚdays_by_energyÚdays_by_proteinÚprint© ó    r   Ú<module>r5      sƒ  ðñó Ý Ù	ˆ(ƒ^×ÑÓ×$Ñ$€à€ØÐ Ø "Ð ØÐ ØÐ ØÐ ØÐ òñ ƒ\€ÙÑQÉDÓQÓQ€
ÙÑUÑPTÓUÓU€ÙÑ^ÑY]Ó^Ó^€Ø#Ð$5Õ5€
Ø&Ð'=Õ=€ØÐ/Õ/€ØÐ7Õ7Ð Ø˜?¨:Õ5Õ6€ØÐ1°-Õ?Õ@€Ù ˆ�z $Ð' uÐ-Ô .Ù ˆ˜ dÕ*¨4Ð0°Ð<Ô =Ù Ð'¨°TÐ':¸"Ð=Ô >Ù Ð$ Z°Ð$5°[ÀÈsÐ@SÐSaÐbÔ cÙ Ð-¨n¸SÐ-AÐBÔ CÙ Ð.¨¸sÐ.CÐDÔ EÙ Ð%Ð&;Ð%<¸EÐBÔ CÙ ÐnÖ or4   