
if (type == exact) {
if (type != exact) {
   setupRequired(utils -j ge52f197b94+3b699c8bd6)
   setupRequired(sconsUtils -j gc8c338059c)
   setupRequired(sphinxutils -j gc1a3846830+d801c9999e)
   setupRequired(verify -j g00d583acbd+7a6c6ef2e0)
   setupRequired(pex_config -j g364dc83bf4+c6efad8061)
   setupOptional(daf_base -j g8ea07a8fe4+b507f9a2ed)
   setupRequired(cpputils -j g87389fa792+0bb42a27e1)
   setupRequired(base -j g53246c7159+d801c9999e)
   setupRequired(pex_exceptions -j g786e29fd12+76ce5f0d11)
   setupRequired(resources -j g276b52209b+2c5602ae7f)
   setupRequired(daf_butler -j gac739bf062+c1bb944bc5)
   setupRequired(sphgeom -j g482271f493+d801c9999e)
   setupRequired(pipe_base -j g6dcf0942ee+f26b675b00)
   setupRequired(dax_apdb -j gb4d6f811d8+f0fff996cf)
   setupRequired(felis -j g2119210e94+8e05bf195b)
   setupRequired(sdm_schemas -j ga7cfc679d5+d801c9999e)
   setupRequired(afw -j g885f925cbc+35c5472dc5)
   setupRequired(geom -j g19811a7679+f2dbd965dd)
   setupRequired(log -j geaed405ab2+2c5602ae7f)
   setupRequired(astshim -j gf5dcc679e7+7aca86229d)
   setupOptional(afwdata -j gda6a35342c)
   setupRequired(verify_metrics -j g8b480f84d9+d801c9999e)
   setupRequired(ap_pipe -j g483cf74a21+2572bc3813)
   setupRequired(pipe_tasks -j g15e86a050b+0f6d67b907)
   setupRequired(coadd_utils -j g89139ef638+fe8acf7a80)
   setupRequired(dustmaps_cachedata -j gbb0a0c949e+d801c9999e)
   setupRequired(images -j g657fde2fe4+2e957d457d)
   setupRequired(astro_metadata_translator -j g77d8a893a4+c6efad8061)
   setupOptional(testdata_images -j g6427131062)
   setupOptional(obs_base -j g00893bd134+1f07106adf)
   setupOptional(meas_extensions_piff -j g92c671f44c+dc6c17cee4)
   setupRequired(meas_algorithms -j gfbb632c14c+f490081fc5)
   setupRequired(meas_base -j ga44f29b7aa+ff0b019337)
   setupRequired(skymap -j g6512b7a353+990977d5db)
   setupRequired(kht -j gaf53c9a034)
   setupRequired(shapelet -j gc794cbe0cf+fe8acf7a80)
   setupOptional(meas_extensions_psfex -j g33ac35c1f1+cc01275121)
   setupRequired(psfex -j g7b9623be85+d801c9999e)
   setupOptional(cell_coadds -j g34d6eedd0a+dc6c17cee4)
   setupRequired(ip_diffim -j gac8c101881+cd176d6662)
   setupRequired(meas_astrom -j g91f025aaea+dc6c17cee4)
   setupRequired(meas_extensions_trailedSources -j g1147af6e9c+af7dc61284)
   setupRequired(meas_extensions_shapeHSM -j gf8a46c3309+dc6c17cee4)
   setupRequired(meas_deblender -j g262e1987ae+e51eee38fa)
   setupOptional(testdata_deblender -j g8a244b6544)
   setupRequired(ip_isr -j g24cdac46ce+dc6c17cee4)
   setupRequired(meas_extensions_convolved -j g7da95dfc27+e3272b59d6)
   setupRequired(meas_extensions_photometryKron -j g64539dfbff+dc6c17cee4)
   setupRequired(meas_extensions_gaap -j g5c7ea12361+746127135f)
   setupRequired(meas_extensions_scarlet -j g1ef6e388dd+57ec7f3d6b)
   setupRequired(scarlet_lite -j g0b195f53ce+d801c9999e)
   setupRequired(meas_modelfit -j g9a9c865167+dc6c17cee4)
   setupRequired(rubinoxide -j g8d063e1f77+2c5602ae7f)
   setupRequired(ap_association -j gaf23fd0d8a+b1a032b1ec)
   setupRequired(alert_packet -j g928dae6617+7c17b011f3)
   setupRequired(analysis_tools -j g2383f50a69+ea1e369f5e)
   setupRequired(cp_pipe -j gf029a3f2f5+44ba06acd0)
   setupOptional(obs_subaru -j g4db92921ce+ae25bdc1a4)
   setupRequired(obs_subaru_data -j g7ff78db354)
   setupOptional(testdata_subaru -j g03c3ee655a)
   setupOptional(obs_decam -j g8bbb235e95+989494b7d8)
   setupRequired(obs_decam_data -j gf7d3127cd7)
   setupOptional(testdata_decam -j gfde10c3a1c)
   setupOptional(obs_lsst -j ge124e0199c+9e71357318)
   setupRequired(obs_lsst_data -j ge015015f0c+d801c9999e)
   setupOptional(fgcmcal -j g3845412f31+c5369aff3a)
   setupRequired(fgcm -j g17573debd1)
   setupOptional(testdata_jointcal -j gb6f1a889d2)
   setupRequired(drp_tasks -j gdc28b94a44+1cb84a864f)
   setupRequired(gbdes -j g0019e3c466+09b6a9d455)
   setupRequired(metadetect -j g91ac14ce4c+05d83187a2)
   setupOptional(descwl_shear_sims -j gb1c43e6ccb+ffbecc74f2)
   setupOptional(descwl -j g811db82e6e+76ce5f0d11)
   setupOptional(descwl_coadd -j gb717290d67+dc6c17cee4)
   setupRequired(source_injection -j g8da87785fe+08ee508e72)
   setupRequired(meas_transiNet -j gd42b450c19+af7dc61284)
   setupRequired(ctrl_mpexec -j g09a94c90fd+9e4a1ef583)
   setupOptional(ap_verify_testdata -j g5dbd2c695e)
}
} else {
   if (type == exact) {
      setupRequired(utils           -j ge52f197b94+3b699c8bd6)
      setupRequired(sconsUtils      -j gc8c338059c)
      setupRequired(sphinxutils     -j gc1a3846830+d801c9999e)
      setupRequired(verify          -j g00d583acbd+7a6c6ef2e0)
      setupRequired(pex_config      -j g364dc83bf4+c6efad8061)
      setupOptional(daf_base        -j g8ea07a8fe4+b507f9a2ed)
      setupRequired(cpputils        -j g87389fa792+0bb42a27e1)
      setupRequired(base            -j g53246c7159+d801c9999e)
      setupRequired(pex_exceptions  -j g786e29fd12+76ce5f0d11)
      setupRequired(resources       -j g276b52209b+2c5602ae7f)
      setupRequired(daf_butler      -j gac739bf062+c1bb944bc5)
      setupRequired(sphgeom         -j g482271f493+d801c9999e)
      setupRequired(pipe_base       -j g6dcf0942ee+f26b675b00)
      setupRequired(dax_apdb        -j gb4d6f811d8+f0fff996cf)
      setupRequired(felis           -j g2119210e94+8e05bf195b)
      setupRequired(sdm_schemas     -j ga7cfc679d5+d801c9999e)
      setupRequired(afw             -j g885f925cbc+35c5472dc5)
      setupRequired(geom            -j g19811a7679+f2dbd965dd)
      setupRequired(log             -j geaed405ab2+2c5602ae7f)
      setupRequired(astshim         -j gf5dcc679e7+7aca86229d)
      setupRequired(verify_metrics  -j g8b480f84d9+d801c9999e)
      setupRequired(ap_pipe         -j g483cf74a21+2572bc3813)
      setupRequired(pipe_tasks      -j g15e86a050b+0f6d67b907)
      setupRequired(coadd_utils     -j g89139ef638+fe8acf7a80)
      setupRequired(dustmaps_cachedata -j gbb0a0c949e+d801c9999e)
      setupRequired(images          -j g657fde2fe4+2e957d457d)
      setupRequired(astro_metadata_translator -j g77d8a893a4+c6efad8061)
      setupOptional(obs_base        -j g00893bd134+1f07106adf)
      setupOptional(meas_extensions_piff -j g92c671f44c+dc6c17cee4)
      setupRequired(meas_algorithms -j gfbb632c14c+f490081fc5)
      setupRequired(meas_base       -j ga44f29b7aa+ff0b019337)
      setupRequired(skymap          -j g6512b7a353+990977d5db)
      setupRequired(kht             -j gaf53c9a034)
      setupRequired(shapelet        -j gc794cbe0cf+fe8acf7a80)
      setupOptional(meas_extensions_psfex -j g33ac35c1f1+cc01275121)
      setupRequired(psfex           -j g7b9623be85+d801c9999e)
      setupOptional(cell_coadds     -j g34d6eedd0a+dc6c17cee4)
      setupRequired(ip_diffim       -j gac8c101881+cd176d6662)
      setupRequired(meas_astrom     -j g91f025aaea+dc6c17cee4)
      setupRequired(meas_extensions_trailedSources -j g1147af6e9c+af7dc61284)
      setupRequired(meas_extensions_shapeHSM -j gf8a46c3309+dc6c17cee4)
      setupRequired(meas_deblender  -j g262e1987ae+e51eee38fa)
      setupRequired(ip_isr          -j g24cdac46ce+dc6c17cee4)
      setupRequired(meas_extensions_convolved -j g7da95dfc27+e3272b59d6)
      setupRequired(meas_extensions_photometryKron -j g64539dfbff+dc6c17cee4)
      setupRequired(meas_extensions_gaap -j g5c7ea12361+746127135f)
      setupRequired(meas_extensions_scarlet -j g1ef6e388dd+57ec7f3d6b)
      setupRequired(scarlet_lite    -j g0b195f53ce+d801c9999e)
      setupRequired(meas_modelfit   -j g9a9c865167+dc6c17cee4)
      setupRequired(rubinoxide      -j g8d063e1f77+2c5602ae7f)
      setupRequired(ap_association  -j gaf23fd0d8a+b1a032b1ec)
      setupRequired(alert_packet    -j g928dae6617+7c17b011f3)
      setupRequired(analysis_tools  -j g2383f50a69+ea1e369f5e)
      setupRequired(cp_pipe         -j gf029a3f2f5+44ba06acd0)
      setupOptional(obs_subaru      -j g4db92921ce+ae25bdc1a4)
      setupRequired(obs_subaru_data -j g7ff78db354)
      setupOptional(obs_decam       -j g8bbb235e95+989494b7d8)
      setupRequired(obs_decam_data  -j gf7d3127cd7)
      setupOptional(obs_lsst        -j ge124e0199c+9e71357318)
      setupRequired(obs_lsst_data   -j ge015015f0c+d801c9999e)
      setupOptional(fgcmcal         -j g3845412f31+c5369aff3a)
      setupRequired(fgcm            -j g17573debd1)
      setupRequired(drp_tasks       -j gdc28b94a44+1cb84a864f)
      setupRequired(gbdes           -j g0019e3c466+09b6a9d455)
      setupRequired(metadetect      -j g91ac14ce4c+05d83187a2)
      setupRequired(source_injection -j g8da87785fe+08ee508e72)
      setupRequired(meas_transiNet  -j gd42b450c19+af7dc61284)
      setupRequired(ctrl_mpexec     -j g09a94c90fd+9e4a1ef583)
   } else {
      setupRequired(utils ge52f197b94+3b699c8bd6 [>= ge52f197b94+3b699c8bd6])
      setupRequired(verify g00d583acbd+7a6c6ef2e0 [>= g00d583acbd+7a6c6ef2e0])
      setupRequired(ap_pipe g483cf74a21+2572bc3813 [>= g483cf74a21+2572bc3813])
      setupRequired(ctrl_mpexec g09a94c90fd+9e4a1ef583 [>= g09a94c90fd+9e4a1ef583])
      
      # For testing
      setupOptional(ap_verify_testdata g5dbd2c695e [>= g5dbd2c695e])
      setupOptional(obs_lsst ge124e0199c+9e71357318 [>= ge124e0199c+9e71357318])
      
      # For default metric configs
      setupRequired(ip_diffim gac8c101881+cd176d6662 [>= gac8c101881+cd176d6662])
      setupRequired(ap_association gaf23fd0d8a+b1a032b1ec [>= gaf23fd0d8a+b1a032b1ec])
      
      # Datasets other than ap_verify_testdata must be set up manually
      #     to avoid being inadvertently downloaded by lsstsw
      # See the Sphinx docs for known datasets
   }
}
envPrepend(PYTHONPATH, ${PRODUCT_DIR}/python)
envPrepend(PATH, ${PRODUCT_DIR}/bin)
