# Python Middleware
if (type == exact) {
if (type != exact) {
   setupRequired(utils -j g8956d74c4f+37c27a6131)
   setupRequired(sconsUtils -j g9e4288ad24)
   setupRequired(sphinxutils -j g52a5f7ac38+afb4790f61)
   setupRequired(daf_butler -j g090993796f+1297815d50)
   setupRequired(sphgeom -j gafb225b75d+afb4790f61)
   setupRequired(resources -j gee23d30481+692b620dcb)
   setupRequired(pipe_base -j gc132915c65+c50ff2f8a9)
   setupRequired(pex_config -j ge80df9fc40+a17aa6e98b)
   setupOptional(daf_base -j g8ea07a8fe4+14188bbe6c)
   setupRequired(cpputils -j g87389fa792+2df283593c)
   setupRequired(base -j g53246c7159+afb4790f61)
   setupRequired(pex_exceptions -j g786e29fd12+c90741701a)
   setupRequired(astro_metadata_translator -j g4c3f3e5363+a17aa6e98b)
   setupRequired(afw -j gf03f0b42f3+f620a9ee49)
   setupRequired(geom -j g19811a7679+5152382e27)
   setupRequired(log -j geaed405ab2+692b620dcb)
   setupRequired(astshim -j gf5dcc679e7+dafe91c9d6)
}
} else {
   if (type == exact) {
      setupRequired(utils           -j g8956d74c4f+37c27a6131)
      setupRequired(sconsUtils      -j g9e4288ad24)
      setupRequired(sphinxutils     -j g52a5f7ac38+afb4790f61)
      setupRequired(daf_butler      -j g090993796f+1297815d50)
      setupRequired(sphgeom         -j gafb225b75d+afb4790f61)
      setupRequired(resources       -j gee23d30481+692b620dcb)
      setupRequired(pipe_base       -j gc132915c65+c50ff2f8a9)
      setupRequired(pex_config      -j ge80df9fc40+a17aa6e98b)
      setupOptional(daf_base        -j g8ea07a8fe4+14188bbe6c)
      setupRequired(cpputils        -j g87389fa792+2df283593c)
      setupRequired(base            -j g53246c7159+afb4790f61)
      setupRequired(pex_exceptions  -j g786e29fd12+c90741701a)
      setupRequired(astro_metadata_translator -j g4c3f3e5363+a17aa6e98b)
      setupRequired(afw             -j gf03f0b42f3+f620a9ee49)
      setupRequired(geom            -j g19811a7679+5152382e27)
      setupRequired(log             -j geaed405ab2+692b620dcb)
      setupRequired(astshim         -j gf5dcc679e7+dafe91c9d6)
   } else {
      setupRequired(utils g8956d74c4f+37c27a6131 [>= g8956d74c4f+37c27a6131])
      setupRequired(daf_butler g090993796f+1297815d50 [>= g090993796f+1297815d50])
      setupRequired(pipe_base gc132915c65+c50ff2f8a9 [>= gc132915c65+c50ff2f8a9])
      setupRequired(resources gee23d30481+692b620dcb [>= gee23d30481+692b620dcb])
      setupRequired(astro_metadata_translator g4c3f3e5363+a17aa6e98b [>= g4c3f3e5363+a17aa6e98b])
      setupRequired(pex_config ge80df9fc40+a17aa6e98b [>= ge80df9fc40+a17aa6e98b])
      
      # LSST C++.
      setupRequired(daf_base g8ea07a8fe4+14188bbe6c [>= g8ea07a8fe4+14188bbe6c])
      setupRequired(afw gf03f0b42f3+f620a9ee49 [>= gf03f0b42f3+f620a9ee49])
      setupRequired(geom g19811a7679+5152382e27 [>= g19811a7679+5152382e27])
      setupRequired(pex_exceptions g786e29fd12+c90741701a [>= g786e29fd12+c90741701a])
      setupOptional(log geaed405ab2+692b620dcb [>= geaed405ab2+692b620dcb])
   }
}
envPrepend(PYTHONPATH, ${PRODUCT_DIR}/python)
envPrepend(PATH, ${PRODUCT_DIR}/bin)
