if (type == exact) {
   setupRequired(sconsUtils      -j g50719a3ea6)
   setupRequired(afw             -j g7ae74a0b1c+6ca362d9d8)
   setupRequired(daf_base        -j g8ea07a8fe4+712865a662)
   setupRequired(utils           -j gc1edb60a27+edbf708997)
   setupRequired(cpputils        -j g87389fa792+a4172ec7da)
   setupRequired(base            -j g53246c7159+edbf708997)
   setupRequired(pex_exceptions  -j g786e29fd12+af89c03590)
   setupRequired(pex_config      -j ga9e74d7ce9+f4cb6b2002)
   setupRequired(geom            -j gac66b60396+3472dd1ce5)
   setupRequired(sphgeom         -j g00d0e8bbd7+edbf708997)
   setupRequired(log             -j geaed405ab2+a8e26c204f)
   setupRequired(astshim         -j g2cef7863aa+73c82f25e4)
   setupRequired(obs_base        -j g7ed31720fe+573e075662)
   setupRequired(daf_butler      -j g0bf6d36857+7c9e939610)
   setupRequired(resources       -j g10f15e71dd+a8e26c204f)
   setupRequired(pipe_base       -j g26b1195137+ae817e6215)
   setupRequired(astro_metadata_translator -j gf746e4f9fc+862f54b6e2)
   setupRequired(meas_algorithms -j g1955dfad08+0a421eb72f)
   setupRequired(meas_base       -j g03191d30f7+6f333543a1)
   setupRequired(skymap          -j g1fd858c14a+9c948523d8)
   setupRequired(kht             -j gaf53c9a034)
   setupRequired(pipe_tasks      -j gb632fb1845+b8ceda160c)
   setupRequired(coadd_utils     -j g89139ef638+6fa475c8dc)
   setupRequired(dustmaps_cachedata -j gbb0a0c949e+edbf708997)
   setupRequired(ip_diffim       -j g7cc15d900a+f885c13568)
   setupRequired(meas_astrom     -j gdbb4c4dda9+befe7c201e)
   setupRequired(meas_extensions_trailedSources -j g74acd417e5+c4bba996d1)
   setupRequired(meas_extensions_shapeHSM -j gf8a46c3309+befe7c201e)
   setupRequired(meas_deblender  -j g262e1987ae+b101fb6820)
   setupRequired(verify          -j g00d583acbd+79172e0b53)
   setupRequired(dax_apdb        -j g88cb488625+7e5cd6baad)
   setupRequired(felis           -j g4e67fbb619+cc64be5309)
   setupRequired(sdm_schemas     -j ga9d7ae9e50+edbf708997)
   setupRequired(verify_metrics  -j g8b480f84d9+edbf708997)
   setupRequired(ip_isr          -j g8d4809ba88+befe7c201e)
   setupRequired(meas_extensions_convolved -j g7da95dfc27+ff39807f98)
   setupRequired(meas_extensions_photometryKron -j g64539dfbff+befe7c201e)
   setupRequired(meas_extensions_gaap -j g5c7ea12361+1c3a71ab53)
   setupRequired(meas_extensions_piff -j ge41e95a9f2+befe7c201e)
   setupRequired(meas_extensions_psfex -j g3fd5ace14f+85da882313)
   setupRequired(psfex           -j g7b9623be85+edbf708997)
   setupRequired(meas_extensions_scarlet -j gfd6555b056+f3a2e41c2d)
   setupRequired(scarlet_lite    -j ga2180abaac+edbf708997)
   setupRequired(meas_modelfit   -j g7aefaa3e3d+45ca03bf4c)
   setupRequired(shapelet        -j g47891489e3+6fa475c8dc)
   setupRequired(jointcal_cholmod -j g5b815a837e+edbf708997)
   setupRequired(ctrl_mpexec     -j g24947d5ec1+9c1bc3f47c)
   setupOptional(obs_subaru      -j ga94e9f2cd1+1bb364a380)
   setupRequired(obs_subaru_data -j g7ff78db354)
   setupOptional(obs_cfht        -j g8219804093+182a0db0bb)
   setupOptional(obs_decam       -j g8d7436a09f+6ef7140f19)
   setupRequired(obs_decam_data  -j g9eeeb5e174)
} else {
   setupRequired(sconsUtils g50719a3ea6 [>= g50719a3ea6])
   setupRequired(afw g7ae74a0b1c+6ca362d9d8 [>= g7ae74a0b1c+6ca362d9d8])
   setupRequired(obs_base g7ed31720fe+573e075662 [>= g7ed31720fe+573e075662])
   setupRequired(pex_exceptions g786e29fd12+af89c03590 [>= g786e29fd12+af89c03590])
   setupRequired(pex_config ga9e74d7ce9+f4cb6b2002 [>= ga9e74d7ce9+f4cb6b2002])
   setupRequired(meas_algorithms g1955dfad08+0a421eb72f [>= g1955dfad08+0a421eb72f])
   setupRequired(pipe_tasks gb632fb1845+b8ceda160c [>= gb632fb1845+b8ceda160c])
   setupRequired(jointcal_cholmod g5b815a837e+edbf708997 [>= g5b815a837e+edbf708997])
   setupRequired(verify g00d583acbd+79172e0b53 [>= g00d583acbd+79172e0b53])
   setupRequired(verify_metrics g8b480f84d9+edbf708997 [>= g8b480f84d9+edbf708997])
   setupRequired(cpputils g87389fa792+a4172ec7da [>= g87389fa792+a4172ec7da])
   setupRequired(pipe_base g26b1195137+ae817e6215 [>= g26b1195137+ae817e6215])
   setupRequired(daf_butler g0bf6d36857+7c9e939610 [>= g0bf6d36857+7c9e939610])
   
   # for running middleware tests
   setupRequired(ctrl_mpexec g24947d5ec1+9c1bc3f47c [>= g24947d5ec1+9c1bc3f47c])
   
   # tests/data includes HSC output to test making a cameraGeom.
   setupOptional(obs_subaru ga94e9f2cd1+1bb364a380 [>= ga94e9f2cd1+1bb364a380])
   
   # tests/data/ includes some stripped-down cfht data for testing
   setupOptional(obs_cfht g8219804093+182a0db0bb [>= g8219804093+182a0db0bb])
   
   # data files for the integration tests, and the obs packages for that data
   setupOptional(testdata_jointcal)
   setupOptional(obs_decam g8d7436a09f+6ef7140f19 [>= g8d7436a09f+6ef7140f19])
   setupOptional(obs_cfht g8219804093+182a0db0bb [>= g8219804093+182a0db0bb])
}
}
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)
