if (type == exact) {
   setupRequired(sconsUtils      -j g50719a3ea6)
   setupRequired(afw             -j g9722cb1a7f+d8f85438e7)
   setupRequired(daf_base        -j g8ea07a8fe4+79658f16ab)
   setupRequired(utils           -j ged10c03045+edbf708997)
   setupRequired(cpputils        -j g87389fa792+a4172ec7da)
   setupRequired(base            -j g53246c7159+edbf708997)
   setupRequired(pex_exceptions  -j g786e29fd12+af89c03590)
   setupRequired(pex_config      -j ga9e74d7ce9+128cc68277)
   setupRequired(geom            -j g90f42f885a+6577634e1f)
   setupRequired(sphgeom         -j g00d0e8bbd7+edbf708997)
   setupRequired(log             -j geaed405ab2+062dfc8cdc)
   setupRequired(astshim         -j g2cef7863aa+73c82f25e4)
   setupRequired(obs_base        -j g1a55b07155+45857cba52)
   setupRequired(daf_butler      -j g510790da9a+ea63be4a5d)
   setupRequired(resources       -j gac860778b9+062dfc8cdc)
   setupRequired(pipe_base       -j gaa98aacebd+4a15ede1ff)
   setupRequired(astro_metadata_translator -j gf746e4f9fc+02a42095d5)
   setupRequired(meas_algorithms -j g3541666cd7+00c381f533)
   setupRequired(meas_base       -j g5e032395f3+2a361f5c28)
   setupRequired(skymap          -j g1fd858c14a+5d3c95268f)
   setupRequired(kht             -j gaf53c9a034)
   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_astrom     -j gdbb4c4dda9+33d965bf6c)
   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)
   setupRequired(jointcal_cholmod -j g5b815a837e+edbf708997)
   setupRequired(ctrl_mpexec     -j g24947d5ec1+bd62891fed)
   setupOptional(obs_subaru      -j ga94e9f2cd1+b8084c06ed)
   setupRequired(obs_subaru_data -j g7ff78db354)
   setupOptional(obs_cfht        -j g8219804093+a24ac419f1)
   setupOptional(obs_decam       -j g8d7436a09f+1c65fffe91)
   setupRequired(obs_decam_data  -j g9eeeb5e174)
} else {
   setupRequired(sconsUtils g50719a3ea6 [>= g50719a3ea6])
   setupRequired(afw g9722cb1a7f+d8f85438e7 [>= g9722cb1a7f+d8f85438e7])
   setupRequired(obs_base g1a55b07155+45857cba52 [>= g1a55b07155+45857cba52])
   setupRequired(pex_exceptions g786e29fd12+af89c03590 [>= g786e29fd12+af89c03590])
   setupRequired(pex_config ga9e74d7ce9+128cc68277 [>= ga9e74d7ce9+128cc68277])
   setupRequired(meas_algorithms g3541666cd7+00c381f533 [>= g3541666cd7+00c381f533])
   setupRequired(pipe_tasks ge8e7e3f09d+a09b026073 [>= ge8e7e3f09d+a09b026073])
   setupRequired(jointcal_cholmod g5b815a837e+edbf708997 [>= g5b815a837e+edbf708997])
   setupRequired(verify g00d583acbd+84fd9c2286 [>= g00d583acbd+84fd9c2286])
   setupRequired(verify_metrics g8b480f84d9+edbf708997 [>= g8b480f84d9+edbf708997])
   setupRequired(cpputils g87389fa792+a4172ec7da [>= g87389fa792+a4172ec7da])
   setupRequired(pipe_base gaa98aacebd+4a15ede1ff [>= gaa98aacebd+4a15ede1ff])
   setupRequired(daf_butler g510790da9a+ea63be4a5d [>= g510790da9a+ea63be4a5d])
   
   # for running middleware tests
   setupRequired(ctrl_mpexec g24947d5ec1+bd62891fed [>= g24947d5ec1+bd62891fed])
   
   # tests/data includes HSC output to test making a cameraGeom.
   setupOptional(obs_subaru ga94e9f2cd1+b8084c06ed [>= ga94e9f2cd1+b8084c06ed])
   
   # tests/data/ includes some stripped-down cfht data for testing
   setupOptional(obs_cfht g8219804093+a24ac419f1 [>= g8219804093+a24ac419f1])
   
   # data files for the integration tests, and the obs packages for that data
   setupOptional(testdata_jointcal)
   setupOptional(obs_decam g8d7436a09f+1c65fffe91 [>= g8d7436a09f+1c65fffe91])
   setupOptional(obs_cfht g8219804093+a24ac419f1 [>= g8219804093+a24ac419f1])
}
}
envPrepend(LD_LIBRARY_PATH, ${PRODUCT_DIR}/lib)
envPrepend(DYLD_LIBRARY_PATH, ${PRODUCT_DIR}/lib)
envPrepend(LSST_LIBRARY_PATH, ${PRODUCT_DIR}/lib)

envPrepend(PYTHONPATH, ${PRODUCT_DIR}/python)
envPrepend(PATH, ${PRODUCT_DIR}/bin)
