simplify deps; add hash link fn