# Global Metrics

path: .metrics.mi.mi_original
old: 87.79698509690094
new: 87.09966912614469
path: .metrics.mi.mi_visual_studio
old: 51.34326613853856
new: 50.93547902113725
path: .metrics.mi.mi_sei
old: 86.24027611367433
new: 91.89145164890056
path: .metrics.loc.blank
old: 6.0
new: 7.0
path: .metrics.loc.cloc
old: 7.0
new: 13.0
path: .metrics.loc.ploc
old: 15.0
new: 12.0
path: .metrics.loc.sloc
old: 28.0
new: 32.0
path: .metrics.nexits.average
old: 0.0
new: null
path: .metrics.cognitive.average
old: 0.0
new: null
path: .metrics.halstead.N1
old: 34.0
new: 23.0
path: .metrics.halstead.length
old: 52.0
new: 41.0
path: .metrics.halstead.volume
old: 241.48052186828568
new: 190.3981037807637
path: .metrics.halstead.effort
old: 1448.883131209714
new: 1142.3886226845823
path: .metrics.halstead.purity_ratio
old: 1.7658199977500273
new: 2.2395765825122296
path: .metrics.halstead.bugs
old: 0.042680973445891175
new: 0.036426825454917065
path: .metrics.halstead.time
old: 80.49350728942856
new: 63.466034593587906
path: .metrics.nom.total
old: 1.0
new: 0.0
path: .metrics.nom.functions
old: 1.0
new: 0.0
path: .metrics.cyclomatic.sum
old: 3.0
new: 2.0
path: .metrics.nargs.average
old: 0.0
new: null

# Spaces Data

## Minimal test - lines (18, 30)

path: .spaces[0].metrics.nexits.average
old: 0.0
new: null
path: .spaces[0].metrics.nargs.average
old: 0.0
new: null
path: .spaces[0].metrics.cyclomatic.sum
old: 2.0
new: 1.0
path: .spaces[0].metrics.halstead.difficulty
old: 5.833333333333333
new: 5.769230769230769
path: .spaces[0].metrics.halstead.bugs
old: 0.03811315072926128
new: 0.03314872120214663
path: .spaces[0].metrics.halstead.volume
old: 209.59328607595296
new: 171.8953543301665
path: .spaces[0].metrics.halstead.purity_ratio
old: 1.6221027863303723
new: 2.140131507492311
path: .spaces[0].metrics.halstead.level
old: 0.17142857142857143
new: 0.17333333333333334
path: .spaces[0].metrics.halstead.n2
old: 12.0
new: 13.0
path: .spaces[0].metrics.halstead.effort
old: 1222.6275021097256
new: 991.703967289422
path: .spaces[0].metrics.halstead.N2
old: 14.0
new: 15.0
path: .spaces[0].metrics.halstead.N1
old: 33.0
new: 23.0
path: .spaces[0].metrics.halstead.time
old: 67.92375011720698
new: 55.09466484941234
path: .spaces[0].metrics.halstead.estimated_program_length
old: 76.2388309575275
new: 81.32499728470782
path: .spaces[0].metrics.halstead.vocabulary
old: 22.0
new: 23.0
path: .spaces[0].metrics.halstead.length
old: 47.0
new: 38.0
path: .spaces[0].metrics.loc.sloc
old: 11.0
new: 13.0
path: .spaces[0].metrics.loc.cloc
old: 0.0
new: 2.0
path: .spaces[0].metrics.loc.blank
old: 2.0
new: 5.0
path: .spaces[0].metrics.loc.ploc
old: 9.0
new: 6.0
path: .spaces[0].metrics.cognitive.average
old: 0.0
new: null
path: .spaces[0].metrics.nom.functions
old: 1.0
new: 0.0
path: .spaces[0].metrics.nom.total
old: 1.0
new: 0.0
path: .spaces[0].metrics.mi.mi_sei
old: 74.39767457246639
new: 100.75758896741144
path: .spaces[0].metrics.mi.mi_original
old: 103.89921819742833
new: 102.45401379878842
path: .spaces[0].metrics.mi.mi_visual_studio
old: 60.7597767236423
new: 59.91462795250785

### Code

    namespace fuzzer {

    // Private copy of SHA1 implementation.
    static const int kSHA1NumBytes = 20;

    // Computes SHA1 hash of 'Len' bytes in 'Data', writes kSHA1NumBytes to 'Out'.
    void ComputeSHA1(const uint8_t *Data, size_t Len, uint8_t *Out);

    std::string Sha1ToString(const uint8_t Sha1[kSHA1NumBytes]);

    std::string Hash(const Unit &U);

    }  // namespace fuzzer