fn base_component(
base: &BaseStatRow,
field: EnemyStatField,
extract: fn(&ExpectedStatFlat) -> f32,
range: ValueRange,
steps: &mut Vec<EnemyStatProvenanceStep>,
) -> Result<f64, EnemyStatResolutionError>fn base_component(
base: &BaseStatRow,
field: EnemyStatField,
extract: fn(&ExpectedStatFlat) -> f32,
range: ValueRange,
steps: &mut Vec<EnemyStatProvenanceStep>,
) -> Result<f64, EnemyStatResolutionError>