if (type == exact) {
   setupRequired(sconsUtils      -j g9e4288ad24)
   setupRequired(afw             -j g714e0ed6de+45adbcf3d0)
   setupRequired(daf_base        -j g8ea07a8fe4+14188bbe6c)
   setupRequired(utils           -j g8956d74c4f+37c27a6131)
   setupRequired(sphinxutils     -j g52a5f7ac38+afb4790f61)
   setupRequired(cpputils        -j g87389fa792+2df283593c)
   setupRequired(base            -j g53246c7159+afb4790f61)
   setupRequired(pex_exceptions  -j g786e29fd12+c90741701a)
   setupRequired(pex_config      -j ge80df9fc40+296e528a3c)
   setupRequired(resources       -j g0ed9cbdc82+692b620dcb)
   setupRequired(geom            -j g19811a7679+c67ce918b9)
   setupRequired(sphgeom         -j g04536d8304+afb4790f61)
   setupRequired(log             -j geaed405ab2+692b620dcb)
   setupRequired(astshim         -j gf5dcc679e7+dafe91c9d6)
   setupRequired(cp_pipe         -j g0e37f4806a+574127603e)
   setupRequired(pipe_base       -j g6cec3c9704+69aae18fb6)
   setupRequired(daf_butler      -j g54126c181e+aa77171ecc)
   setupRequired(ip_isr          -j gd2a69bfd97+6d6e96d508)
   setupRequired(meas_algorithms -j g1581cd22ba+5952b5fc83)
   setupRequired(meas_base       -j g51c93253c0+c18275eecd)
   setupRequired(skymap          -j g91c88c04ca+d1527fbb54)
   setupRequired(kht             -j gaf53c9a034)
   setupRequired(obs_base        -j g8585e333ae+db1893f86f)
   setupRequired(astro_metadata_translator -j g36c86f07e0+296e528a3c)
   setupRequired(shapelet        -j gc794cbe0cf+29fee39828)
   setupRequired(pipe_tasks      -j gcf790cdeb6+1ce96500e5)
   setupRequired(coadd_utils     -j g89139ef638+29fee39828)
   setupRequired(dustmaps_cachedata -j gbb0a0c949e+afb4790f61)
   setupRequired(images          -j g573e42971e+9d757757b5)
   setupOptional(meas_extensions_piff -j g92c671f44c+6d6e96d508)
   setupOptional(meas_extensions_psfex -j g33ac35c1f1+3670668111)
   setupRequired(psfex           -j g7b9623be85+afb4790f61)
   setupOptional(cell_coadds     -j g1c12f59687+6d6e96d508)
   setupRequired(ip_diffim       -j g1ab274d823+9485f8d83b)
   setupRequired(meas_astrom     -j gaea863341c+6d6e96d508)
   setupRequired(meas_extensions_trailedSources -j g74acd417e5+42f3387864)
   setupRequired(meas_extensions_shapeHSM -j gf8a46c3309+6d6e96d508)
   setupRequired(meas_deblender  -j g262e1987ae+46089da01a)
   setupRequired(verify          -j g00d583acbd+b4099ce034)
   setupRequired(dax_apdb        -j gadb85831a6+0184717e71)
   setupRequired(felis           -j gf0215cae7b+cced0a835f)
   setupRequired(sdm_schemas     -j g4cf8ac38d0+afb4790f61)
   setupRequired(verify_metrics  -j g8b480f84d9+afb4790f61)
   setupRequired(meas_extensions_convolved -j g7da95dfc27+2bac0ba9cc)
   setupRequired(meas_extensions_photometryKron -j g64539dfbff+6d6e96d508)
   setupRequired(meas_extensions_gaap -j g5c7ea12361+6c5f193421)
   setupRequired(meas_extensions_scarlet -j gb538e179e5+1334350967)
   setupRequired(scarlet_lite    -j ge1c02a5578+afb4790f61)
   setupRequired(meas_modelfit   -j g9a9c865167+6d6e96d508)
   setupRequired(rubinoxide      -j g8d063e1f77+692b620dcb)
   setupOptional(obs_subaru      -j g4db92921ce+41ae2015e2)
   setupRequired(obs_subaru_data -j g7ff78db354)
   setupOptional(obs_decam       -j g8bbb235e95+81519ccb34)
   setupRequired(obs_decam_data  -j g9eeeb5e174)
   setupOptional(obs_lsst        -j g0e84d755dc+f12094d04d)
   setupRequired(obs_lsst_data   -j ge015015f0c+afb4790f61)
   setupOptional(fgcmcal         -j g3845412f31+ccfcaf0e39)
   setupRequired(fgcm            -j g17573debd1)
   setupRequired(analysis_tools  -j gf27ece8827+4d84efa132)
   setupRequired(drp_tasks       -j ge5c5d2d117+981f8d870d)
   setupRequired(gbdes           -j g0019e3c466+87cce5ecef)
   setupRequired(metadetect      -j g374dac2964+3b577bb471)
} else {
   setupRequired(sconsUtils g9e4288ad24 [>= g9e4288ad24])
   setupRequired(afw g714e0ed6de+45adbcf3d0 [>= g714e0ed6de+45adbcf3d0])
   setupRequired(cp_pipe g0e37f4806a+574127603e [>= g0e37f4806a+574127603e])
   setupRequired(ip_isr gd2a69bfd97+6d6e96d508 [>= gd2a69bfd97+6d6e96d508])
   setupRequired(meas_algorithms g1581cd22ba+5952b5fc83 [>= g1581cd22ba+5952b5fc83])
   setupRequired(pex_config ge80df9fc40+296e528a3c [>= ge80df9fc40+296e528a3c])
   setupRequired(pex_exceptions g786e29fd12+c90741701a [>= g786e29fd12+c90741701a])
   setupRequired(pipe_tasks gcf790cdeb6+1ce96500e5 [>= gcf790cdeb6+1ce96500e5])
   setupRequired(utils g8956d74c4f+37c27a6131 [>= g8956d74c4f+37c27a6131])
   setupRequired(pipe_base g6cec3c9704+69aae18fb6 [>= g6cec3c9704+69aae18fb6])
   setupRequired(analysis_tools gf27ece8827+4d84efa132 [>= gf27ece8827+4d84efa132])
   setupOptional(obs_lsst g0e84d755dc+f12094d04d [>= g0e84d755dc+f12094d04d])
   setupOptional(obs_decam g8bbb235e95+81519ccb34 [>= g8bbb235e95+81519ccb34])
   setupOptional(obs_subaru g4db92921ce+41ae2015e2 [>= g4db92921ce+41ae2015e2])
}
}
envPrepend(PYTHONPATH, ${PRODUCT_DIR}/python)
