if (type == exact) {
   setupRequired(obs_base        -j g1a55b07155+45857cba52)
   setupRequired(utils           -j ged10c03045+edbf708997)
   setupRequired(sconsUtils      -j g50719a3ea6)
   setupRequired(daf_butler      -j g510790da9a+ea63be4a5d)
   setupRequired(sphgeom         -j g00d0e8bbd7+edbf708997)
   setupRequired(resources       -j gac860778b9+062dfc8cdc)
   setupRequired(pipe_base       -j gaa98aacebd+4a15ede1ff)
   setupRequired(pex_config      -j ga9e74d7ce9+128cc68277)
   setupOptional(daf_base        -j g8ea07a8fe4+79658f16ab)
   setupRequired(cpputils        -j g87389fa792+a4172ec7da)
   setupRequired(base            -j g53246c7159+edbf708997)
   setupRequired(pex_exceptions  -j g786e29fd12+af89c03590)
   setupRequired(astro_metadata_translator -j gf746e4f9fc+02a42095d5)
   setupRequired(afw             -j g9722cb1a7f+d8f85438e7)
   setupRequired(geom            -j g90f42f885a+6577634e1f)
   setupRequired(log             -j geaed405ab2+062dfc8cdc)
   setupRequired(astshim         -j g2cef7863aa+73c82f25e4)
   setupRequired(meas_algorithms -j g3541666cd7+00c381f533)
   setupRequired(meas_base       -j g5e032395f3+2a361f5c28)
   setupRequired(skymap          -j g1fd858c14a+5d3c95268f)
   setupRequired(kht             -j gaf53c9a034)
   setupRequired(meas_astrom     -j gdbb4c4dda9+33d965bf6c)
   setupRequired(pipe_tasks      -j ge8e7e3f09d+a09b026073)
   setupRequired(coadd_utils     -j g89139ef638+19fcc35de2)
   setupRequired(dustmaps_cachedata -j gbb0a0c949e+edbf708997)
   setupRequired(ip_diffim       -j g5b326b94bb+74795fc0b3)
   setupRequired(meas_extensions_trailedSources -j g74acd417e5+6e038728f1)
   setupRequired(meas_extensions_shapeHSM -j gf8a46c3309+33d965bf6c)
   setupRequired(meas_deblender  -j g262e1987ae+129725fbd9)
   setupRequired(verify          -j g00d583acbd+84fd9c2286)
   setupRequired(dax_apdb        -j g88cb488625+cdc2ed4845)
   setupRequired(felis           -j g5c320bd705+4529a0555a)
   setupRequired(sdm_schemas     -j g3eb46086f9+edbf708997)
   setupRequired(verify_metrics  -j g8b480f84d9+edbf708997)
   setupRequired(ip_isr          -j gc2a301910b+33d965bf6c)
   setupRequired(meas_extensions_convolved -j g7da95dfc27+5e6e44f9b1)
   setupRequired(meas_extensions_photometryKron -j g64539dfbff+33d965bf6c)
   setupRequired(meas_extensions_gaap -j g5c7ea12361+e7ad0acc57)
   setupRequired(meas_extensions_piff -j ge41e95a9f2+33d965bf6c)
   setupRequired(meas_extensions_psfex -j g3fd5ace14f+0f9585b40d)
   setupRequired(psfex           -j g7b9623be85+edbf708997)
   setupRequired(meas_extensions_scarlet -j gfd6555b056+3e4396594a)
   setupRequired(scarlet_lite    -j ga2180abaac+edbf708997)
   setupRequired(meas_modelfit   -j g7aefaa3e3d+a53f4933b3)
   setupRequired(shapelet        -j g47891489e3+19fcc35de2)
} else {
   setupRequired(obs_base g1a55b07155+45857cba52 [>= g1a55b07155+45857cba52])
   setupRequired(meas_algorithms g3541666cd7+00c381f533 [>= g3541666cd7+00c381f533])
   setupRequired(meas_astrom gdbb4c4dda9+33d965bf6c [>= gdbb4c4dda9+33d965bf6c])
   setupRequired(pipe_tasks ge8e7e3f09d+a09b026073 [>= ge8e7e3f09d+a09b026073])
   setupRequired(astro_metadata_translator gf746e4f9fc+02a42095d5 [>= gf746e4f9fc+02a42095d5])
   setupRequired(geom g90f42f885a+6577634e1f [>= g90f42f885a+6577634e1f])
   
   # Required by config/calibrate.py, for gen3 DRP pipeline.
   # These can be removed after DM-30891 is finished
   setupRequired(meas_extensions_photometryKron g64539dfbff+33d965bf6c [>= g64539dfbff+33d965bf6c])
   setupRequired(meas_extensions_shapeHSM gf8a46c3309+33d965bf6c [>= gf8a46c3309+33d965bf6c])
   
   setupOptional(testdata_cfht)
}
}
envPrepend(PYTHONPATH, ${PRODUCT_DIR}/python)
envPrepend(PATH, ${PRODUCT_DIR}/bin)
