def METHOD_NAME(hydds, demda):
    # downscale flwdir
    demda_reproj = demda.raster.reproject(dst_res=demda.raster.res[0] / 2.0)
    hydds["uparea"].data = flw.flwdir_from_da(hydds["flwdir"]).upstream_area("km2")
    hydds1 = flw.reproject_hydrography_like(
        hydds, demda_reproj, outlets="min"
    )  # force single outlet
    assert "uparea" in hydds1
    assert "flwdir" in hydds1
    assert hydds1.raster.shape == demda_reproj.raster.shape
    assert np.allclose(hydds["uparea"].max(), hydds1["uparea"].max())
    # ~ 5% error is acceptable; test also exact value for precise unit testing
    assert abs(1 - hydds["uparea"].max() / hydds1["uparea"].max()) < 0.05
    assert np.isclose(hydds1["uparea"].max(), 1.5)
    # error
    with pytest.raises(ValueError, match="uparea variable not found"):
        flw.reproject_hydrography_like(hydds.drop_vars("uparea"), demda)