# Python Middleware
if (type == exact) {
if (type != exact) {
   setupRequired(utils -j g916547d642+b712490ecc)
   setupRequired(sconsUtils -j g5d571352bb)
   setupRequired(sphinxutils -j gf7b00018f0+663e2227e0)
   setupRequired(daf_butler -j ga811d155e9+593b400156)
   setupRequired(sphgeom -j g8f490195a6+663e2227e0)
   setupRequired(resources -j g7046b7888c+c868ab9932)
   setupRequired(pipe_base -j gf24a075aa2+15ebcd9c4c)
   setupRequired(pex_config -j g8fad44f3d7+4cace8750a)
   setupOptional(daf_base -j g9acbc9a64b+25ce2dec9e)
   setupRequired(cpputils -j gee37125a88+b319181507)
   setupRequired(base -j g53246c7159+663e2227e0)
   setupRequired(pex_exceptions -j g786e29fd12+53fe651d7c)
   setupRequired(astro_metadata_translator -j gd5704b07e7+4cace8750a)
   setupRequired(afw -j g41b6eb5643+8889f92f7b)
   setupRequired(geom -j g19811a7679+b5afc4d4fc)
   setupRequired(log -j geaed405ab2+c868ab9932)
   setupRequired(astshim -j g6483cd21eb+eaea1bf0c7)
}
} else {
   if (type == exact) {
      setupRequired(utils           -j g916547d642+b712490ecc)
      setupRequired(sconsUtils      -j g5d571352bb)
      setupRequired(sphinxutils     -j gf7b00018f0+663e2227e0)
      setupRequired(daf_butler      -j ga811d155e9+593b400156)
      setupRequired(sphgeom         -j g8f490195a6+663e2227e0)
      setupRequired(resources       -j g7046b7888c+c868ab9932)
      setupRequired(pipe_base       -j gf24a075aa2+15ebcd9c4c)
      setupRequired(pex_config      -j g8fad44f3d7+4cace8750a)
      setupOptional(daf_base        -j g9acbc9a64b+25ce2dec9e)
      setupRequired(cpputils        -j gee37125a88+b319181507)
      setupRequired(base            -j g53246c7159+663e2227e0)
      setupRequired(pex_exceptions  -j g786e29fd12+53fe651d7c)
      setupRequired(astro_metadata_translator -j gd5704b07e7+4cace8750a)
      setupRequired(afw             -j g41b6eb5643+8889f92f7b)
      setupRequired(geom            -j g19811a7679+b5afc4d4fc)
      setupRequired(log             -j geaed405ab2+c868ab9932)
      setupRequired(astshim         -j g6483cd21eb+eaea1bf0c7)
   } else {
      setupRequired(utils g916547d642+b712490ecc [>= g916547d642+b712490ecc])
      setupRequired(daf_butler ga811d155e9+593b400156 [>= ga811d155e9+593b400156])
      setupRequired(pipe_base gf24a075aa2+15ebcd9c4c [>= gf24a075aa2+15ebcd9c4c])
      setupRequired(resources g7046b7888c+c868ab9932 [>= g7046b7888c+c868ab9932])
      setupRequired(astro_metadata_translator gd5704b07e7+4cace8750a [>= gd5704b07e7+4cace8750a])
      setupRequired(pex_config g8fad44f3d7+4cace8750a [>= g8fad44f3d7+4cace8750a])
      
      # LSST C++.
      setupRequired(daf_base g9acbc9a64b+25ce2dec9e [>= g9acbc9a64b+25ce2dec9e])
      setupRequired(afw g41b6eb5643+8889f92f7b [>= g41b6eb5643+8889f92f7b])
      setupRequired(geom g19811a7679+b5afc4d4fc [>= g19811a7679+b5afc4d4fc])
      setupRequired(pex_exceptions g786e29fd12+53fe651d7c [>= g786e29fd12+53fe651d7c])
      setupOptional(log geaed405ab2+c868ab9932 [>= geaed405ab2+c868ab9932])
   }
}
envPrepend(PYTHONPATH, ${PRODUCT_DIR}/python)
envPrepend(PATH, ${PRODUCT_DIR}/bin)
