[
  {
    "old": "python/tests/python/_mpm_cuda_gs_forensics.py",
    "new": "python/tests/python/_lib/_mpm_cuda_gs_forensics.py",
    "index_similarity": "R100",
    "final_sha256": "6526e9efed00711c09073d6513685206416fe9884786d7d651896dcb18746016",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_candidate_d_d0_metrics.py",
    "new": "python/tests/python/implicit_mpm/test_candidate_d_d0_metrics.py",
    "index_similarity": "R100",
    "final_sha256": "5c3d029c647d77a215a4d0de4b7f2d9f7e02fb87a603c826ee9163fcb8956ad8",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_candidate_d_d1_anchor_check.py",
    "new": "python/tests/python/implicit_mpm/test_candidate_d_d1_anchor_check.py",
    "index_similarity": "R100",
    "final_sha256": "9727252069f4b5a92dc107195c62622d5397a7b8cee0114ba6b17267b2091aa6",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_candidate_d_d2_probes.py",
    "new": "python/tests/python/implicit_mpm/test_candidate_d_d2_probes.py",
    "index_similarity": "R100",
    "final_sha256": "de57bd0ce594196507cfe0a4940c927194c51ce1d813299a99a250297ed5f203",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_candidate_d_d3_contract_check.py",
    "new": "python/tests/python/implicit_mpm/test_candidate_d_d3_contract_check.py",
    "index_similarity": "R100",
    "final_sha256": "3672379dda3d77bf43d5646f45f58a046d6fd4cbc7e9515ef28ead002e2508d5",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_candidate_e_stress_volume_domain_probes.py",
    "new": "python/tests/python/implicit_mpm/test_candidate_e_stress_volume_domain_probes.py",
    "index_similarity": "R100",
    "final_sha256": "b9807c82faf0735db299539260173b397af008e8ac4fb174e78411635f174816",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_candidate_f_f2_with_newton.py",
    "new": "python/tests/python/implicit_mpm/test_candidate_f_f2_with_newton.py",
    "index_similarity": "R100",
    "final_sha256": "47c1e95bee1ec864ef3b54d2c7872b420a4da2d46334902dcd3a46303ce9c787",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_candidate_f_f3_decision.py",
    "new": "python/tests/python/implicit_mpm/test_candidate_f_f3_decision.py",
    "index_similarity": "R100",
    "final_sha256": "b1c653000e1e9435167505b4d0ab086a967c103eb5db85c920e769d9f423ce3f",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_candidate_f_one_step_dump.py",
    "new": "python/tests/python/implicit_mpm/test_candidate_f_one_step_dump.py",
    "index_similarity": "R100",
    "final_sha256": "4ebbe8227f1fc184b3fa6fc947cd17ceb72b808baf8a67d8547c7087603b63f3",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_collider_rasterize_cache.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_collider_rasterize_cache.py",
    "index_similarity": "R100",
    "final_sha256": "f0e66b889047ebff57dbe7c4fbe729d73320b1f6e466ef03f1bc573cea094f5b",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cpu_optimizations.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cpu_optimizations.py",
    "index_similarity": "R100",
    "final_sha256": "d689eff0412b657634feefb0fd73783600857b70ef08f1acda00ba50fbd970a2",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_cauchy_gs01_parity.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_cauchy_gs01_parity.py",
    "index_similarity": "R100",
    "final_sha256": "7f3259cbfa24338223f16841e663659954e9e47bba22e56e6abded92cbff3866",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_g2p_finalize_parity.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_g2p_finalize_parity.py",
    "index_similarity": "R100",
    "final_sha256": "4ce9bf3c76e0a1a77fbf213f17f6e30c76b1dfc2a44c0b4e66e43c49584df314",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_gs03_node8593_forensics.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_gs03_node8593_forensics.py",
    "index_similarity": "R100",
    "final_sha256": "d64292dbbb3e7c626c7fdc80c0826d4694f50b4b73360a8153d6e278f2374f16",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_mud_gs01_scatter_parity.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_mud_gs01_scatter_parity.py",
    "index_similarity": "R100",
    "final_sha256": "29391c21b8493132b6e0d82dc1c637af75b6d0876326a93fa727854ec0cadc55",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_mud_gs09_cpu_cuda_compare.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_mud_gs09_cpu_cuda_compare.py",
    "index_similarity": "R100",
    "final_sha256": "71b7d095b58830923e588155a212d2cd3f598c1e33023f87ea9fdbae58ede04d",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_mud_nan_diagnostic.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_mud_nan_diagnostic.py",
    "index_similarity": "R100",
    "final_sha256": "8c6854d655139de9415fa95b7880a0351138538e7867cc2caea3bab357a756ef",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_mud_nan_stage_dump.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_mud_nan_stage_dump.py",
    "index_similarity": "R100",
    "final_sha256": "5c5d300f9333645818c22256a6fc1aa05fceef04614ed45f24decf92d642d25c",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_multistep_nan_debug.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_multistep_nan_debug.py",
    "index_similarity": "R100",
    "final_sha256": "d9e80f5e124f76fd49797dd6bb4d3d866463a898fa840bfcccb7c5c60100565e",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_sand_grid_vel_update_parity.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_sand_grid_vel_update_parity.py",
    "index_similarity": "R100",
    "final_sha256": "1e555da02bc84255c0211328a2ad981a79683c4a3c2ecca6fed4f9d60a90130a",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_sand_gs01_forensics.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_sand_gs01_forensics.py",
    "index_similarity": "R100",
    "final_sha256": "cd3bfe15376183e73351b95652f0df05554111f5c25470a9973626a7ab31bdfa",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_sand_gs01_svd_diagnostic.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_sand_gs01_svd_diagnostic.py",
    "index_similarity": "R100",
    "final_sha256": "bfcc0dea0990d3f9ee38289c44a581f06480787bd37c9b3c6daabe9ec26498af",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_serial_scatter_stub.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_serial_scatter_stub.py",
    "index_similarity": "R100",
    "final_sha256": "c625588032436458d173e70a59b0ec4f482545b6f2a4e4afc067867ee485328b",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_cuda_snow_gs01_gs03_forensics.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_cuda_snow_gs01_gs03_forensics.py",
    "index_similarity": "R100",
    "final_sha256": "6db6dcb5a67bda1660f1959249bf43898ebb8febeaa8e09bf2aec19d66700e46",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_dynamic_grid.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_dynamic_grid.py",
    "index_similarity": "R100",
    "final_sha256": "51b167ec3c6654f0263f097fd5b0fa6e28cfad2b338f9ca5892447af3c89921f",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_contract_large_dt_l1.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_contract_large_dt_l1.py",
    "index_similarity": "R100",
    "final_sha256": "c0a29edb1b84107672561c5394db396652519b0447cb8de3f32cbd08cdf1e281",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_beam.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_beam.py",
    "index_similarity": "R100",
    "final_sha256": "0e2e0e0b4ac47e390ddcc9df41f419e3222b14997d92d610d397997e39fb1f00",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cell_fe_clear_zero.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cell_fe_clear_zero.py",
    "index_similarity": "R100",
    "final_sha256": "27415c23b3c6bdbe306a0dca8b94e18781cb299becee69052b1a28df009aadde",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cell_material.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cell_material.py",
    "index_similarity": "R100",
    "final_sha256": "84afdee6584304f9f69d301a6830736a741ff7e8ef1370259c98aea167a7395a",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_colored_gs.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_colored_gs.py",
    "index_similarity": "R100",
    "final_sha256": "3af237b4893eb5c730b442fd50f51ca5bf0bbe3044dc78b2cd850c0fc3ace53f",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_compliance_f_rotate.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_compliance_f_rotate.py",
    "index_similarity": "R100",
    "final_sha256": "4fe3557210d66d1eedbec66abe8c9120fe48012f6bb2be10839ff437cbe9d2b4",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_delassus_cache.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_delassus_cache.py",
    "index_similarity": "R100",
    "final_sha256": "f8e3b2cc2523a7be021f4de6244f3b391823b2cdc91f160c622bffee40491675",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_device_assemble.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_device_assemble.py",
    "index_similarity": "R100",
    "final_sha256": "a8f9ba404e6ae81fea4932cc9521f27854045ce05508e190f036321959d6d744",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_device_fe_scatter.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_device_fe_scatter.py",
    "index_similarity": "R100",
    "final_sha256": "db12c2ccf8e2089a4e6f098054a78f06e1984eec650bd14e55f206d6b3b97aed",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_flow_rule_2b.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_flow_rule_2b.py",
    "index_similarity": "R100",
    "final_sha256": "5ad2528fbc7e9f75365d8d54a26bec634961ee51c27e513ad2b537849297b4b0",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_gate4_bench.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_gate4_bench.py",
    "index_similarity": "R100",
    "final_sha256": "473cfc504df09167db4420e962886f6f0152e5d420694d2b98be7d89f6b86c20",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_grid_resident.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_grid_resident.py",
    "index_similarity": "R100",
    "final_sha256": "c2fe37b0b97fd4064e419eee4fb9fdb096118b73c4cdd4d007517e523a0e0ee0",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_gs_parity.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_gs_parity.py",
    "index_similarity": "R100",
    "final_sha256": "6418d7666850ba09b3e91692de072d8ab8d25a0937369d23da74964082f96d73",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_gs_soa_parity.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_gs_soa_parity.py",
    "index_similarity": "R100",
    "final_sha256": "bad909f6ebf9845a140c0f619fea4192708ccaaa440a7a750d65748fa5d2dd27",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_per_particle_materials.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_per_particle_materials.py",
    "index_similarity": "R100",
    "final_sha256": "462bfe3b8be6e4e4281c26bec08a902747fb0ec0b931ba95670ff2dc39b3b0a5",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_particle_resident.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_particle_resident.py",
    "index_similarity": "R100",
    "final_sha256": "d6318b8e4c7910d0f23f33ed98ac4e3a98dde119dc6589b06c3bd50edfdc88e4",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_profile_breakdown.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_profile_breakdown.py",
    "index_similarity": "R100",
    "final_sha256": "a6d388ccf11e5474d3a4e660baa97f9f8c6534b7b532f3ffb7439aa335b08f9a",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_sand_l1.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_sand_l1.py",
    "index_similarity": "R100",
    "final_sha256": "b9605dd7208fced3db0f4d5a2c1f4ebcb2332ff4c23c0454c6d2c234455a85fd",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_scaffold.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_scaffold.py",
    "index_similarity": "R100",
    "final_sha256": "e9316285f14dcf13cbd5ec323a2f0e3284aac00c33502bd375a840992e00e786",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_soa_pack.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_soa_pack.py",
    "index_similarity": "R100",
    "final_sha256": "89c851b828100f456c6e6108f7ef992b74183fd22000af837c1fcca45c17e150",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_sparse_active.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_sparse_active.py",
    "index_similarity": "R100",
    "final_sha256": "06fd535ed023e722bedf95714719328c3edd660c0d67bbc178d6761c0fa982d7",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_cuda_transfer_shell.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_cuda_transfer_shell.py",
    "index_similarity": "R100",
    "final_sha256": "eeb47fac37415b2500df04306aba43cae3d1d8fec8b73ab816a5df7f38c88739",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_fe_from_f_fallback.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_fe_from_f_fallback.py",
    "index_similarity": "R100",
    "final_sha256": "fbb4b8a850cec348a3c4789c9df4b18b04db5525653b0c0c5638037b3a913c6f",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_fe_project_discard.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_fe_project_discard.py",
    "index_similarity": "R100",
    "final_sha256": "9513009529193f90d25106e3c696545a9db275d8ba19d8ded43cc159cd8acdd0",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_fe_update_delta_skew.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_fe_update_delta_skew.py",
    "index_similarity": "R100",
    "final_sha256": "03ba05e46d37082177bd56cdeff5d926b9538c95bba7991b377a898bbd6f6f1d",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_flow_rule_gs.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_flow_rule_gs.py",
    "index_similarity": "R100",
    "final_sha256": "1c1de0a036428676b5771e37dfeec1e1dda35bcb68eb26e778d52751a4402909",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_flow_visc_volume_pic.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_flow_visc_volume_pic.py",
    "index_similarity": "R100",
    "final_sha256": "52507781972ad13cbd73c0b5be86c9eb455f7187a9a95090ea9c54231592ac76",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_gs_strain_residual.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_gs_strain_residual.py",
    "index_similarity": "R100",
    "final_sha256": "428c383ff0a65f8c3940b132abfcc09ececff47cb266189981ff9b0751ef8f18",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_per_particle_materials.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_per_particle_materials.py",
    "index_similarity": "R100",
    "final_sha256": "c4b1aca6f8b58c662e2449300e9c328ac90e73c897922c555e52620170f651e9",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_mass_inv_v.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_mass_inv_v.py",
    "index_similarity": "R100",
    "final_sha256": "8371ada268175374aaf589cd7952c0428d65b9a76a7d4d9c72a8483ca9e55d8c",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_phase0.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_phase0.py",
    "index_similarity": "R100",
    "final_sha256": "70dcfcd6a134051bcf4cc50f39f9c79116d950749aff7af276ee69b59faac987",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_pic_strain_b.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_pic_strain_b.py",
    "index_similarity": "R100",
    "final_sha256": "d6f08aaf5e447e8e10d73e555e61611c0091840abcedc7e93a274c81a3201a78",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_plastic_visc_over_dt.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_plastic_visc_over_dt.py",
    "index_similarity": "R100",
    "final_sha256": "b9fab85b7e50cbf7a64cc77ef197fce8b892a17d0c0ea589fb980248f21d8a63",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_sand_l1.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_sand_l1.py",
    "index_similarity": "R100",
    "final_sha256": "0d40c1c36e6d50a0c5944bffcc58d88cca2791ba4a3b60b51a4fff32a5d791ca",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_snow.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_snow.py",
    "index_similarity": "R100",
    "final_sha256": "ecad09e083c9f8e251492673c1c4fd5fe57d3c3ee29c4d918b73cf12d26a2df7",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_strain_b_dt_inv_cell_volume.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_strain_b_dt_inv_cell_volume.py",
    "index_similarity": "R100",
    "final_sha256": "5baa3d6006f65c3ec2eae74f6163775ba5abe555b59e02915f881d88b92e599d",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_strain_b_include_dt.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_strain_b_include_dt.py",
    "index_similarity": "R100",
    "final_sha256": "61d36ae9fa2f26822de67815d5ea738081a69d0e6bbe1d23d5fe8fb8abd70050",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_strain_integrand.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_strain_integrand.py",
    "index_similarity": "R100",
    "final_sha256": "453084adab34c00d104818ea96cd7214f7a1f43673374c324d94937c0945c070",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_strain_rhs.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_strain_rhs.py",
    "index_similarity": "R100",
    "final_sha256": "9e41df190a3f56e78ec604d055888b1227937bae3891e3bf18fed4220ba4a2c0",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_stress_bt_half_b.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_stress_bt_half_b.py",
    "index_similarity": "R100",
    "final_sha256": "221ab46fc435b42cf454df09cdac1c69ac04138ba613c36287576a9fbc712a78",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_sym_tensor_db16.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_sym_tensor_db16.py",
    "index_similarity": "R100",
    "final_sha256": "7f605acb1ad58e84f0642b6718c99955fa36f8427b368fdb0f08906f0f38a914",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_newton_fem_volume_blend_yield.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_newton_fem_volume_blend_yield.py",
    "index_similarity": "R100",
    "final_sha256": "cab41ac14119dd15feae76cf8a25fd91e1afa8dcdf7633821aa801a3491759a1",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_no_domain_walls.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_no_domain_walls.py",
    "index_similarity": "R100",
    "final_sha256": "f7dc20b502de380610cfabed0159b43f0b6323cb75e3b8f6953e5bda6bcd3fe9",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_node_compact.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_node_compact.py",
    "index_similarity": "R100",
    "final_sha256": "7cc6be5fc009808b1a142c0aa37788a1b83f3bed3dbd595e57c8fd75026ba682",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_open_domain_o0_baseline.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_open_domain_o0_baseline.py",
    "index_similarity": "R100",
    "final_sha256": "2ff7a17b599c9b32cb78bcff2e7fd521cddf38c52f519e90b9aa31dbbb55a10f",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_project_outside.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_project_outside.py",
    "index_similarity": "R100",
    "final_sha256": "2e56116d514acdec1763ec584ef686704111e4641ea800c6a93e19b0ffec1e52",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_project_outside_apic.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_project_outside_apic.py",
    "index_similarity": "R100",
    "final_sha256": "2417ac2c1c6780de766b46b5bdb66edc56e53bd8c14f03c6ac30d1103043c0a4",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_implicit_mpm_quasi_open_domain.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_quasi_open_domain.py",
    "index_similarity": "R100",
    "final_sha256": "a90233e946a102c2c82478aac9ee44d60fe194e5fce072cc227f899c25d4a97c",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_implicit_mpm_world_int3_sparse.py",
    "new": "python/tests/python/implicit_mpm/test_implicit_mpm_world_int3_sparse.py",
    "index_similarity": "R100",
    "final_sha256": "78682998281915ac563e7f22f24a0b883e7431b9a3d146941ec258a9fe3a1ebf",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_mpm_viewer_gl.py",
    "new": "python/tests/python/implicit_mpm/test_mpm_viewer_gl.py",
    "index_similarity": "R100",
    "final_sha256": "086e90bdc8dc6243ec5532a18468480cb88574e37bfcff71106492f99d5fa745",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_newton_contract_large_dt_step4_project_outside.py",
    "new": "python/tests/python/implicit_mpm/test_newton_contract_large_dt_step4_project_outside.py",
    "index_similarity": "R100",
    "final_sha256": "32493c54330783c444ab5104ce4a11fbe58418fa50893e1dde44ef18d821980c",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_newton_fem_geom_cell_volume.py",
    "new": "python/tests/python/implicit_mpm/test_newton_fem_geom_cell_volume.py",
    "index_similarity": "R100",
    "final_sha256": "10e205ffabaf9941e5a3b1b6ee99da9a1669e81f54a46f7d7fef8dbf84ed41d8",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_newton_fem_iteration_budget.py",
    "new": "python/tests/python/implicit_mpm/test_newton_fem_iteration_budget.py",
    "index_similarity": "R100",
    "final_sha256": "5acc340b32e0a8a6e100eeb878fdc8a6588eab4d4b60fc198fe3486faa7d330a",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_cli_profile.py",
    "new": "python/tests/python/multi_material/test_multi_material_cli_profile.py",
    "index_similarity": "R100",
    "final_sha256": "b3977e76ab9da38dc2433d7273da0df05990d61ecfd730c696db519eaf730f70",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_dense_180k_emit.py",
    "new": "python/tests/python/multi_material/test_multi_material_dense_180k_emit.py",
    "index_similarity": "R100",
    "final_sha256": "e1032f7431dfe10ca59e035ce9d03de06f0dc9372f9d124623f70faabe6b75c4",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_internal_substeps.py",
    "new": "python/tests/python/multi_material/test_multi_material_internal_substeps.py",
    "index_similarity": "R100",
    "final_sha256": "2d1e17f76b44d0ef1e657cccd99f81c9bbec645ed78b7ec0ca25cbf34a910bf9",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_multi_material_isotropic_domain.py",
    "new": "python/tests/python/multi_material/test_multi_material_isotropic_domain.py",
    "index_similarity": "R100",
    "final_sha256": "20babff5fe2599aae5c10d5f1f255a57af6b2f80ff975ed03e8661bdb944c7f1",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_kinematic_particle_floor.py",
    "new": "python/tests/python/multi_material/test_multi_material_kinematic_particle_floor.py",
    "index_similarity": "R100",
    "final_sha256": "b1924a1faa9c55062627d44d08bed9d787a453039715e39e41bad03039dd616a",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_newton_world_scale.py",
    "new": "python/tests/python/multi_material/test_multi_material_newton_world_scale.py",
    "index_similarity": "R100",
    "final_sha256": "8431522db7185b5f6f46bd6236ebf2cdad794c80fb33d32c750ea8c31f574e4b",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_multi_material_rasterize_domain_box.py",
    "new": "python/tests/python/multi_material/test_multi_material_rasterize_domain_box.py",
    "index_similarity": "R100",
    "final_sha256": "1deebe75bdab545d0de3183a221b6c9028649f176335489f8587357c5a9f5731",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_sparse_cuda_strain_storage.py",
    "new": "python/tests/python/multi_material/test_multi_material_sparse_cuda_strain_storage.py",
    "index_similarity": "R100",
    "final_sha256": "53123ac37c11ea01e832584f10b865060db8dc8981fa8d15d5da562bd1076a30",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_sparse_active_remap.py",
    "new": "python/tests/python/multi_material/test_multi_material_sparse_active_remap.py",
    "index_similarity": "R100",
    "final_sha256": "1950f1b9aa93247c24e429f492843f76a30e09e63f508f881d3fc372a488a590",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_sparse_strain_cpu.py",
    "new": "python/tests/python/multi_material/test_multi_material_sparse_strain_cpu.py",
    "index_similarity": "R100",
    "final_sha256": "a42728cad4e9c45fcb4b8fed694aed3d2d1a1dca8a277c063b9794cb8e702bf6",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_sparse_cli_cache_invalidation.py",
    "new": "python/tests/python/multi_material/test_multi_material_sparse_cli_cache_invalidation.py",
    "index_similarity": "R100",
    "final_sha256": "d376583e71d463bb64c614c486f0665516166d03b55b47b284c94f3c1ecbbc50",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_sparse_device_assemble.py",
    "new": "python/tests/python/multi_material/test_multi_material_sparse_device_assemble.py",
    "index_similarity": "R100",
    "final_sha256": "9f73d4502d578a3e789b1e459f3685b00a7ec4bdc1634c0112d6cc86712c18b7",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_sparse_gauss_seidel_pack.py",
    "new": "python/tests/python/multi_material/test_multi_material_sparse_gauss_seidel_pack.py",
    "index_similarity": "R100",
    "final_sha256": "688ef289a5868da7de6779d5b787bb85b57fde99c7fdfdde1aed55802dd7feeb",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_sparse_buffer_capacity.py",
    "new": "python/tests/python/multi_material/test_multi_material_sparse_buffer_capacity.py",
    "index_similarity": "R100",
    "final_sha256": "a4199ccdc2c0a2378a5571ff4d72c41afc12a0adc1bb56270b372e7156112a13",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_sparse_elastic_writeback.py",
    "new": "python/tests/python/multi_material/test_multi_material_sparse_elastic_writeback.py",
    "index_similarity": "R100",
    "final_sha256": "afb38c6ea75bd5c0ebb0548af210360f617555cb47588f419133665901d52900",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_world_meter_kernel.py",
    "new": "python/tests/python/multi_material/test_multi_material_world_meter_kernel.py",
    "index_similarity": "R100",
    "final_sha256": "eb4b287c4b4e47e8f96095288aaa4d666b2a3420fe4054efe40c4dfdf8145671",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_world_voxel_cuda_rect.py",
    "new": "python/tests/python/multi_material/test_multi_material_world_voxel_cuda_rect.py",
    "index_similarity": "R100",
    "final_sha256": "bcfccb10e99c8869f9505f0105d091c1aaeb3e212e938de1bb6385efba84fbbd",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_multi_material_world_voxel_dense_rect.py",
    "new": "python/tests/python/multi_material/test_multi_material_world_voxel_dense_rect.py",
    "index_similarity": "R100",
    "final_sha256": "9f9a461bf58b176a1f0e16b348275cb08316030a737baab8317113e933f15abf",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_multi_material_world_voxel_grid.py",
    "new": "python/tests/python/multi_material/test_multi_material_world_voxel_grid.py",
    "index_similarity": "R100",
    "final_sha256": "dc8bd02dd70b9f862d2190b6e25a53f0ee4a53fecaf7b419a7367f435aedd000",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_newton_ref_mpm_beam_twist.py",
    "new": "python/tests/python/newton_ref/test_newton_ref_mpm_beam_twist.py",
    "index_similarity": "R100",
    "final_sha256": "c0bd9c5adcf57436c1b47c11abae08b9475caf5634cf6ea406a6a3a45f1eb648",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_newton_ref_mpm_granular.py",
    "new": "python/tests/python/newton_ref/test_newton_ref_mpm_granular.py",
    "index_similarity": "R100",
    "final_sha256": "e72eb9d3ed8e9e477ed512caea5f75a48a6ffb068f7aa0c435f1dd2877e52e31",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_newton_ref_mpm_multi_material.py",
    "new": "python/tests/python/newton_ref/test_newton_ref_mpm_multi_material.py",
    "index_similarity": "R100",
    "final_sha256": "262586ae39034d6fef5bfe90c63a2900b20e5d0768eadbd567c5e197af60baa3",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_newton_ref_mpm_multi_material_per_particle.py",
    "new": "python/tests/python/newton_ref/test_newton_ref_mpm_multi_material_per_particle.py",
    "index_similarity": "R100",
    "final_sha256": "d1ebc7da4c5d915d51d8099e1343206b69a114c86155dca962a0b4435bbb5080",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_newton_ref_mpm_multi_material_per_particle_cuda.py",
    "new": "python/tests/python/newton_ref/test_newton_ref_mpm_multi_material_per_particle_cuda.py",
    "index_similarity": "R100",
    "final_sha256": "1f1c9ed2b4a7477d752ec681fd7cc6982de9081ca4c3fe3326d431ad3ac2f592",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_newton_ref_mpm_newton_step_contract.py",
    "new": "python/tests/python/newton_ref/test_newton_ref_mpm_newton_step_contract.py",
    "index_similarity": "R100",
    "final_sha256": "6fe3900f8fae5150f3d1dde5fd85ab900eab1583dcbe3371adabead634048dc0",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_newton_ref_mpm_snow_ball.py",
    "new": "python/tests/python/newton_ref/test_newton_ref_mpm_snow_ball.py",
    "index_similarity": "R100",
    "final_sha256": "919fe217eb5078670c0cfd95775b9139610e5dec036e675ecbebc54d8e13a562",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_newton_ref_mpm_viscous.py",
    "new": "python/tests/python/newton_ref/test_newton_ref_mpm_viscous.py",
    "index_similarity": "R100",
    "final_sha256": "573896ca0d72dd86f576768afc8edf65a71fdf717a2b28280478fb86f1f7555a",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_o1_b4_step_b_gates.py",
    "new": "python/tests/python/perf/test_o1_b4_step_b_gates.py",
    "index_similarity": "R100",
    "final_sha256": "f2bb2689e20c64f3579403231f4ed4dd1a08556f7432772093e1992418fe6ff3",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_o1_gs_strain_residual_ablation.py",
    "new": "python/tests/python/perf/test_o1_gs_strain_residual_ablation.py",
    "index_similarity": "R100",
    "final_sha256": "55206dd5b410b8629cae7a07d5a1f3bb432693acebe95d40d5ec5b4b945aa0f0",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_o2_gs_device_early_exit.py",
    "new": "python/tests/python/perf/test_o2_gs_device_early_exit.py",
    "index_similarity": "R100",
    "final_sha256": "f184eb478109b288639c55808a2de2cef196521c107c410af1483e0aa96b8959",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_o2_gs_residual_check_stride.py",
    "new": "python/tests/python/perf/test_o2_gs_residual_check_stride.py",
    "index_similarity": "R100",
    "final_sha256": "6e2330793e493b750db2f7d2e8eab1b6ed9b2e7786ea03acd483753d071a1458",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_o3_gs_newton_warp_diff_inventory.py",
    "new": "python/tests/python/perf/test_o3_gs_newton_warp_diff_inventory.py",
    "index_similarity": "R100",
    "final_sha256": "fe112f65b0bd1194c7c9a0e38b5cfbb3e64fa508b21f4724d1285b03730a47f3",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_o3_gs_persistent.py",
    "new": "python/tests/python/perf/test_o3_gs_persistent.py",
    "index_similarity": "R100",
    "final_sha256": "80385a096e0131949749a4a78bf973f1744addafd14b416633a08af592c17903",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_o3_gs_soa_hot_path_probe.py",
    "new": "python/tests/python/perf/test_o3_gs_soa_hot_path_probe.py",
    "index_similarity": "R100",
    "final_sha256": "bb7d13df1b01d8edf6a970b1cd5dea56606fe5070e5af63add0f827b301c788c",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_o3_gs_sparse_launch_quality.py",
    "new": "python/tests/python/perf/test_o3_gs_sparse_launch_quality.py",
    "index_similarity": "R100",
    "final_sha256": "ccf09cb88ee3bd5777c7711627600cefb89f1ed66e72cb47cc82bd3ccf0d5a0a",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_o3_gs_step4_measure_launch_occupancy.py",
    "new": "python/tests/python/perf/test_o3_gs_step4_measure_launch_occupancy.py",
    "index_similarity": "R100",
    "final_sha256": "d6ebbc6731710c70c6040a36d45c610baee7879da4049b159f08609d78ca53a2",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_o3_gs_step5_memory_workload_measure.py",
    "new": "python/tests/python/perf/test_o3_gs_step5_memory_workload_measure.py",
    "index_similarity": "R100",
    "final_sha256": "c621998b6f669b69d46e48cc4800ea9b7a08aca397672ae578158768eecaeb73",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_o5_world_int3_stage_timing.py",
    "new": "python/tests/python/perf/test_o5_world_int3_stage_timing.py",
    "index_similarity": "R100",
    "final_sha256": "8fb1ccee3711d0b00d28c834864d6b91a204f7b77ea6a219043e8626f5f12dad",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_beam_cli_wires_phase4_and_fem_opt_in.py",
    "new": "python/tests/python/scene/test_beam_cli_wires_phase4_and_fem_opt_in.py",
    "index_similarity": "R100",
    "final_sha256": "ad783203e697bc70bca88ccd96fed8703f5e98663651fe7c28cfd2015b3d9d64",
    "final_content_equals_old_head": false
  },
  {
    "old": "python/tests/python/test_grain_rendering_cli_wires_render_grains.py",
    "new": "python/tests/python/scene/test_grain_rendering_cli_wires_render_grains.py",
    "index_similarity": "R100",
    "final_sha256": "d0803560e08b7a22a3de2d789bd735ca879a5cdddd46c792cb6153b228c7329f",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_lunar_rover_cuda_cli_wires.py",
    "new": "python/tests/python/scene/test_lunar_rover_cuda_cli_wires.py",
    "index_similarity": "R100",
    "final_sha256": "842a7ca3adda0983dd09a48d26a84411eec41152ea336d9e0a9435d7ae28077d",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_snow_cli_wires_phase4_and_fem_opt_in.py",
    "new": "python/tests/python/scene/test_snow_cli_wires_phase4_and_fem_opt_in.py",
    "index_similarity": "R100",
    "final_sha256": "480d10a5577613d6c1beed260d3e424f6ee79097b4a1a00301bf663c749421b9",
    "final_content_equals_old_head": true
  },
  {
    "old": "python/tests/python/test_viscous_cli_wires_phase4_contract_visc_pair.py",
    "new": "python/tests/python/scene/test_viscous_cli_wires_phase4_contract_visc_pair.py",
    "index_similarity": "R100",
    "final_sha256": "ddd27585deeec4e9ad8cd35831fe21ca3d60d1134e2df4ebd9129184ca291b5c",
    "final_content_equals_old_head": false
  }
]